@@ -531,7 +531,7 @@ Variables
:: |
version |
= |
- '8.5.2' |
+ '9.0.0' |
JSON-Fortran version.
@@ -595,7 +595,7 @@
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/module/json_parameters.html b/module/json_parameters.html
index 8d8cadd7b..9be4aa501 100644
--- a/module/json_parameters.html
+++ b/module/json_parameters.html
@@ -1585,7 +1585,7 @@ Variables
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/module/json_string_utilities.html b/module/json_string_utilities.html
index 051b92b7a..98f91d84a 100644
--- a/module/json_string_utilities.html
+++ b/module/json_string_utilities.html
@@ -205,8 +205,8 @@
@@ -992,7 +992,7 @@ Arguments
-
+
character(kind=CDK, len=*),
|
intent(in) |
@@ -1043,7 +1043,7 @@ Arguments
-
+
character(kind=CDK, len=*),
|
intent(in), |
@@ -1096,7 +1096,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -1330,7 +1330,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -1378,7 +1378,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -1426,7 +1426,7 @@ Arguments
-
+
character(kind=CDK, len=*),
|
intent(in) |
@@ -1474,7 +1474,7 @@ Arguments
-
+
character(kind=CDK, len=*),
|
intent(in), |
@@ -1712,7 +1712,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -1767,7 +1767,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(inout) |
@@ -1841,7 +1841,7 @@ Arguments
-
+
logical(kind=LK),
|
intent(in) |
@@ -1886,7 +1886,7 @@ Arguments
-
+
integer(kind=IK),
|
intent(in) |
@@ -1916,7 +1916,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(out) |
@@ -1960,7 +1960,7 @@ Arguments
-
+
real(kind=RK),
|
intent(in) |
@@ -1975,7 +1975,7 @@ Arguments
-
+
character(kind=CDK, len=*),
|
intent(in) |
@@ -1990,7 +1990,7 @@ Arguments
-
+
logical(kind=LK),
|
intent(in) |
@@ -2006,7 +2006,7 @@ Arguments
-
+
logical(kind=LK),
|
intent(in) |
@@ -2023,7 +2023,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(out) |
@@ -2063,7 +2063,7 @@ Arguments
-
+
character(kind=CK, len=:),
|
intent(inout), |
@@ -2078,7 +2078,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -2093,7 +2093,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -2133,7 +2133,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -2148,7 +2148,7 @@ Arguments
-
+
integer(kind=IK),
|
intent(out) |
@@ -2163,7 +2163,7 @@ Arguments
-
+
logical(kind=LK),
|
intent(out) |
@@ -2207,7 +2207,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -2222,7 +2222,7 @@ Arguments
-
+
logical(kind=LK),
|
intent(in) |
@@ -2238,7 +2238,7 @@ Arguments
-
+
real(kind=RK),
|
intent(out) |
@@ -2253,7 +2253,7 @@ Arguments
-
+
logical(kind=LK),
|
intent(out) |
@@ -2293,7 +2293,7 @@ Arguments
-
+
character(kind=CK, len=:),
|
intent(inout), |
@@ -2303,12 +2303,12 @@ Arguments
:: |
str |
-Read more…
+Read more…
|
-
+
character(kind=CK, len=:),
|
intent(out), |
@@ -2352,7 +2352,7 @@ Arguments
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/module/json_value_module.html b/module/json_value_module.html
index 1abe65473..bea426a86 100644
--- a/module/json_value_module.html
+++ b/module/json_value_module.html
@@ -433,11 +433,11 @@
-
-
@@ -1168,7 +1168,7 @@
Arguments
-
+
logical(kind=LK),
|
intent(in), |
@@ -1180,7 +1180,7 @@ Arguments
Note that this option does not affect parsing
(both escaped and unescaped are still valid in
-all cases). Read more…
+all cases).Read more…
|
@@ -1232,7 +1232,7 @@ Arguments
-
+
logical(kind=LK),
|
intent(in), |
@@ -1242,7 +1242,7 @@ Arguments
:: |
use_quiet_nan |
-Read more…
+Read more…
|
@@ -1349,7 +1349,7 @@ Arguments
-
+
integer(kind=IK),
|
intent(in) |
@@ -1623,7 +1623,7 @@ Components
-
+
logical(kind=LK),
|
private |
@@ -1681,7 +1681,7 @@ Components
-
+
logical(kind=LK),
|
private |
@@ -1758,7 +1758,7 @@ Components
-
+
integer(kind=IK),
|
private |
@@ -1830,7 +1830,7 @@ Components
-
+
logical(kind=LK),
|
private |
@@ -1843,7 +1843,7 @@ Components
.false. |
How to serialize NaN, Infinity,
-and -Infinity real values: Read more…
+and -Infinity real values:Read more…
|
@@ -1940,7 +1940,7 @@ Components
-
+
character(kind=CDK, len=:),
|
private, |
@@ -2073,7 +2073,7 @@ Components
-
+
logical(kind=LK),
|
private |
@@ -3892,7 +3892,7 @@ Arguments
-
+
logical(kind=LK),
|
intent(in), |
@@ -3904,7 +3904,7 @@ Arguments
Note that this option does not affect parsing
(both escaped and unescaped are still valid in
-all cases). Read more…
+all cases).Read more…
|
@@ -3956,7 +3956,7 @@ Arguments
-
+
logical(kind=LK),
|
intent(in), |
@@ -3966,7 +3966,7 @@ Arguments
:: |
use_quiet_nan |
-Read more…
+Read more…
|
@@ -4538,7 +4538,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -4598,7 +4598,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -4754,7 +4754,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -6689,7 +6689,7 @@ Arguments
-
+
integer(kind=IK),
|
intent(in), |
@@ -6852,7 +6852,7 @@ Arguments
-
+
integer(kind=IK),
|
intent(in), |
@@ -7015,7 +7015,7 @@ Arguments
-
+
integer(kind=IK),
|
intent(in), |
@@ -7339,7 +7339,7 @@ Arguments
-
+
logical(kind=LK),
|
intent(out), |
@@ -7687,7 +7687,7 @@ Arguments
-
+
integer(kind=IK),
|
intent(out), |
@@ -7789,7 +7789,7 @@ Arguments
-
+
integer(kind=IK),
|
intent(out), |
@@ -11333,7 +11333,7 @@ Arguments
-
+
logical(kind=LK),
|
intent(in), |
@@ -11345,7 +11345,7 @@ Arguments
Note that this option does not affect parsing
(both escaped and unescaped are still valid in
-all cases). Read more…
+all cases).Read more…
|
@@ -11397,7 +11397,7 @@ Arguments
-
+
logical(kind=LK),
|
intent(in), |
@@ -11407,7 +11407,7 @@ Arguments
:: |
use_quiet_nan |
-Read more…
+Read more…
|
@@ -11802,7 +11802,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -11958,7 +11958,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -12637,7 +12637,7 @@ Arguments
-
+
integer(kind=IK),
|
intent(out), |
@@ -16647,7 +16647,7 @@ Arguments
-
+
character(kind=CK, len=:),
|
intent(inout), |
@@ -17263,7 +17263,7 @@ Arguments
-
+
character(kind=CK, len=:),
|
intent(out), |
@@ -17426,7 +17426,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -17511,7 +17511,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -17602,7 +17602,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -17687,7 +17687,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -17790,7 +17790,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -17877,7 +17877,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -17964,7 +17964,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -18081,7 +18081,7 @@ Arguments
-
+
character(kind=CK, len=1),
|
intent(in) |
@@ -19999,7 +19999,7 @@ Arguments
-
+
integer(kind=IK),
|
intent(in), |
@@ -20250,7 +20250,7 @@ Arguments
-
+
integer(kind=IK),
|
intent(out), |
@@ -22130,7 +22130,7 @@ Arguments
-
+
character(kind=CDK, len=*),
|
intent(in) |
@@ -24802,7 +24802,7 @@ Arguments
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/page/README.html b/page/README.html
index c573e9238..6c878fcea 100644
--- a/page/README.html
+++ b/page/README.html
@@ -292,7 +292,7 @@ Miscellaneous
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/page/development-resources/CI.html b/page/development-resources/CI.html
index 864533bf6..1ece1b486 100644
--- a/page/development-resources/CI.html
+++ b/page/development-resources/CI.html
@@ -323,7 +323,7 @@ CI.yml
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/page/development-resources/CONTRIBUTING.html b/page/development-resources/CONTRIBUTING.html
index fbf5ce451..f99e56279 100644
--- a/page/development-resources/CONTRIBUTING.html
+++ b/page/development-resources/CONTRIBUTING.html
@@ -235,7 +235,7 @@ Coding Standards
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/page/development-resources/LICENSE.html b/page/development-resources/LICENSE.html
index c5c2279bb..bea89b964 100644
--- a/page/development-resources/LICENSE.html
+++ b/page/development-resources/LICENSE.html
@@ -182,7 +182,7 @@ JSON-Fortran License
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/page/development-resources/build.html b/page/development-resources/build.html
index 52907febc..d92033793 100644
--- a/page/development-resources/build.html
+++ b/page/development-resources/build.html
@@ -534,7 +534,7 @@ build.sh
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/page/development-resources/codecov.html b/page/development-resources/codecov.html
index 087055363..821961a40 100644
--- a/page/development-resources/codecov.html
+++ b/page/development-resources/codecov.html
@@ -149,7 +149,7 @@ codecov.yml
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/page/development-resources/gccr.html b/page/development-resources/gccr.html
index 963d87e3d..76ae27df1 100644
--- a/page/development-resources/gccr.html
+++ b/page/development-resources/gccr.html
@@ -656,7 +656,7 @@ gccr.pl
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/page/development-resources/index.html b/page/development-resources/index.html
index a7ad70068..86d3630e9 100644
--- a/page/development-resources/index.html
+++ b/page/development-resources/index.html
@@ -146,7 +146,7 @@ Scripts
Release Checklist
This is a
checklist of tasks to be performed when tagging a new release of
-JSON-Fortran. The current stable version is 8.5.2.
+JSON-Fortran. The current stable version is 9.0.0.
@@ -164,7 +164,7 @@ Release Checklist
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/page/development-resources/json_module.F90.html b/page/development-resources/json_module.F90.html
index 7f75f3086..3b0011ddf 100644
--- a/page/development-resources/json_module.F90.html
+++ b/page/development-resources/json_module.F90.html
@@ -593,7 +593,7 @@ Executed procedures
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/page/development-resources/release-checklist.html b/page/development-resources/release-checklist.html
index f2af160b0..fcd2ef0e4 100644
--- a/page/development-resources/release-checklist.html
+++ b/page/development-resources/release-checklist.html
@@ -125,9 +125,9 @@ Release Checklist
Ensure that the changes listed under
Unreleased are up
to date and accurate.
-- Look at the latest changes committed to GitHub since the
+
- Look at the latest changes committed to GitHub since the
last release,
- 8.5.2. This will only be accurate if you have
+ 9.0.0. This will only be accurate if you have
not yet updated the project version in cmake. If you have updated
the product version in cmake and run cmake (and therefore
.VERSION ) then edit the URL manually to view the
changes.
@@ -246,7 +246,7 @@ Release Checklist
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/page/index.html b/page/index.html
index c58c43471..ddd149fee 100644
--- a/page/index.html
+++ b/page/index.html
@@ -114,8 +114,8 @@ Other Docs
Current Stable Release
- The latest stable release is
-8.5.2.
+ The latest stable release is
+9.0.0.
Past Releases
Documentation for official, tagged releases can be found
here, including the
@@ -157,7 +157,7 @@ General Documentation
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/page/releases/index.html b/page/releases/index.html
index ea30c5fe7..4217da2d9 100644
--- a/page/releases/index.html
+++ b/page/releases/index.html
@@ -125,6 +125,7 @@ Official Releases
- Changes Between Releases
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -865,7 +865,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/assign_json_file.html b/proc/assign_json_file.html
index 4c11e9209..f807c8ec2 100644
--- a/proc/assign_json_file.html
+++ b/proc/assign_json_file.html
@@ -388,7 +388,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/assign_json_file_to_string.html b/proc/assign_json_file_to_string.html
index e9e2d0f03..b5024c774 100644
--- a/proc/assign_json_file_to_string.html
+++ b/proc/assign_json_file_to_string.html
@@ -2815,7 +2815,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/assign_string_to_json_file.html b/proc/assign_string_to_json_file.html
index 20c745804..4c82e580b 100644
--- a/proc/assign_string_to_json_file.html
+++ b/proc/assign_string_to_json_file.html
@@ -1619,7 +1619,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/compact_real_string.html b/proc/compact_real_string.html
index 7c679ce59..beccd2ba0 100644
--- a/proc/compact_real_string.html
+++ b/proc/compact_real_string.html
@@ -169,7 +169,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(inout) |
@@ -3626,7 +3626,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/convert.html b/proc/convert.html
index 121e3eb04..74d877a44 100644
--- a/proc/convert.html
+++ b/proc/convert.html
@@ -6007,7 +6007,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/decode_rfc6901.html b/proc/decode_rfc6901.html
index 03423d9a1..888590bc4 100644
--- a/proc/decode_rfc6901.html
+++ b/proc/decode_rfc6901.html
@@ -163,7 +163,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -3655,7 +3655,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/default_comp_ucs4.html b/proc/default_comp_ucs4.html
index d4b86d306..8e6e35ca1 100644
--- a/proc/default_comp_ucs4.html
+++ b/proc/default_comp_ucs4.html
@@ -520,7 +520,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/default_join_ucs4.html b/proc/default_join_ucs4.html
index 6ab1537a3..634b366a3 100644
--- a/proc/default_join_ucs4.html
+++ b/proc/default_join_ucs4.html
@@ -520,7 +520,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/default_neq_ucs4.html b/proc/default_neq_ucs4.html
index 60ae23763..9f1c5434c 100644
--- a/proc/default_neq_ucs4.html
+++ b/proc/default_neq_ucs4.html
@@ -520,7 +520,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/destroy_json_core.html b/proc/destroy_json_core.html
index 33c420497..ac30f886e 100644
--- a/proc/destroy_json_core.html
+++ b/proc/destroy_json_core.html
@@ -3990,7 +3990,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/destroy_json_data.html b/proc/destroy_json_data.html
index a3c3bc4cc..0bd44de8c 100644
--- a/proc/destroy_json_data.html
+++ b/proc/destroy_json_data.html
@@ -4771,7 +4771,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/encode_rfc6901.html b/proc/encode_rfc6901.html
index 18cef5740..c9e015208 100644
--- a/proc/encode_rfc6901.html
+++ b/proc/encode_rfc6901.html
@@ -163,7 +163,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -532,7 +532,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/escape_string.html b/proc/escape_string.html
index 414f1d93e..c696d2c06 100644
--- a/proc/escape_string.html
+++ b/proc/escape_string.html
@@ -194,7 +194,7 @@ Arguments
-
+
logical(kind=LK),
|
intent(in) |
@@ -3810,7 +3810,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/finalize_json_file.html b/proc/finalize_json_file.html
index 7e6724604..e53215e03 100644
--- a/proc/finalize_json_file.html
+++ b/proc/finalize_json_file.html
@@ -416,7 +416,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/flag_not_found.html b/proc/flag_not_found.html
index ea48ac96e..4ea444610 100644
--- a/proc/flag_not_found.html
+++ b/proc/flag_not_found.html
@@ -3571,7 +3571,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/get_current_line_from_file_sequential.html b/proc/get_current_line_from_file_sequential.html
index 49d666d8d..0054d3325 100644
--- a/proc/get_current_line_from_file_sequential.html
+++ b/proc/get_current_line_from_file_sequential.html
@@ -663,7 +663,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/get_current_line_from_file_stream.html b/proc/get_current_line_from_file_stream.html
index b1408f89c..53ce282ab 100644
--- a/proc/get_current_line_from_file_stream.html
+++ b/proc/get_current_line_from_file_stream.html
@@ -689,7 +689,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/get_json_core_in_file.html b/proc/get_json_core_in_file.html
index decd69c1c..5c79b7184 100644
--- a/proc/get_json_core_in_file.html
+++ b/proc/get_json_core_in_file.html
@@ -242,7 +242,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/initialize_json_core.html b/proc/initialize_json_core.html
index 6ce266380..3f6918774 100644
--- a/proc/initialize_json_core.html
+++ b/proc/initialize_json_core.html
@@ -437,7 +437,7 @@ Arguments
-
+
logical(kind=LK),
|
intent(in), |
@@ -519,7 +519,7 @@ Arguments
-
+
logical(kind=LK),
|
intent(in), |
@@ -1009,7 +1009,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/initialize_json_core_in_file.html b/proc/initialize_json_core_in_file.html
index 90da5c273..73297b710 100644
--- a/proc/initialize_json_core_in_file.html
+++ b/proc/initialize_json_core_in_file.html
@@ -1113,7 +1113,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/initialize_json_file.html b/proc/initialize_json_file.html
index bf754e98b..a5387565a 100644
--- a/proc/initialize_json_file.html
+++ b/proc/initialize_json_file.html
@@ -1117,7 +1117,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/initialize_json_file_from_string.html b/proc/initialize_json_file_from_string.html
index 01ddeefa0..5a1dc33a1 100644
--- a/proc/initialize_json_file_from_string.html
+++ b/proc/initialize_json_file_from_string.html
@@ -2080,7 +2080,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/initialize_json_file_from_string_v2.html b/proc/initialize_json_file_from_string_v2.html
index eade21a6a..b7ab95571 100644
--- a/proc/initialize_json_file_from_string_v2.html
+++ b/proc/initialize_json_file_from_string_v2.html
@@ -1620,7 +1620,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/initialize_json_file_v2.html b/proc/initialize_json_file_v2.html
index 0257cd132..558a082a7 100644
--- a/proc/initialize_json_file_v2.html
+++ b/proc/initialize_json_file_v2.html
@@ -374,7 +374,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/integer_to_string.html b/proc/integer_to_string.html
index dab7f871c..42dfad17f 100644
--- a/proc/integer_to_string.html
+++ b/proc/integer_to_string.html
@@ -164,7 +164,7 @@ Arguments
-
+
integer(kind=IK),
|
intent(in) |
@@ -194,7 +194,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(out) |
@@ -4129,7 +4129,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_add_integer_by_path.html b/proc/json_add_integer_by_path.html
index 1f558e1c1..80d2eaea6 100644
--- a/proc/json_add_integer_by_path.html
+++ b/proc/json_add_integer_by_path.html
@@ -3111,7 +3111,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_add_integer_vec_by_path.html b/proc/json_add_integer_vec_by_path.html
index ef8129fb2..74dd15db0 100644
--- a/proc/json_add_integer_vec_by_path.html
+++ b/proc/json_add_integer_vec_by_path.html
@@ -3002,7 +3002,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_add_logical_by_path.html b/proc/json_add_logical_by_path.html
index 4f26eb8fe..b1635f7e7 100644
--- a/proc/json_add_logical_by_path.html
+++ b/proc/json_add_logical_by_path.html
@@ -3111,7 +3111,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_add_logical_vec_by_path.html b/proc/json_add_logical_vec_by_path.html
index cb6ab95da..f2c9f1f79 100644
--- a/proc/json_add_logical_vec_by_path.html
+++ b/proc/json_add_logical_vec_by_path.html
@@ -3002,7 +3002,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_add_member_by_path.html b/proc/json_add_member_by_path.html
index 0e0094c71..251b3218f 100644
--- a/proc/json_add_member_by_path.html
+++ b/proc/json_add_member_by_path.html
@@ -3026,7 +3026,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_add_real32_by_path.html b/proc/json_add_real32_by_path.html
index 844ce4f5f..d21c7ca6f 100644
--- a/proc/json_add_real32_by_path.html
+++ b/proc/json_add_real32_by_path.html
@@ -3125,7 +3125,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_add_real32_vec_by_path.html b/proc/json_add_real32_vec_by_path.html
index f7edc7ee8..4677c9cd4 100644
--- a/proc/json_add_real32_vec_by_path.html
+++ b/proc/json_add_real32_vec_by_path.html
@@ -3125,7 +3125,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_add_real_by_path.html b/proc/json_add_real_by_path.html
index 583987435..9e9c443f4 100644
--- a/proc/json_add_real_by_path.html
+++ b/proc/json_add_real_by_path.html
@@ -3090,7 +3090,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_add_real_vec_by_path.html b/proc/json_add_real_vec_by_path.html
index 0130f6b05..97f22cc06 100644
--- a/proc/json_add_real_vec_by_path.html
+++ b/proc/json_add_real_vec_by_path.html
@@ -3002,7 +3002,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_add_string_by_path.html b/proc/json_add_string_by_path.html
index 26748b53b..434ef129e 100644
--- a/proc/json_add_string_by_path.html
+++ b/proc/json_add_string_by_path.html
@@ -3709,7 +3709,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_add_string_by_path_path_ascii.html b/proc/json_add_string_by_path_path_ascii.html
index d4d477515..2eebb51e5 100644
--- a/proc/json_add_string_by_path_path_ascii.html
+++ b/proc/json_add_string_by_path_path_ascii.html
@@ -3630,7 +3630,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_add_string_by_path_value_ascii.html b/proc/json_add_string_by_path_value_ascii.html
index e5873e0bc..c842c7cf4 100644
--- a/proc/json_add_string_by_path_value_ascii.html
+++ b/proc/json_add_string_by_path_value_ascii.html
@@ -3630,7 +3630,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_add_string_vec_by_path.html b/proc/json_add_string_vec_by_path.html
index 921b4dcbf..e90b68f81 100644
--- a/proc/json_add_string_vec_by_path.html
+++ b/proc/json_add_string_vec_by_path.html
@@ -259,7 +259,7 @@ Arguments
-
+
integer(kind=IK),
|
intent(in), |
@@ -3673,7 +3673,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_add_string_vec_by_path_path_ascii.html b/proc/json_add_string_vec_by_path_path_ascii.html
index 85a01f997..ab57f8263 100644
--- a/proc/json_add_string_vec_by_path_path_ascii.html
+++ b/proc/json_add_string_vec_by_path_path_ascii.html
@@ -254,7 +254,7 @@ Arguments
-
+
integer(kind=IK),
|
intent(in), |
@@ -3582,7 +3582,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_add_string_vec_by_path_value_ascii.html b/proc/json_add_string_vec_by_path_value_ascii.html
index fa5156dc7..97eba91c6 100644
--- a/proc/json_add_string_vec_by_path_value_ascii.html
+++ b/proc/json_add_string_vec_by_path_value_ascii.html
@@ -254,7 +254,7 @@ Arguments
-
+
integer(kind=IK),
|
intent(in), |
@@ -3582,7 +3582,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_check_all_for_duplicate_keys.html b/proc/json_check_all_for_duplicate_keys.html
index 54fef2f86..02fa3f0c8 100644
--- a/proc/json_check_all_for_duplicate_keys.html
+++ b/proc/json_check_all_for_duplicate_keys.html
@@ -979,7 +979,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_check_children_for_duplicate_keys.html b/proc/json_check_children_for_duplicate_keys.html
index 1d9bf657a..6f3adf45d 100644
--- a/proc/json_check_children_for_duplicate_keys.html
+++ b/proc/json_check_children_for_duplicate_keys.html
@@ -2964,7 +2964,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_check_for_errors.html b/proc/json_check_for_errors.html
index de5674510..788f1e30b 100644
--- a/proc/json_check_for_errors.html
+++ b/proc/json_check_for_errors.html
@@ -202,7 +202,7 @@ Arguments
-
+
logical(kind=LK),
|
intent(out), |
@@ -473,7 +473,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_clear_exceptions.html b/proc/json_clear_exceptions.html
index 40c3b14cd..8c49a0e58 100644
--- a/proc/json_clear_exceptions.html
+++ b/proc/json_clear_exceptions.html
@@ -4258,7 +4258,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_clone.html b/proc/json_clone.html
index 4b32b0b8e..afae2df6e 100644
--- a/proc/json_clone.html
+++ b/proc/json_clone.html
@@ -530,7 +530,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_count.html b/proc/json_count.html
index 76f395f3d..877515490 100644
--- a/proc/json_count.html
+++ b/proc/json_count.html
@@ -471,7 +471,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_create_by_path.html b/proc/json_create_by_path.html
index 6b7857d1a..e933f8349 100644
--- a/proc/json_create_by_path.html
+++ b/proc/json_create_by_path.html
@@ -3852,7 +3852,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_failed.html b/proc/json_failed.html
index 9401991dc..bdd9a90a2 100644
--- a/proc/json_failed.html
+++ b/proc/json_failed.html
@@ -601,7 +601,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_add.html b/proc/json_file_add.html
index a18303a84..99e017170 100644
--- a/proc/json_file_add.html
+++ b/proc/json_file_add.html
@@ -474,7 +474,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_add_integer.html b/proc/json_file_add_integer.html
index 961896cda..53ba547fa 100644
--- a/proc/json_file_add_integer.html
+++ b/proc/json_file_add_integer.html
@@ -3238,7 +3238,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_add_integer_vec.html b/proc/json_file_add_integer_vec.html
index ba8a791ce..5ec2981fc 100644
--- a/proc/json_file_add_integer_vec.html
+++ b/proc/json_file_add_integer_vec.html
@@ -3238,7 +3238,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_add_logical.html b/proc/json_file_add_logical.html
index 071bf66ba..e68181fad 100644
--- a/proc/json_file_add_logical.html
+++ b/proc/json_file_add_logical.html
@@ -3238,7 +3238,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_add_logical_vec.html b/proc/json_file_add_logical_vec.html
index b9fe16697..10cd70755 100644
--- a/proc/json_file_add_logical_vec.html
+++ b/proc/json_file_add_logical_vec.html
@@ -3238,7 +3238,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_add_object.html b/proc/json_file_add_object.html
index 4ed0462a6..f87de6e8f 100644
--- a/proc/json_file_add_object.html
+++ b/proc/json_file_add_object.html
@@ -3238,7 +3238,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_add_real.html b/proc/json_file_add_real.html
index 39ae0b1cc..bd0530cee 100644
--- a/proc/json_file_add_real.html
+++ b/proc/json_file_add_real.html
@@ -3238,7 +3238,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_add_real32.html b/proc/json_file_add_real32.html
index b80d662fb..fb89be08b 100644
--- a/proc/json_file_add_real32.html
+++ b/proc/json_file_add_real32.html
@@ -3230,7 +3230,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_add_real32_vec.html b/proc/json_file_add_real32_vec.html
index 1c540c3f8..cc516db4b 100644
--- a/proc/json_file_add_real32_vec.html
+++ b/proc/json_file_add_real32_vec.html
@@ -3230,7 +3230,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_add_real_vec.html b/proc/json_file_add_real_vec.html
index 492bd91ba..db79d2d76 100644
--- a/proc/json_file_add_real_vec.html
+++ b/proc/json_file_add_real_vec.html
@@ -3238,7 +3238,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_add_string.html b/proc/json_file_add_string.html
index 4af3e9cd2..916edb2a4 100644
--- a/proc/json_file_add_string.html
+++ b/proc/json_file_add_string.html
@@ -3302,7 +3302,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_add_string_path_ascii.html b/proc/json_file_add_string_path_ascii.html
index e23dda59c..0661479a4 100644
--- a/proc/json_file_add_string_path_ascii.html
+++ b/proc/json_file_add_string_path_ascii.html
@@ -3181,7 +3181,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_add_string_value_ascii.html b/proc/json_file_add_string_value_ascii.html
index cf825bd98..1c6ecdef7 100644
--- a/proc/json_file_add_string_value_ascii.html
+++ b/proc/json_file_add_string_value_ascii.html
@@ -3181,7 +3181,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_add_string_vec.html b/proc/json_file_add_string_vec.html
index 05e618dcd..46039e4d2 100644
--- a/proc/json_file_add_string_vec.html
+++ b/proc/json_file_add_string_vec.html
@@ -3325,7 +3325,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_add_string_vec_path_ascii.html b/proc/json_file_add_string_vec_path_ascii.html
index 726754405..a07db44eb 100644
--- a/proc/json_file_add_string_vec_path_ascii.html
+++ b/proc/json_file_add_string_vec_path_ascii.html
@@ -3195,7 +3195,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_add_string_vec_vec_ascii.html b/proc/json_file_add_string_vec_vec_ascii.html
index 0b1a20db5..f750ac567 100644
--- a/proc/json_file_add_string_vec_vec_ascii.html
+++ b/proc/json_file_add_string_vec_vec_ascii.html
@@ -3195,7 +3195,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_check_for_errors.html b/proc/json_file_check_for_errors.html
index a6d8f5654..da59dfd07 100644
--- a/proc/json_file_check_for_errors.html
+++ b/proc/json_file_check_for_errors.html
@@ -387,7 +387,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_clear_exceptions.html b/proc/json_file_clear_exceptions.html
index f4c47e441..978c3099b 100644
--- a/proc/json_file_clear_exceptions.html
+++ b/proc/json_file_clear_exceptions.html
@@ -347,7 +347,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_destroy.html b/proc/json_file_destroy.html
index 963d2d94b..1154f9148 100644
--- a/proc/json_file_destroy.html
+++ b/proc/json_file_destroy.html
@@ -779,7 +779,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_failed.html b/proc/json_file_failed.html
index 97084eda5..39de5f416 100644
--- a/proc/json_file_failed.html
+++ b/proc/json_file_failed.html
@@ -475,7 +475,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_get_alloc_string_vec.html b/proc/json_file_get_alloc_string_vec.html
index b6aeecc41..d4b569151 100644
--- a/proc/json_file_get_alloc_string_vec.html
+++ b/proc/json_file_get_alloc_string_vec.html
@@ -3150,7 +3150,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_get_integer.html b/proc/json_file_get_integer.html
index 03716af42..48cc90c49 100644
--- a/proc/json_file_get_integer.html
+++ b/proc/json_file_get_integer.html
@@ -3111,7 +3111,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_get_integer_vec.html b/proc/json_file_get_integer_vec.html
index 19dd7dbdb..e05841af5 100644
--- a/proc/json_file_get_integer_vec.html
+++ b/proc/json_file_get_integer_vec.html
@@ -3111,7 +3111,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_get_logical.html b/proc/json_file_get_logical.html
index 533a53fc4..68b47917a 100644
--- a/proc/json_file_get_logical.html
+++ b/proc/json_file_get_logical.html
@@ -3111,7 +3111,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_get_logical_vec.html b/proc/json_file_get_logical_vec.html
index ad54f3d2d..68751da48 100644
--- a/proc/json_file_get_logical_vec.html
+++ b/proc/json_file_get_logical_vec.html
@@ -3111,7 +3111,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_get_object.html b/proc/json_file_get_object.html
index c43b29561..3a20bb575 100644
--- a/proc/json_file_get_object.html
+++ b/proc/json_file_get_object.html
@@ -3095,7 +3095,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_get_real.html b/proc/json_file_get_real.html
index 46624f2f2..e5d5d7d74 100644
--- a/proc/json_file_get_real.html
+++ b/proc/json_file_get_real.html
@@ -3111,7 +3111,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_get_real32.html b/proc/json_file_get_real32.html
index e0e627635..c215d9316 100644
--- a/proc/json_file_get_real32.html
+++ b/proc/json_file_get_real32.html
@@ -3111,7 +3111,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_get_real32_vec.html b/proc/json_file_get_real32_vec.html
index fa51ae3ee..3008434ef 100644
--- a/proc/json_file_get_real32_vec.html
+++ b/proc/json_file_get_real32_vec.html
@@ -3111,7 +3111,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_get_real_vec.html b/proc/json_file_get_real_vec.html
index f571dbc3a..b4db24de4 100644
--- a/proc/json_file_get_real_vec.html
+++ b/proc/json_file_get_real_vec.html
@@ -3111,7 +3111,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_get_root.html b/proc/json_file_get_root.html
index b375c0189..309c438e0 100644
--- a/proc/json_file_get_root.html
+++ b/proc/json_file_get_root.html
@@ -621,7 +621,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_get_string.html b/proc/json_file_get_string.html
index 4345c5d4e..d8ec79ca6 100644
--- a/proc/json_file_get_string.html
+++ b/proc/json_file_get_string.html
@@ -3112,7 +3112,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_get_string_vec.html b/proc/json_file_get_string_vec.html
index cfc9e987b..8db07a375 100644
--- a/proc/json_file_get_string_vec.html
+++ b/proc/json_file_get_string_vec.html
@@ -3111,7 +3111,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_load.html b/proc/json_file_load.html
index 795b62bdf..008b0e80e 100644
--- a/proc/json_file_load.html
+++ b/proc/json_file_load.html
@@ -1439,7 +1439,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_load_from_string.html b/proc/json_file_load_from_string.html
index 82b9e750a..fc7f5e58b 100644
--- a/proc/json_file_load_from_string.html
+++ b/proc/json_file_load_from_string.html
@@ -1709,7 +1709,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_move_pointer.html b/proc/json_file_move_pointer.html
index 13cf299ec..0048bfcfb 100644
--- a/proc/json_file_move_pointer.html
+++ b/proc/json_file_move_pointer.html
@@ -597,7 +597,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_nullify.html b/proc/json_file_nullify.html
index e03fd3c2c..9f4ab2977 100644
--- a/proc/json_file_nullify.html
+++ b/proc/json_file_nullify.html
@@ -240,7 +240,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_print_error_message.html b/proc/json_file_print_error_message.html
index e449e4290..f2320cc10 100644
--- a/proc/json_file_print_error_message.html
+++ b/proc/json_file_print_error_message.html
@@ -397,7 +397,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_print_to_console.html b/proc/json_file_print_to_console.html
index 0087040fc..17b992f4b 100644
--- a/proc/json_file_print_to_console.html
+++ b/proc/json_file_print_to_console.html
@@ -228,7 +228,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_print_to_filename.html b/proc/json_file_print_to_filename.html
index f54afd246..1cc813f7b 100644
--- a/proc/json_file_print_to_filename.html
+++ b/proc/json_file_print_to_filename.html
@@ -254,7 +254,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_print_to_string.html b/proc/json_file_print_to_string.html
index 1afaad32a..d60ca9ede 100644
--- a/proc/json_file_print_to_string.html
+++ b/proc/json_file_print_to_string.html
@@ -2794,7 +2794,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_print_to_unit.html b/proc/json_file_print_to_unit.html
index 08c614628..ade5030f9 100644
--- a/proc/json_file_print_to_unit.html
+++ b/proc/json_file_print_to_unit.html
@@ -454,7 +454,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_remove.html b/proc/json_file_remove.html
index 92e8a931a..10af89aac 100644
--- a/proc/json_file_remove.html
+++ b/proc/json_file_remove.html
@@ -2899,7 +2899,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_rename.html b/proc/json_file_rename.html
index 9e290d51b..f53bf3d91 100644
--- a/proc/json_file_rename.html
+++ b/proc/json_file_rename.html
@@ -426,7 +426,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_rename_name_ascii.html b/proc/json_file_rename_name_ascii.html
index e3afe66af..7e55013e2 100644
--- a/proc/json_file_rename_name_ascii.html
+++ b/proc/json_file_rename_name_ascii.html
@@ -441,7 +441,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_rename_path_ascii.html b/proc/json_file_rename_path_ascii.html
index 41eb5af1b..39d1f0ac2 100644
--- a/proc/json_file_rename_path_ascii.html
+++ b/proc/json_file_rename_path_ascii.html
@@ -441,7 +441,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_traverse.html b/proc/json_file_traverse.html
index 810298ec0..5dff0f51e 100644
--- a/proc/json_file_traverse.html
+++ b/proc/json_file_traverse.html
@@ -467,7 +467,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_update_integer.html b/proc/json_file_update_integer.html
index 164fb2309..ec6862fbc 100644
--- a/proc/json_file_update_integer.html
+++ b/proc/json_file_update_integer.html
@@ -515,7 +515,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_update_logical.html b/proc/json_file_update_logical.html
index cd2be64e4..853eaf2e7 100644
--- a/proc/json_file_update_logical.html
+++ b/proc/json_file_update_logical.html
@@ -515,7 +515,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_update_real.html b/proc/json_file_update_real.html
index 2624591fe..e3f0c73a7 100644
--- a/proc/json_file_update_real.html
+++ b/proc/json_file_update_real.html
@@ -511,7 +511,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_update_real32.html b/proc/json_file_update_real32.html
index 0b9f7026c..bbe34b274 100644
--- a/proc/json_file_update_real32.html
+++ b/proc/json_file_update_real32.html
@@ -494,7 +494,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_update_string.html b/proc/json_file_update_string.html
index efe3bca6a..d4b185cc8 100644
--- a/proc/json_file_update_string.html
+++ b/proc/json_file_update_string.html
@@ -549,7 +549,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_update_string_name_ascii.html b/proc/json_file_update_string_name_ascii.html
index 8cb3066b5..04edabfca 100644
--- a/proc/json_file_update_string_name_ascii.html
+++ b/proc/json_file_update_string_name_ascii.html
@@ -752,7 +752,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_update_string_val_ascii.html b/proc/json_file_update_string_val_ascii.html
index 78bb5ea3f..1f9b630ef 100644
--- a/proc/json_file_update_string_val_ascii.html
+++ b/proc/json_file_update_string_val_ascii.html
@@ -752,7 +752,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_valid_path.html b/proc/json_file_valid_path.html
index 9237ea92d..5406c9342 100644
--- a/proc/json_file_valid_path.html
+++ b/proc/json_file_valid_path.html
@@ -2896,7 +2896,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_valid_path_op.html b/proc/json_file_valid_path_op.html
index 121c421ad..3b81abf72 100644
--- a/proc/json_file_valid_path_op.html
+++ b/proc/json_file_valid_path_op.html
@@ -2775,7 +2775,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_variable_info.html b/proc/json_file_variable_info.html
index f154ba4ff..7b13b6968 100644
--- a/proc/json_file_variable_info.html
+++ b/proc/json_file_variable_info.html
@@ -2902,7 +2902,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_file_variable_matrix_info.html b/proc/json_file_variable_matrix_info.html
index 08645f5f7..84d87ea0b 100644
--- a/proc/json_file_variable_matrix_info.html
+++ b/proc/json_file_variable_matrix_info.html
@@ -3045,7 +3045,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_fortran_version.html b/proc/json_fortran_version.html
index f143c7725..753458c97 100644
--- a/proc/json_fortran_version.html
+++ b/proc/json_fortran_version.html
@@ -205,7 +205,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_alloc_string_vec.html b/proc/json_get_alloc_string_vec.html
index d7aecd917..f20799bfa 100644
--- a/proc/json_get_alloc_string_vec.html
+++ b/proc/json_get_alloc_string_vec.html
@@ -225,7 +225,7 @@ Arguments
-
+
integer(kind=IK),
|
intent(out), |
@@ -6071,7 +6071,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_alloc_string_vec_by_path.html b/proc/json_get_alloc_string_vec_by_path.html
index 72a5c2456..0512ee0d1 100644
--- a/proc/json_get_alloc_string_vec_by_path.html
+++ b/proc/json_get_alloc_string_vec_by_path.html
@@ -241,7 +241,7 @@ Arguments
-
+
integer(kind=IK),
|
intent(out), |
@@ -6078,7 +6078,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_array.html b/proc/json_get_array.html
index 38dddc858..536c42893 100644
--- a/proc/json_get_array.html
+++ b/proc/json_get_array.html
@@ -3792,7 +3792,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_array_by_path.html b/proc/json_get_array_by_path.html
index 06c3696cf..42115f283 100644
--- a/proc/json_get_array_by_path.html
+++ b/proc/json_get_array_by_path.html
@@ -6032,7 +6032,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_by_path.html b/proc/json_get_by_path.html
index b423bdfa3..88e159689 100644
--- a/proc/json_get_by_path.html
+++ b/proc/json_get_by_path.html
@@ -6040,7 +6040,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_by_path_default.html b/proc/json_get_by_path_default.html
index f9ddff6f0..f26e97ef8 100644
--- a/proc/json_get_by_path_default.html
+++ b/proc/json_get_by_path_default.html
@@ -6382,7 +6382,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_by_path_jsonpath_bracket.html b/proc/json_get_by_path_jsonpath_bracket.html
index b7d4b2bed..5460b9b7e 100644
--- a/proc/json_get_by_path_jsonpath_bracket.html
+++ b/proc/json_get_by_path_jsonpath_bracket.html
@@ -6404,7 +6404,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_by_path_rfc6901.html b/proc/json_get_by_path_rfc6901.html
index a51c56ed8..b2d512f76 100644
--- a/proc/json_get_by_path_rfc6901.html
+++ b/proc/json_get_by_path_rfc6901.html
@@ -6205,7 +6205,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_integer.html b/proc/json_get_integer.html
index a06ee33a1..acbbb6366 100644
--- a/proc/json_get_integer.html
+++ b/proc/json_get_integer.html
@@ -3828,7 +3828,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_integer_by_path.html b/proc/json_get_integer_by_path.html
index 1b10c3605..5ecf25d65 100644
--- a/proc/json_get_integer_by_path.html
+++ b/proc/json_get_integer_by_path.html
@@ -6024,7 +6024,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_integer_vec.html b/proc/json_get_integer_vec.html
index 526b4b56b..1602d302d 100644
--- a/proc/json_get_integer_vec.html
+++ b/proc/json_get_integer_vec.html
@@ -6017,7 +6017,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_integer_vec_by_path.html b/proc/json_get_integer_vec_by_path.html
index 00c827775..0ff457687 100644
--- a/proc/json_get_integer_vec_by_path.html
+++ b/proc/json_get_integer_vec_by_path.html
@@ -6023,7 +6023,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_logical.html b/proc/json_get_logical.html
index ce01a0821..e8f1fd43b 100644
--- a/proc/json_get_logical.html
+++ b/proc/json_get_logical.html
@@ -3804,7 +3804,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_logical_by_path.html b/proc/json_get_logical_by_path.html
index 8ac6aa661..6c6fad176 100644
--- a/proc/json_get_logical_by_path.html
+++ b/proc/json_get_logical_by_path.html
@@ -6024,7 +6024,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_logical_vec.html b/proc/json_get_logical_vec.html
index 5effdf7e9..8100c86d6 100644
--- a/proc/json_get_logical_vec.html
+++ b/proc/json_get_logical_vec.html
@@ -6017,7 +6017,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_logical_vec_by_path.html b/proc/json_get_logical_vec_by_path.html
index 4792d849b..248fce1b1 100644
--- a/proc/json_get_logical_vec_by_path.html
+++ b/proc/json_get_logical_vec_by_path.html
@@ -6023,7 +6023,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_next.html b/proc/json_get_next.html
index a4e74fa33..f5a8a73a8 100644
--- a/proc/json_get_next.html
+++ b/proc/json_get_next.html
@@ -473,7 +473,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_parent.html b/proc/json_get_parent.html
index 34d5c1dd2..ed91c0803 100644
--- a/proc/json_get_parent.html
+++ b/proc/json_get_parent.html
@@ -473,7 +473,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_path.html b/proc/json_get_path.html
index 8a97754f9..ef6637c66 100644
--- a/proc/json_get_path.html
+++ b/proc/json_get_path.html
@@ -3234,7 +3234,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_previous.html b/proc/json_get_previous.html
index fe4df9d3e..404ccd45f 100644
--- a/proc/json_get_previous.html
+++ b/proc/json_get_previous.html
@@ -473,7 +473,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_real.html b/proc/json_get_real.html
index d46feeee0..2d02227b0 100644
--- a/proc/json_get_real.html
+++ b/proc/json_get_real.html
@@ -3849,7 +3849,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_real32.html b/proc/json_get_real32.html
index a5deb201d..7ddc24cef 100644
--- a/proc/json_get_real32.html
+++ b/proc/json_get_real32.html
@@ -5976,7 +5976,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_real32_by_path.html b/proc/json_get_real32_by_path.html
index bd3408f7f..3e54edfe0 100644
--- a/proc/json_get_real32_by_path.html
+++ b/proc/json_get_real32_by_path.html
@@ -6031,7 +6031,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_real32_vec.html b/proc/json_get_real32_vec.html
index 111bf1ba2..8f587d6c9 100644
--- a/proc/json_get_real32_vec.html
+++ b/proc/json_get_real32_vec.html
@@ -5976,7 +5976,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_real32_vec_by_path.html b/proc/json_get_real32_vec_by_path.html
index 90f702d6c..27f59ff56 100644
--- a/proc/json_get_real32_vec_by_path.html
+++ b/proc/json_get_real32_vec_by_path.html
@@ -6031,7 +6031,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_real_by_path.html b/proc/json_get_real_by_path.html
index b10265d1c..1285380b7 100644
--- a/proc/json_get_real_by_path.html
+++ b/proc/json_get_real_by_path.html
@@ -6024,7 +6024,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_real_vec.html b/proc/json_get_real_vec.html
index 91e6a805b..b142c48bc 100644
--- a/proc/json_get_real_vec.html
+++ b/proc/json_get_real_vec.html
@@ -6017,7 +6017,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_real_vec_by_path.html b/proc/json_get_real_vec_by_path.html
index 5ef35bc27..92eacaa1a 100644
--- a/proc/json_get_real_vec_by_path.html
+++ b/proc/json_get_real_vec_by_path.html
@@ -6023,7 +6023,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_string.html b/proc/json_get_string.html
index b30c4763c..f75116f25 100644
--- a/proc/json_get_string.html
+++ b/proc/json_get_string.html
@@ -3924,7 +3924,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_string_by_path.html b/proc/json_get_string_by_path.html
index 4649af60b..1186ce34d 100644
--- a/proc/json_get_string_by_path.html
+++ b/proc/json_get_string_by_path.html
@@ -6024,7 +6024,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_string_vec.html b/proc/json_get_string_vec.html
index 64097993f..7da911184 100644
--- a/proc/json_get_string_vec.html
+++ b/proc/json_get_string_vec.html
@@ -6025,7 +6025,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_string_vec_by_path.html b/proc/json_get_string_vec_by_path.html
index 85bf82c36..a04e468bd 100644
--- a/proc/json_get_string_vec_by_path.html
+++ b/proc/json_get_string_vec_by_path.html
@@ -6023,7 +6023,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_get_tail.html b/proc/json_get_tail.html
index ff2d4f6c4..11634a175 100644
--- a/proc/json_get_tail.html
+++ b/proc/json_get_tail.html
@@ -474,7 +474,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_info.html b/proc/json_info.html
index 015be3391..b8b9402a9 100644
--- a/proc/json_info.html
+++ b/proc/json_info.html
@@ -3818,7 +3818,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_info_by_path.html b/proc/json_info_by_path.html
index ffe3c85b7..4e6689e9e 100644
--- a/proc/json_info_by_path.html
+++ b/proc/json_info_by_path.html
@@ -6072,7 +6072,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_initialize.html b/proc/json_initialize.html
index 63a41fafa..dad691528 100644
--- a/proc/json_initialize.html
+++ b/proc/json_initialize.html
@@ -462,7 +462,7 @@ Arguments
-
+
logical(kind=LK),
|
intent(in), |
@@ -544,7 +544,7 @@ Arguments
-
+
logical(kind=LK),
|
intent(in), |
@@ -1552,7 +1552,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_is_vector.html b/proc/json_is_vector.html
index 9a1aca553..610a9590a 100644
--- a/proc/json_is_vector.html
+++ b/proc/json_is_vector.html
@@ -2936,7 +2936,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_matrix_info.html b/proc/json_matrix_info.html
index 60a556242..58ae47688 100644
--- a/proc/json_matrix_info.html
+++ b/proc/json_matrix_info.html
@@ -3114,7 +3114,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_matrix_info_by_path.html b/proc/json_matrix_info_by_path.html
index 5828d0fa5..e2e6a3f97 100644
--- a/proc/json_matrix_info_by_path.html
+++ b/proc/json_matrix_info_by_path.html
@@ -3149,7 +3149,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_parse_end.html b/proc/json_parse_end.html
index 03ab68945..05d363a45 100644
--- a/proc/json_parse_end.html
+++ b/proc/json_parse_end.html
@@ -196,7 +196,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -877,7 +877,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_parse_file.html b/proc/json_parse_file.html
index dbfd3e56f..96f5c92f9 100644
--- a/proc/json_parse_file.html
+++ b/proc/json_parse_file.html
@@ -1616,7 +1616,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_parse_string.html b/proc/json_parse_string.html
index c004c5c8a..ddca87044 100644
--- a/proc/json_parse_string.html
+++ b/proc/json_parse_string.html
@@ -198,7 +198,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -1704,7 +1704,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_prepare_parser.html b/proc/json_prepare_parser.html
index cd555b947..e31d263f8 100644
--- a/proc/json_prepare_parser.html
+++ b/proc/json_prepare_parser.html
@@ -611,7 +611,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_print_error_message.html b/proc/json_print_error_message.html
index 097369876..c586aa9cf 100644
--- a/proc/json_print_error_message.html
+++ b/proc/json_print_error_message.html
@@ -522,7 +522,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_print_to_console.html b/proc/json_print_to_console.html
index 96edb90c5..c898ed1b9 100644
--- a/proc/json_print_to_console.html
+++ b/proc/json_print_to_console.html
@@ -246,7 +246,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_print_to_filename.html b/proc/json_print_to_filename.html
index 0fd68986c..b7b09caba 100644
--- a/proc/json_print_to_filename.html
+++ b/proc/json_print_to_filename.html
@@ -478,7 +478,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_print_to_unit.html b/proc/json_print_to_unit.html
index 85d7571a0..dd77c8987 100644
--- a/proc/json_print_to_unit.html
+++ b/proc/json_print_to_unit.html
@@ -2806,7 +2806,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_rename_by_path.html b/proc/json_rename_by_path.html
index 02e2a6063..9f5b7ec27 100644
--- a/proc/json_rename_by_path.html
+++ b/proc/json_rename_by_path.html
@@ -2778,7 +2778,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_rename_by_path_name_ascii.html b/proc/json_rename_by_path_name_ascii.html
index 6455868d8..07ad16d74 100644
--- a/proc/json_rename_by_path_name_ascii.html
+++ b/proc/json_rename_by_path_name_ascii.html
@@ -441,7 +441,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_rename_by_path_path_ascii.html b/proc/json_rename_by_path_path_ascii.html
index f70690cd2..a8df5ee03 100644
--- a/proc/json_rename_by_path_path_ascii.html
+++ b/proc/json_rename_by_path_path_ascii.html
@@ -441,7 +441,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_string_info.html b/proc/json_string_info.html
index 524966608..4921cd5d5 100644
--- a/proc/json_string_info.html
+++ b/proc/json_string_info.html
@@ -196,7 +196,7 @@ Arguments
-
+
integer(kind=IK),
|
intent(out), |
@@ -6154,7 +6154,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_throw_exception.html b/proc/json_throw_exception.html
index e6a1fbaec..5d17fbb67 100644
--- a/proc/json_throw_exception.html
+++ b/proc/json_throw_exception.html
@@ -4910,7 +4910,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_traverse.html b/proc/json_traverse.html
index 74f63ed4f..a47fb7fc3 100644
--- a/proc/json_traverse.html
+++ b/proc/json_traverse.html
@@ -965,7 +965,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_update_integer.html b/proc/json_update_integer.html
index 404c47b7b..2f6c707cd 100644
--- a/proc/json_update_integer.html
+++ b/proc/json_update_integer.html
@@ -3174,7 +3174,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_update_logical.html b/proc/json_update_logical.html
index f82532ebc..5fe4a4325 100644
--- a/proc/json_update_logical.html
+++ b/proc/json_update_logical.html
@@ -3174,7 +3174,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_update_real.html b/proc/json_update_real.html
index c9a199bc2..df3849019 100644
--- a/proc/json_update_real.html
+++ b/proc/json_update_real.html
@@ -3174,7 +3174,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_update_real32.html b/proc/json_update_real32.html
index b5d21de3c..004f81caa 100644
--- a/proc/json_update_real32.html
+++ b/proc/json_update_real32.html
@@ -508,7 +508,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_update_string.html b/proc/json_update_string.html
index 57ebd0eae..67b2693fb 100644
--- a/proc/json_update_string.html
+++ b/proc/json_update_string.html
@@ -3197,7 +3197,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_update_string_name_ascii.html b/proc/json_update_string_name_ascii.html
index ff4666597..a4ffd56d9 100644
--- a/proc/json_update_string_name_ascii.html
+++ b/proc/json_update_string_name_ascii.html
@@ -832,7 +832,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_update_string_val_ascii.html b/proc/json_update_string_val_ascii.html
index 07bdd6a97..23eb443f3 100644
--- a/proc/json_update_string_val_ascii.html
+++ b/proc/json_update_string_val_ascii.html
@@ -832,7 +832,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_valid_path.html b/proc/json_valid_path.html
index eee1f6fb6..cbb36c7b3 100644
--- a/proc/json_valid_path.html
+++ b/proc/json_valid_path.html
@@ -2931,7 +2931,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_add_integer.html b/proc/json_value_add_integer.html
index 1e543f83c..65b941652 100644
--- a/proc/json_value_add_integer.html
+++ b/proc/json_value_add_integer.html
@@ -661,7 +661,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_add_integer_vec.html b/proc/json_value_add_integer_vec.html
index 4087f4489..092caee60 100644
--- a/proc/json_value_add_integer_vec.html
+++ b/proc/json_value_add_integer_vec.html
@@ -667,7 +667,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_add_logical.html b/proc/json_value_add_logical.html
index 516d51de7..103150bac 100644
--- a/proc/json_value_add_logical.html
+++ b/proc/json_value_add_logical.html
@@ -661,7 +661,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_add_logical_vec.html b/proc/json_value_add_logical_vec.html
index a3fc45fe4..96f9d447f 100644
--- a/proc/json_value_add_logical_vec.html
+++ b/proc/json_value_add_logical_vec.html
@@ -667,7 +667,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_add_member.html b/proc/json_value_add_member.html
index 734d5a564..8948475df 100644
--- a/proc/json_value_add_member.html
+++ b/proc/json_value_add_member.html
@@ -2752,7 +2752,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_add_null.html b/proc/json_value_add_null.html
index 86a9aa8c3..4d2ce334f 100644
--- a/proc/json_value_add_null.html
+++ b/proc/json_value_add_null.html
@@ -643,7 +643,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_add_real.html b/proc/json_value_add_real.html
index 88a9751ed..2610e77fc 100644
--- a/proc/json_value_add_real.html
+++ b/proc/json_value_add_real.html
@@ -622,7 +622,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_add_real32.html b/proc/json_value_add_real32.html
index cab308188..62149f13a 100644
--- a/proc/json_value_add_real32.html
+++ b/proc/json_value_add_real32.html
@@ -546,7 +546,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_add_real32_vec.html b/proc/json_value_add_real32_vec.html
index 66ca19417..21049f3ef 100644
--- a/proc/json_value_add_real32_vec.html
+++ b/proc/json_value_add_real32_vec.html
@@ -546,7 +546,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_add_real_vec.html b/proc/json_value_add_real_vec.html
index 05e064857..1c768378f 100644
--- a/proc/json_value_add_real_vec.html
+++ b/proc/json_value_add_real_vec.html
@@ -667,7 +667,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_add_string.html b/proc/json_value_add_string.html
index cd88ed25e..af07a0dc6 100644
--- a/proc/json_value_add_string.html
+++ b/proc/json_value_add_string.html
@@ -693,7 +693,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_add_string_name_ascii.html b/proc/json_value_add_string_name_ascii.html
index 4054a52bb..751527c76 100644
--- a/proc/json_value_add_string_name_ascii.html
+++ b/proc/json_value_add_string_name_ascii.html
@@ -4644,7 +4644,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_add_string_val_ascii.html b/proc/json_value_add_string_val_ascii.html
index f400816a2..f955f64fa 100644
--- a/proc/json_value_add_string_val_ascii.html
+++ b/proc/json_value_add_string_val_ascii.html
@@ -4644,7 +4644,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_add_string_vec.html b/proc/json_value_add_string_vec.html
index c1675ab24..0af37e9a7 100644
--- a/proc/json_value_add_string_vec.html
+++ b/proc/json_value_add_string_vec.html
@@ -699,7 +699,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_add_string_vec_name_ascii.html b/proc/json_value_add_string_vec_name_ascii.html
index 851317e50..8ac3e42b4 100644
--- a/proc/json_value_add_string_vec_name_ascii.html
+++ b/proc/json_value_add_string_vec_name_ascii.html
@@ -4644,7 +4644,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_add_string_vec_val_ascii.html b/proc/json_value_add_string_vec_val_ascii.html
index 39b0f3840..69c7b696e 100644
--- a/proc/json_value_add_string_vec_val_ascii.html
+++ b/proc/json_value_add_string_vec_val_ascii.html
@@ -4644,7 +4644,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_clone_func.html b/proc/json_value_clone_func.html
index 57de0e7ea..db6d03578 100644
--- a/proc/json_value_clone_func.html
+++ b/proc/json_value_clone_func.html
@@ -484,7 +484,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_create.html b/proc/json_value_create.html
index 92abbbee4..1ce842209 100644
--- a/proc/json_value_create.html
+++ b/proc/json_value_create.html
@@ -4460,7 +4460,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_create_array.html b/proc/json_value_create_array.html
index 32586d1ff..2c9d7e644 100644
--- a/proc/json_value_create_array.html
+++ b/proc/json_value_create_array.html
@@ -3835,7 +3835,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_create_integer.html b/proc/json_value_create_integer.html
index 42b633d92..a70af4da5 100644
--- a/proc/json_value_create_integer.html
+++ b/proc/json_value_create_integer.html
@@ -623,7 +623,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_create_logical.html b/proc/json_value_create_logical.html
index 3d268fec0..a6748a3fd 100644
--- a/proc/json_value_create_logical.html
+++ b/proc/json_value_create_logical.html
@@ -623,7 +623,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_create_null.html b/proc/json_value_create_null.html
index 21c0fb919..8ac6b73ff 100644
--- a/proc/json_value_create_null.html
+++ b/proc/json_value_create_null.html
@@ -3766,7 +3766,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_create_object.html b/proc/json_value_create_object.html
index afde71d6a..947b0f2e4 100644
--- a/proc/json_value_create_object.html
+++ b/proc/json_value_create_object.html
@@ -3823,7 +3823,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_create_real.html b/proc/json_value_create_real.html
index 024deecfa..5295b302b 100644
--- a/proc/json_value_create_real.html
+++ b/proc/json_value_create_real.html
@@ -433,7 +433,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_create_real32.html b/proc/json_value_create_real32.html
index 5e39ecf9a..dfb9feb45 100644
--- a/proc/json_value_create_real32.html
+++ b/proc/json_value_create_real32.html
@@ -686,7 +686,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_create_string.html b/proc/json_value_create_string.html
index 14aabbd62..484f75a2d 100644
--- a/proc/json_value_create_string.html
+++ b/proc/json_value_create_string.html
@@ -1216,7 +1216,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_destroy.html b/proc/json_value_destroy.html
index 341fe9f20..94b578faa 100644
--- a/proc/json_value_destroy.html
+++ b/proc/json_value_destroy.html
@@ -4241,7 +4241,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_get_child.html b/proc/json_value_get_child.html
index 2408e1db1..d87af64e3 100644
--- a/proc/json_value_get_child.html
+++ b/proc/json_value_get_child.html
@@ -3769,7 +3769,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_get_child_by_index.html b/proc/json_value_get_child_by_index.html
index 1e1fde616..bac0ba7a8 100644
--- a/proc/json_value_get_child_by_index.html
+++ b/proc/json_value_get_child_by_index.html
@@ -3913,7 +3913,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_get_child_by_name.html b/proc/json_value_get_child_by_name.html
index d6e0fda8b..7e3af12cb 100644
--- a/proc/json_value_get_child_by_name.html
+++ b/proc/json_value_get_child_by_name.html
@@ -3927,7 +3927,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_insert_after.html b/proc/json_value_insert_after.html
index 3c5482039..d756c855a 100644
--- a/proc/json_value_insert_after.html
+++ b/proc/json_value_insert_after.html
@@ -3658,7 +3658,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_insert_after_child_by_index.html b/proc/json_value_insert_after_child_by_index.html
index 2d5594cb8..ff2e3c2f0 100644
--- a/proc/json_value_insert_after_child_by_index.html
+++ b/proc/json_value_insert_after_child_by_index.html
@@ -6007,7 +6007,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_is_child_of.html b/proc/json_value_is_child_of.html
index eeface758..d07ad877b 100644
--- a/proc/json_value_is_child_of.html
+++ b/proc/json_value_is_child_of.html
@@ -633,7 +633,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_print.html b/proc/json_value_print.html
index 32fb20a7c..c079d1782 100644
--- a/proc/json_value_print.html
+++ b/proc/json_value_print.html
@@ -216,7 +216,7 @@ Arguments
-
+
character(kind=CK, len=:),
|
intent(inout), |
@@ -3433,7 +3433,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_remove.html b/proc/json_value_remove.html
index 3486bfcd3..bed85090e 100644
--- a/proc/json_value_remove.html
+++ b/proc/json_value_remove.html
@@ -3835,7 +3835,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_remove_if_present.html b/proc/json_value_remove_if_present.html
index 849a98d3e..2d00e495b 100644
--- a/proc/json_value_remove_if_present.html
+++ b/proc/json_value_remove_if_present.html
@@ -2914,7 +2914,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_rename.html b/proc/json_value_rename.html
index c1fa78cbc..2a3e28c2e 100644
--- a/proc/json_value_rename.html
+++ b/proc/json_value_rename.html
@@ -264,7 +264,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_replace.html b/proc/json_value_replace.html
index 2712e2824..d9c158eb0 100644
--- a/proc/json_value_replace.html
+++ b/proc/json_value_replace.html
@@ -6010,7 +6010,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_reverse.html b/proc/json_value_reverse.html
index 5910bb8e6..fc3e7f810 100644
--- a/proc/json_value_reverse.html
+++ b/proc/json_value_reverse.html
@@ -2721,7 +2721,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_swap.html b/proc/json_value_swap.html
index 59b295c8d..779ece05d 100644
--- a/proc/json_value_swap.html
+++ b/proc/json_value_swap.html
@@ -652,7 +652,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_to_string.html b/proc/json_value_to_string.html
index 5ed6b096a..d0f835ac9 100644
--- a/proc/json_value_to_string.html
+++ b/proc/json_value_to_string.html
@@ -196,7 +196,7 @@ Arguments
-
+
character(kind=CK, len=:),
|
intent(out), |
@@ -2931,7 +2931,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/json_value_validate.html b/proc/json_value_validate.html
index f357fe5e5..1116cd0a2 100644
--- a/proc/json_value_validate.html
+++ b/proc/json_value_validate.html
@@ -811,7 +811,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/lowercase_string.html b/proc/lowercase_string.html
index e1273f1fc..217cf4da7 100644
--- a/proc/lowercase_string.html
+++ b/proc/lowercase_string.html
@@ -163,7 +163,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -3591,7 +3591,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/name_equal.html b/proc/name_equal.html
index c40213c4c..cfeb9ddd2 100644
--- a/proc/name_equal.html
+++ b/proc/name_equal.html
@@ -3729,7 +3729,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/name_strings_equal.html b/proc/name_strings_equal.html
index 9feacbe2d..5e89bc907 100644
--- a/proc/name_strings_equal.html
+++ b/proc/name_strings_equal.html
@@ -3738,7 +3738,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/parse_array.html b/proc/parse_array.html
index 0da4abc7f..c13aa975a 100644
--- a/proc/parse_array.html
+++ b/proc/parse_array.html
@@ -194,7 +194,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -1656,7 +1656,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/parse_for_chars.html b/proc/parse_for_chars.html
index 400449848..4e801be21 100644
--- a/proc/parse_for_chars.html
+++ b/proc/parse_for_chars.html
@@ -195,7 +195,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -961,7 +961,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/parse_number.html b/proc/parse_number.html
index 65b56fb67..1a27af114 100644
--- a/proc/parse_number.html
+++ b/proc/parse_number.html
@@ -202,7 +202,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -1215,7 +1215,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/parse_object.html b/proc/parse_object.html
index 5bfe14963..fb17a9b31 100644
--- a/proc/parse_object.html
+++ b/proc/parse_object.html
@@ -194,7 +194,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -1716,7 +1716,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/parse_string.html b/proc/parse_string.html
index 1a6284ba0..4f586dfd2 100644
--- a/proc/parse_string.html
+++ b/proc/parse_string.html
@@ -202,7 +202,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -1056,7 +1056,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/parse_value.html b/proc/parse_value.html
index 4c0754891..15249ac88 100644
--- a/proc/parse_value.html
+++ b/proc/parse_value.html
@@ -194,7 +194,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -1704,7 +1704,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/pop_char.html b/proc/pop_char.html
index c250ba04f..f722f54f6 100644
--- a/proc/pop_char.html
+++ b/proc/pop_char.html
@@ -204,7 +204,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -1022,7 +1022,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/push_char.html b/proc/push_char.html
index c5ac88616..963fbbfc9 100644
--- a/proc/push_char.html
+++ b/proc/push_char.html
@@ -187,7 +187,7 @@ Arguments
-
+
character(kind=CK, len=1),
|
intent(in) |
@@ -962,7 +962,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/real_to_string.html b/proc/real_to_string.html
index 55c274574..b1b2458cf 100644
--- a/proc/real_to_string.html
+++ b/proc/real_to_string.html
@@ -170,7 +170,7 @@ Arguments
-
+
real(kind=RK),
|
intent(in) |
@@ -185,7 +185,7 @@ Arguments
-
+
character(kind=CDK, len=*),
|
intent(in) |
@@ -200,7 +200,7 @@ Arguments
-
+
logical(kind=LK),
|
intent(in) |
@@ -216,7 +216,7 @@ Arguments
-
+
logical(kind=LK),
|
intent(in) |
@@ -233,7 +233,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(out) |
@@ -3780,7 +3780,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/replace_string.html b/proc/replace_string.html
index 1650e5c06..b7991208c 100644
--- a/proc/replace_string.html
+++ b/proc/replace_string.html
@@ -167,7 +167,7 @@ Arguments
-
+
character(kind=CK, len=:),
|
intent(inout), |
@@ -182,7 +182,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -197,7 +197,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -3632,7 +3632,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/set_json_core_in_file.html b/proc/set_json_core_in_file.html
index 11792b496..e59f3840d 100644
--- a/proc/set_json_core_in_file.html
+++ b/proc/set_json_core_in_file.html
@@ -464,7 +464,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/string_to_dble.html b/proc/string_to_dble.html
index 0b8f29a05..85a2a532c 100644
--- a/proc/string_to_dble.html
+++ b/proc/string_to_dble.html
@@ -179,7 +179,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -197,7 +197,7 @@ Arguments
Return Value
-
+
real(kind=RK)
@@ -937,7 +937,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/string_to_int.html b/proc/string_to_int.html
index 3a0f6c393..37e8ff699 100644
--- a/proc/string_to_int.html
+++ b/proc/string_to_int.html
@@ -183,7 +183,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -201,7 +201,7 @@ Arguments
Return Value
-
+
integer(kind=IK)
@@ -942,7 +942,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/string_to_integer.html b/proc/string_to_integer.html
index c6083eb44..38341065f 100644
--- a/proc/string_to_integer.html
+++ b/proc/string_to_integer.html
@@ -169,7 +169,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -184,7 +184,7 @@ Arguments
-
+
integer(kind=IK),
|
intent(out) |
@@ -199,7 +199,7 @@ Arguments
-
+
logical(kind=LK),
|
intent(out) |
@@ -3974,7 +3974,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/string_to_real.html b/proc/string_to_real.html
index 6bba8fa37..22a20b982 100644
--- a/proc/string_to_real.html
+++ b/proc/string_to_real.html
@@ -171,7 +171,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -186,7 +186,7 @@ Arguments
-
+
logical(kind=LK),
|
intent(in) |
@@ -202,7 +202,7 @@ Arguments
-
+
real(kind=RK),
|
intent(out) |
@@ -217,7 +217,7 @@ Arguments
-
+
logical(kind=LK),
|
intent(out) |
@@ -3977,7 +3977,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/to_array.html b/proc/to_array.html
index b82a86de8..ecf4c98ec 100644
--- a/proc/to_array.html
+++ b/proc/to_array.html
@@ -4157,7 +4157,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/to_integer.html b/proc/to_integer.html
index beb770309..e4a85b1e5 100644
--- a/proc/to_integer.html
+++ b/proc/to_integer.html
@@ -977,7 +977,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/to_logical.html b/proc/to_logical.html
index 1824c9f27..ef6c260bf 100644
--- a/proc/to_logical.html
+++ b/proc/to_logical.html
@@ -962,7 +962,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/to_null.html b/proc/to_null.html
index 4ebab80c9..2d759f5a4 100644
--- a/proc/to_null.html
+++ b/proc/to_null.html
@@ -4094,7 +4094,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/to_object.html b/proc/to_object.html
index f8966c3e3..a9b12222f 100644
--- a/proc/to_object.html
+++ b/proc/to_object.html
@@ -4139,7 +4139,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/to_real.html b/proc/to_real.html
index b31188941..2e06015de 100644
--- a/proc/to_real.html
+++ b/proc/to_real.html
@@ -896,7 +896,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/to_string.html b/proc/to_string.html
index bc4f58cb2..6f5011f54 100644
--- a/proc/to_string.html
+++ b/proc/to_string.html
@@ -1579,7 +1579,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/to_uni.html b/proc/to_uni.html
index d54ddf45c..df13f892f 100644
--- a/proc/to_uni.html
+++ b/proc/to_uni.html
@@ -163,7 +163,7 @@ Arguments
-
+
character(kind=CDK, len=*),
|
intent(in) |
@@ -7012,7 +7012,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/to_uni_vec.html b/proc/to_uni_vec.html
index 410c8e501..46a6cd303 100644
--- a/proc/to_uni_vec.html
+++ b/proc/to_uni_vec.html
@@ -167,7 +167,7 @@ Arguments
-
+
character(kind=CDK, len=*),
|
intent(in), |
@@ -7016,7 +7016,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/ucs4_comp_default.html b/proc/ucs4_comp_default.html
index 6b8cec56d..1f9d1ad08 100644
--- a/proc/ucs4_comp_default.html
+++ b/proc/ucs4_comp_default.html
@@ -520,7 +520,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/ucs4_join_default.html b/proc/ucs4_join_default.html
index d2b8b4673..2b0487abb 100644
--- a/proc/ucs4_join_default.html
+++ b/proc/ucs4_join_default.html
@@ -520,7 +520,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/ucs4_neq_default.html b/proc/ucs4_neq_default.html
index 9acef4139..af99429ff 100644
--- a/proc/ucs4_neq_default.html
+++ b/proc/ucs4_neq_default.html
@@ -520,7 +520,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/unescape_string.html b/proc/unescape_string.html
index 078efdfd1..82870abca 100644
--- a/proc/unescape_string.html
+++ b/proc/unescape_string.html
@@ -174,7 +174,7 @@ Arguments
-
+
character(kind=CK, len=:),
|
intent(inout), |
@@ -193,7 +193,7 @@ Arguments
-
+
character(kind=CK, len=:),
|
intent(out), |
@@ -964,7 +964,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/valid_json_hex.html b/proc/valid_json_hex.html
index 8a27ce6d4..9ae1ab27a 100644
--- a/proc/valid_json_hex.html
+++ b/proc/valid_json_hex.html
@@ -170,7 +170,7 @@ Arguments
-
+
character(kind=CK, len=*),
|
intent(in) |
@@ -3963,7 +3963,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_assign_string_to_json_file.html b/proc/wrap_assign_string_to_json_file.html
index ecafb64c6..12b40b3e9 100644
--- a/proc/wrap_assign_string_to_json_file.html
+++ b/proc/wrap_assign_string_to_json_file.html
@@ -1517,7 +1517,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_initialize_json_file_from_string.html b/proc/wrap_initialize_json_file_from_string.html
index 37bbf86b4..7fcc5fa9e 100644
--- a/proc/wrap_initialize_json_file_from_string.html
+++ b/proc/wrap_initialize_json_file_from_string.html
@@ -2064,7 +2064,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_initialize_json_file_from_string_v2.html b/proc/wrap_initialize_json_file_from_string_v2.html
index c6f2a795d..73bffbc0f 100644
--- a/proc/wrap_initialize_json_file_from_string_v2.html
+++ b/proc/wrap_initialize_json_file_from_string_v2.html
@@ -1616,7 +1616,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_add_integer_by_path.html b/proc/wrap_json_add_integer_by_path.html
index fbe74e7b1..346f12285 100644
--- a/proc/wrap_json_add_integer_by_path.html
+++ b/proc/wrap_json_add_integer_by_path.html
@@ -2963,7 +2963,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_add_integer_vec_by_path.html b/proc/wrap_json_add_integer_vec_by_path.html
index ab7d93b23..17f466614 100644
--- a/proc/wrap_json_add_integer_vec_by_path.html
+++ b/proc/wrap_json_add_integer_vec_by_path.html
@@ -2879,7 +2879,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_add_logical_by_path.html b/proc/wrap_json_add_logical_by_path.html
index 57872739a..b44d1f95a 100644
--- a/proc/wrap_json_add_logical_by_path.html
+++ b/proc/wrap_json_add_logical_by_path.html
@@ -2963,7 +2963,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_add_logical_vec_by_path.html b/proc/wrap_json_add_logical_vec_by_path.html
index f4e029352..be70ae22a 100644
--- a/proc/wrap_json_add_logical_vec_by_path.html
+++ b/proc/wrap_json_add_logical_vec_by_path.html
@@ -2879,7 +2879,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_add_member_by_path.html b/proc/wrap_json_add_member_by_path.html
index 3a9c61b2b..a2d7a669a 100644
--- a/proc/wrap_json_add_member_by_path.html
+++ b/proc/wrap_json_add_member_by_path.html
@@ -2879,7 +2879,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_add_real32_by_path.html b/proc/wrap_json_add_real32_by_path.html
index c8d105ce3..0fdf407b9 100644
--- a/proc/wrap_json_add_real32_by_path.html
+++ b/proc/wrap_json_add_real32_by_path.html
@@ -3131,7 +3131,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_add_real32_vec_by_path.html b/proc/wrap_json_add_real32_vec_by_path.html
index 165a0acec..7e5650be3 100644
--- a/proc/wrap_json_add_real32_vec_by_path.html
+++ b/proc/wrap_json_add_real32_vec_by_path.html
@@ -3131,7 +3131,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_add_real_by_path.html b/proc/wrap_json_add_real_by_path.html
index 966d0f9a7..ffa5ef7dc 100644
--- a/proc/wrap_json_add_real_by_path.html
+++ b/proc/wrap_json_add_real_by_path.html
@@ -2942,7 +2942,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_add_real_vec_by_path.html b/proc/wrap_json_add_real_vec_by_path.html
index f56e20435..1fb1910a8 100644
--- a/proc/wrap_json_add_real_vec_by_path.html
+++ b/proc/wrap_json_add_real_vec_by_path.html
@@ -2879,7 +2879,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_add_string_by_path.html b/proc/wrap_json_add_string_by_path.html
index c9f6420e8..3040ae41e 100644
--- a/proc/wrap_json_add_string_by_path.html
+++ b/proc/wrap_json_add_string_by_path.html
@@ -2997,7 +2997,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_add_string_vec_by_path.html b/proc/wrap_json_add_string_vec_by_path.html
index 718a3e310..805b74534 100644
--- a/proc/wrap_json_add_string_vec_by_path.html
+++ b/proc/wrap_json_add_string_vec_by_path.html
@@ -254,7 +254,7 @@ Arguments
-
+
integer(kind=IK),
|
intent(in), |
@@ -2948,7 +2948,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_create_by_path.html b/proc/wrap_json_create_by_path.html
index d588314c4..1b470d9fc 100644
--- a/proc/wrap_json_create_by_path.html
+++ b/proc/wrap_json_create_by_path.html
@@ -3828,7 +3828,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_add_integer.html b/proc/wrap_json_file_add_integer.html
index 91ea5233d..bdd21cb05 100644
--- a/proc/wrap_json_file_add_integer.html
+++ b/proc/wrap_json_file_add_integer.html
@@ -3137,7 +3137,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_add_integer_vec.html b/proc/wrap_json_file_add_integer_vec.html
index 8ade0de61..e497a0761 100644
--- a/proc/wrap_json_file_add_integer_vec.html
+++ b/proc/wrap_json_file_add_integer_vec.html
@@ -3137,7 +3137,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_add_logical.html b/proc/wrap_json_file_add_logical.html
index e518dbaf9..3bbf8c1d6 100644
--- a/proc/wrap_json_file_add_logical.html
+++ b/proc/wrap_json_file_add_logical.html
@@ -3137,7 +3137,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_add_logical_vec.html b/proc/wrap_json_file_add_logical_vec.html
index 9fd38baea..032639695 100644
--- a/proc/wrap_json_file_add_logical_vec.html
+++ b/proc/wrap_json_file_add_logical_vec.html
@@ -3137,7 +3137,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_add_object.html b/proc/wrap_json_file_add_object.html
index 136bc4faa..bde2f18ba 100644
--- a/proc/wrap_json_file_add_object.html
+++ b/proc/wrap_json_file_add_object.html
@@ -3137,7 +3137,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_add_real.html b/proc/wrap_json_file_add_real.html
index 8a3078533..57df29b86 100644
--- a/proc/wrap_json_file_add_real.html
+++ b/proc/wrap_json_file_add_real.html
@@ -3137,7 +3137,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_add_real32.html b/proc/wrap_json_file_add_real32.html
index 08e96a6a5..17e75ac66 100644
--- a/proc/wrap_json_file_add_real32.html
+++ b/proc/wrap_json_file_add_real32.html
@@ -3131,7 +3131,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_add_real32_vec.html b/proc/wrap_json_file_add_real32_vec.html
index d25bea746..dfc18f730 100644
--- a/proc/wrap_json_file_add_real32_vec.html
+++ b/proc/wrap_json_file_add_real32_vec.html
@@ -3131,7 +3131,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_add_real_vec.html b/proc/wrap_json_file_add_real_vec.html
index a36792070..c864ff0b7 100644
--- a/proc/wrap_json_file_add_real_vec.html
+++ b/proc/wrap_json_file_add_real_vec.html
@@ -3137,7 +3137,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_add_string.html b/proc/wrap_json_file_add_string.html
index 4f7faea07..b095db098 100644
--- a/proc/wrap_json_file_add_string.html
+++ b/proc/wrap_json_file_add_string.html
@@ -3172,7 +3172,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_add_string_vec.html b/proc/wrap_json_file_add_string_vec.html
index f4f59330a..12c067701 100644
--- a/proc/wrap_json_file_add_string_vec.html
+++ b/proc/wrap_json_file_add_string_vec.html
@@ -3195,7 +3195,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_get_alloc_string_vec.html b/proc/wrap_json_file_get_alloc_string_vec.html
index 5d76bfcb4..4a4cb8729 100644
--- a/proc/wrap_json_file_get_alloc_string_vec.html
+++ b/proc/wrap_json_file_get_alloc_string_vec.html
@@ -3722,7 +3722,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_get_integer.html b/proc/wrap_json_file_get_integer.html
index 4c6168704..34fb3cd15 100644
--- a/proc/wrap_json_file_get_integer.html
+++ b/proc/wrap_json_file_get_integer.html
@@ -3679,7 +3679,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_get_integer_vec.html b/proc/wrap_json_file_get_integer_vec.html
index dbd795f55..ead221781 100644
--- a/proc/wrap_json_file_get_integer_vec.html
+++ b/proc/wrap_json_file_get_integer_vec.html
@@ -3683,7 +3683,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_get_logical.html b/proc/wrap_json_file_get_logical.html
index 0d2accf98..8b97bc12a 100644
--- a/proc/wrap_json_file_get_logical.html
+++ b/proc/wrap_json_file_get_logical.html
@@ -3679,7 +3679,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_get_logical_vec.html b/proc/wrap_json_file_get_logical_vec.html
index 6fda34bc3..10ba564c7 100644
--- a/proc/wrap_json_file_get_logical_vec.html
+++ b/proc/wrap_json_file_get_logical_vec.html
@@ -3683,7 +3683,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_get_object.html b/proc/wrap_json_file_get_object.html
index 816c429e7..404302c4d 100644
--- a/proc/wrap_json_file_get_object.html
+++ b/proc/wrap_json_file_get_object.html
@@ -3663,7 +3663,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_get_real.html b/proc/wrap_json_file_get_real.html
index 86d8a5743..3c7baf610 100644
--- a/proc/wrap_json_file_get_real.html
+++ b/proc/wrap_json_file_get_real.html
@@ -3679,7 +3679,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_get_real32.html b/proc/wrap_json_file_get_real32.html
index 566769583..1bbab34c7 100644
--- a/proc/wrap_json_file_get_real32.html
+++ b/proc/wrap_json_file_get_real32.html
@@ -3679,7 +3679,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_get_real32_vec.html b/proc/wrap_json_file_get_real32_vec.html
index 84a60d783..587d24151 100644
--- a/proc/wrap_json_file_get_real32_vec.html
+++ b/proc/wrap_json_file_get_real32_vec.html
@@ -3683,7 +3683,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_get_real_vec.html b/proc/wrap_json_file_get_real_vec.html
index 702f2934b..79936a832 100644
--- a/proc/wrap_json_file_get_real_vec.html
+++ b/proc/wrap_json_file_get_real_vec.html
@@ -3679,7 +3679,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_get_string.html b/proc/wrap_json_file_get_string.html
index 8bd7ff613..ff0858575 100644
--- a/proc/wrap_json_file_get_string.html
+++ b/proc/wrap_json_file_get_string.html
@@ -3679,7 +3679,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_get_string_vec.html b/proc/wrap_json_file_get_string_vec.html
index 684901c42..61ec1e8c7 100644
--- a/proc/wrap_json_file_get_string_vec.html
+++ b/proc/wrap_json_file_get_string_vec.html
@@ -3679,7 +3679,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_load_from_string.html b/proc/wrap_json_file_load_from_string.html
index 13d3a63e0..f2911ed19 100644
--- a/proc/wrap_json_file_load_from_string.html
+++ b/proc/wrap_json_file_load_from_string.html
@@ -1706,7 +1706,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_remove.html b/proc/wrap_json_file_remove.html
index 8202276e2..db0c5046f 100644
--- a/proc/wrap_json_file_remove.html
+++ b/proc/wrap_json_file_remove.html
@@ -2920,7 +2920,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_rename.html b/proc/wrap_json_file_rename.html
index f82d262e5..122b9a7e6 100644
--- a/proc/wrap_json_file_rename.html
+++ b/proc/wrap_json_file_rename.html
@@ -441,7 +441,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_update_integer.html b/proc/wrap_json_file_update_integer.html
index 477f8a6c9..560488b0c 100644
--- a/proc/wrap_json_file_update_integer.html
+++ b/proc/wrap_json_file_update_integer.html
@@ -498,7 +498,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_update_logical.html b/proc/wrap_json_file_update_logical.html
index c7d1f90df..3bc048325 100644
--- a/proc/wrap_json_file_update_logical.html
+++ b/proc/wrap_json_file_update_logical.html
@@ -498,7 +498,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_update_real.html b/proc/wrap_json_file_update_real.html
index 365694ef6..f9c5b22d4 100644
--- a/proc/wrap_json_file_update_real.html
+++ b/proc/wrap_json_file_update_real.html
@@ -498,7 +498,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_update_real32.html b/proc/wrap_json_file_update_real32.html
index e247ab975..ff591769e 100644
--- a/proc/wrap_json_file_update_real32.html
+++ b/proc/wrap_json_file_update_real32.html
@@ -498,7 +498,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_update_string.html b/proc/wrap_json_file_update_string.html
index e31efee93..17a143961 100644
--- a/proc/wrap_json_file_update_string.html
+++ b/proc/wrap_json_file_update_string.html
@@ -532,7 +532,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_valid_path.html b/proc/wrap_json_file_valid_path.html
index 00e184dab..20015743a 100644
--- a/proc/wrap_json_file_valid_path.html
+++ b/proc/wrap_json_file_valid_path.html
@@ -2923,7 +2923,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_valid_path_op.html b/proc/wrap_json_file_valid_path_op.html
index a4b01703b..e2d7161b9 100644
--- a/proc/wrap_json_file_valid_path_op.html
+++ b/proc/wrap_json_file_valid_path_op.html
@@ -402,7 +402,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_variable_info.html b/proc/wrap_json_file_variable_info.html
index 02b36b845..1cb2e3bf8 100644
--- a/proc/wrap_json_file_variable_info.html
+++ b/proc/wrap_json_file_variable_info.html
@@ -2927,7 +2927,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_file_variable_matrix_info.html b/proc/wrap_json_file_variable_matrix_info.html
index 7aef72b9d..b455e8161 100644
--- a/proc/wrap_json_file_variable_matrix_info.html
+++ b/proc/wrap_json_file_variable_matrix_info.html
@@ -3070,7 +3070,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_get_alloc_string_vec_by_path.html b/proc/wrap_json_get_alloc_string_vec_by_path.html
index 68d1602eb..698cb75d2 100644
--- a/proc/wrap_json_get_alloc_string_vec_by_path.html
+++ b/proc/wrap_json_get_alloc_string_vec_by_path.html
@@ -224,7 +224,7 @@ Arguments
-
+
integer(kind=IK),
|
intent(out), |
@@ -6059,7 +6059,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_get_array_by_path.html b/proc/wrap_json_get_array_by_path.html
index 3fc483dd3..e3bbb3377 100644
--- a/proc/wrap_json_get_array_by_path.html
+++ b/proc/wrap_json_get_array_by_path.html
@@ -6005,7 +6005,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_get_by_path.html b/proc/wrap_json_get_by_path.html
index 8b8151aa7..db4505fff 100644
--- a/proc/wrap_json_get_by_path.html
+++ b/proc/wrap_json_get_by_path.html
@@ -6005,7 +6005,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_get_integer_by_path.html b/proc/wrap_json_get_integer_by_path.html
index af30c655b..c70804917 100644
--- a/proc/wrap_json_get_integer_by_path.html
+++ b/proc/wrap_json_get_integer_by_path.html
@@ -6021,7 +6021,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_get_integer_vec_by_path.html b/proc/wrap_json_get_integer_vec_by_path.html
index f60c2bde3..511fa4d4a 100644
--- a/proc/wrap_json_get_integer_vec_by_path.html
+++ b/proc/wrap_json_get_integer_vec_by_path.html
@@ -6021,7 +6021,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_get_logical_by_path.html b/proc/wrap_json_get_logical_by_path.html
index f70597040..c831371c9 100644
--- a/proc/wrap_json_get_logical_by_path.html
+++ b/proc/wrap_json_get_logical_by_path.html
@@ -6021,7 +6021,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_get_logical_vec_by_path.html b/proc/wrap_json_get_logical_vec_by_path.html
index 45298a2c9..0ed900702 100644
--- a/proc/wrap_json_get_logical_vec_by_path.html
+++ b/proc/wrap_json_get_logical_vec_by_path.html
@@ -6021,7 +6021,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_get_path.html b/proc/wrap_json_get_path.html
index 1665e1adc..32fc4fb95 100644
--- a/proc/wrap_json_get_path.html
+++ b/proc/wrap_json_get_path.html
@@ -2991,7 +2991,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_get_real32_by_path.html b/proc/wrap_json_get_real32_by_path.html
index 70518335a..2c035dbc3 100644
--- a/proc/wrap_json_get_real32_by_path.html
+++ b/proc/wrap_json_get_real32_by_path.html
@@ -6021,7 +6021,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_get_real32_vec_by_path.html b/proc/wrap_json_get_real32_vec_by_path.html
index 28c85c146..e6f08a9a8 100644
--- a/proc/wrap_json_get_real32_vec_by_path.html
+++ b/proc/wrap_json_get_real32_vec_by_path.html
@@ -6021,7 +6021,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_get_real_by_path.html b/proc/wrap_json_get_real_by_path.html
index 1abba8185..b762a723e 100644
--- a/proc/wrap_json_get_real_by_path.html
+++ b/proc/wrap_json_get_real_by_path.html
@@ -6021,7 +6021,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_get_real_vec_by_path.html b/proc/wrap_json_get_real_vec_by_path.html
index bf526911a..e720e5ec1 100644
--- a/proc/wrap_json_get_real_vec_by_path.html
+++ b/proc/wrap_json_get_real_vec_by_path.html
@@ -6021,7 +6021,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_get_string_by_path.html b/proc/wrap_json_get_string_by_path.html
index 8e451abcb..e57cfd62a 100644
--- a/proc/wrap_json_get_string_by_path.html
+++ b/proc/wrap_json_get_string_by_path.html
@@ -6021,7 +6021,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_get_string_vec_by_path.html b/proc/wrap_json_get_string_vec_by_path.html
index 958991e15..df0f9e5a8 100644
--- a/proc/wrap_json_get_string_vec_by_path.html
+++ b/proc/wrap_json_get_string_vec_by_path.html
@@ -6021,7 +6021,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_info_by_path.html b/proc/wrap_json_info_by_path.html
index 05df32a65..c74038fc7 100644
--- a/proc/wrap_json_info_by_path.html
+++ b/proc/wrap_json_info_by_path.html
@@ -6037,7 +6037,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_matrix_info_by_path.html b/proc/wrap_json_matrix_info_by_path.html
index dcb37ed66..62bd78b40 100644
--- a/proc/wrap_json_matrix_info_by_path.html
+++ b/proc/wrap_json_matrix_info_by_path.html
@@ -3099,7 +3099,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_parse_string.html b/proc/wrap_json_parse_string.html
index faeb04806..35c3f4ce4 100644
--- a/proc/wrap_json_parse_string.html
+++ b/proc/wrap_json_parse_string.html
@@ -194,7 +194,7 @@ Arguments
-
+
character(kind=CDK, len=*),
|
intent(in) |
@@ -1695,7 +1695,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_rename_by_path.html b/proc/wrap_json_rename_by_path.html
index 184588fbb..5321aa8d5 100644
--- a/proc/wrap_json_rename_by_path.html
+++ b/proc/wrap_json_rename_by_path.html
@@ -441,7 +441,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_throw_exception.html b/proc/wrap_json_throw_exception.html
index 36f5f6271..e452e3afc 100644
--- a/proc/wrap_json_throw_exception.html
+++ b/proc/wrap_json_throw_exception.html
@@ -5037,7 +5037,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_update_integer.html b/proc/wrap_json_update_integer.html
index 90de64a4d..d0f9e31bb 100644
--- a/proc/wrap_json_update_integer.html
+++ b/proc/wrap_json_update_integer.html
@@ -514,7 +514,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_update_logical.html b/proc/wrap_json_update_logical.html
index 6704aaa72..33d3f3764 100644
--- a/proc/wrap_json_update_logical.html
+++ b/proc/wrap_json_update_logical.html
@@ -514,7 +514,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_update_real.html b/proc/wrap_json_update_real.html
index 0839563ec..d0161a70d 100644
--- a/proc/wrap_json_update_real.html
+++ b/proc/wrap_json_update_real.html
@@ -514,7 +514,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_update_real32.html b/proc/wrap_json_update_real32.html
index 5d221ae11..75ce735a0 100644
--- a/proc/wrap_json_update_real32.html
+++ b/proc/wrap_json_update_real32.html
@@ -514,7 +514,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_update_string.html b/proc/wrap_json_update_string.html
index 425ff2cec..90fbdf79e 100644
--- a/proc/wrap_json_update_string.html
+++ b/proc/wrap_json_update_string.html
@@ -552,7 +552,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_valid_path.html b/proc/wrap_json_valid_path.html
index 0ed7be22c..3be8c1803 100644
--- a/proc/wrap_json_valid_path.html
+++ b/proc/wrap_json_valid_path.html
@@ -2947,7 +2947,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_value_add_integer.html b/proc/wrap_json_value_add_integer.html
index 146f143dd..d0adb4bc7 100644
--- a/proc/wrap_json_value_add_integer.html
+++ b/proc/wrap_json_value_add_integer.html
@@ -552,7 +552,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_value_add_integer_vec.html b/proc/wrap_json_value_add_integer_vec.html
index 1cd032cc4..6d84ccf38 100644
--- a/proc/wrap_json_value_add_integer_vec.html
+++ b/proc/wrap_json_value_add_integer_vec.html
@@ -552,7 +552,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_value_add_logical.html b/proc/wrap_json_value_add_logical.html
index 1e4c0bf57..ff22c853f 100644
--- a/proc/wrap_json_value_add_logical.html
+++ b/proc/wrap_json_value_add_logical.html
@@ -552,7 +552,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_value_add_logical_vec.html b/proc/wrap_json_value_add_logical_vec.html
index 1a17c051e..df17c9bc5 100644
--- a/proc/wrap_json_value_add_logical_vec.html
+++ b/proc/wrap_json_value_add_logical_vec.html
@@ -552,7 +552,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_value_add_null.html b/proc/wrap_json_value_add_null.html
index 8f335a484..15956493a 100644
--- a/proc/wrap_json_value_add_null.html
+++ b/proc/wrap_json_value_add_null.html
@@ -536,7 +536,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_value_add_real.html b/proc/wrap_json_value_add_real.html
index 9cb5dab2c..48f5f9160 100644
--- a/proc/wrap_json_value_add_real.html
+++ b/proc/wrap_json_value_add_real.html
@@ -552,7 +552,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_value_add_real32.html b/proc/wrap_json_value_add_real32.html
index 96b19636a..51d404b24 100644
--- a/proc/wrap_json_value_add_real32.html
+++ b/proc/wrap_json_value_add_real32.html
@@ -552,7 +552,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_value_add_real32_vec.html b/proc/wrap_json_value_add_real32_vec.html
index bf83e32a7..997f8e666 100644
--- a/proc/wrap_json_value_add_real32_vec.html
+++ b/proc/wrap_json_value_add_real32_vec.html
@@ -552,7 +552,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_value_add_real_vec.html b/proc/wrap_json_value_add_real_vec.html
index 66e4c9251..320d65eb0 100644
--- a/proc/wrap_json_value_add_real_vec.html
+++ b/proc/wrap_json_value_add_real_vec.html
@@ -552,7 +552,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_value_add_string.html b/proc/wrap_json_value_add_string.html
index 26a7ba1df..4e68162cf 100644
--- a/proc/wrap_json_value_add_string.html
+++ b/proc/wrap_json_value_add_string.html
@@ -584,7 +584,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_value_add_string_vec.html b/proc/wrap_json_value_add_string_vec.html
index 2dd933c0b..7ba79195f 100644
--- a/proc/wrap_json_value_add_string_vec.html
+++ b/proc/wrap_json_value_add_string_vec.html
@@ -584,7 +584,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_value_create_array.html b/proc/wrap_json_value_create_array.html
index c4a6c6ff9..190e7d463 100644
--- a/proc/wrap_json_value_create_array.html
+++ b/proc/wrap_json_value_create_array.html
@@ -3900,7 +3900,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_value_create_integer.html b/proc/wrap_json_value_create_integer.html
index c50a1bffa..97f0040af 100644
--- a/proc/wrap_json_value_create_integer.html
+++ b/proc/wrap_json_value_create_integer.html
@@ -688,7 +688,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_value_create_logical.html b/proc/wrap_json_value_create_logical.html
index ca9e16db5..67e2188fc 100644
--- a/proc/wrap_json_value_create_logical.html
+++ b/proc/wrap_json_value_create_logical.html
@@ -687,7 +687,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_value_create_null.html b/proc/wrap_json_value_create_null.html
index ccbe63452..a43b7e9cc 100644
--- a/proc/wrap_json_value_create_null.html
+++ b/proc/wrap_json_value_create_null.html
@@ -3831,7 +3831,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_value_create_object.html b/proc/wrap_json_value_create_object.html
index b2fb008ed..ab396180f 100644
--- a/proc/wrap_json_value_create_object.html
+++ b/proc/wrap_json_value_create_object.html
@@ -3882,7 +3882,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_value_create_real.html b/proc/wrap_json_value_create_real.html
index 80ea0d051..5335411a0 100644
--- a/proc/wrap_json_value_create_real.html
+++ b/proc/wrap_json_value_create_real.html
@@ -495,7 +495,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_value_create_real32.html b/proc/wrap_json_value_create_real32.html
index 3dab0a58b..6b3908576 100644
--- a/proc/wrap_json_value_create_real32.html
+++ b/proc/wrap_json_value_create_real32.html
@@ -682,7 +682,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_value_create_string.html b/proc/wrap_json_value_create_string.html
index 46e013224..0e262641d 100644
--- a/proc/wrap_json_value_create_string.html
+++ b/proc/wrap_json_value_create_string.html
@@ -1281,7 +1281,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_value_get_child_by_name.html b/proc/wrap_json_value_get_child_by_name.html
index ede872731..1e38cfbd0 100644
--- a/proc/wrap_json_value_get_child_by_name.html
+++ b/proc/wrap_json_value_get_child_by_name.html
@@ -6005,7 +6005,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_value_remove_if_present.html b/proc/wrap_json_value_remove_if_present.html
index b9a3465da..8ee42aca8 100644
--- a/proc/wrap_json_value_remove_if_present.html
+++ b/proc/wrap_json_value_remove_if_present.html
@@ -2930,7 +2930,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/proc/wrap_json_value_rename.html b/proc/wrap_json_value_rename.html
index fe3eea9f7..dacf42f70 100644
--- a/proc/wrap_json_value_rename.html
+++ b/proc/wrap_json_value_rename.html
@@ -411,7 +411,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/search.html b/search.html
index 8a5a34bfe..a45c7ae4b 100644
--- a/search.html
+++ b/search.html
@@ -102,7 +102,7 @@ Search Results
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/sourcefile/json_file_module.f90.html b/sourcefile/json_file_module.f90.html
index 20ec454e4..406ef9218 100644
--- a/sourcefile/json_file_module.f90.html
+++ b/sourcefile/json_file_module.f90.html
@@ -3506,7 +3506,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/sourcefile/json_kinds.f90.html b/sourcefile/json_kinds.f90.html
index 0b0d268dc..041ae9959 100644
--- a/sourcefile/json_kinds.f90.html
+++ b/sourcefile/json_kinds.f90.html
@@ -540,7 +540,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/sourcefile/json_module.f90.html b/sourcefile/json_module.f90.html
index 6271f3ac9..4493c5d93 100644
--- a/sourcefile/json_module.f90.html
+++ b/sourcefile/json_module.f90.html
@@ -446,7 +446,7 @@ Source Code
implicit none
- character(kind=json_CK,len=*),parameter,private :: version = '8.5.2'
+ character(kind=json_CK,len=*),parameter,private :: version = '9.0.0'
!! JSON-Fortran version.
!!
!!@note This string should match the one in the `.VERSION` file (which is used
@@ -496,7 +496,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/sourcefile/json_parameters.f90.html b/sourcefile/json_parameters.f90.html
index 5b112321c..d2bbbd08b 100644
--- a/sourcefile/json_parameters.f90.html
+++ b/sourcefile/json_parameters.f90.html
@@ -584,7 +584,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/sourcefile/json_string_utilities.f90.html b/sourcefile/json_string_utilities.f90.html
index fedce71d3..328922961 100644
--- a/sourcefile/json_string_utilities.f90.html
+++ b/sourcefile/json_string_utilities.f90.html
@@ -1354,7 +1354,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/sourcefile/json_value_module.f90.html b/sourcefile/json_value_module.f90.html
index 63e1bb5b1..cf4227ef6 100644
--- a/sourcefile/json_value_module.f90.html
+++ b/sourcefile/json_value_module.f90.html
@@ -12012,7 +12012,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/src/json_module.F90 b/src/json_module.F90
index 62b73d8f0..84645c4a5 100644
--- a/src/json_module.F90
+++ b/src/json_module.F90
@@ -73,7 +73,7 @@ module json_module
implicit none
- character(kind=json_CK,len=*),parameter,private :: version = '8.5.2'
+ character(kind=json_CK,len=*),parameter,private :: version = '9.0.0'
!! JSON-Fortran version.
!!
!!@note This string should match the one in the `.VERSION` file (which is used
diff --git a/tipuesearch/tipuesearch_content.js b/tipuesearch/tipuesearch_content.js
index f0dd23563..6228a340f 100644
--- a/tipuesearch/tipuesearch_content.js
+++ b/tipuesearch/tipuesearch_content.js
@@ -1 +1 @@
-var tipuesearch = {"pages":[{"title":" JSON-Fortran ","text":"JSON-Fortran Brief description License Official Releases Miscellaneous Brief description A user-friendly, thread-safe, and object-oriented API for reading and writing JSON files, written in modern Fortran. License The JSON -Fortran source code and related files and documentation are\ndistributed under a permissive free software license (BSD-style). See\nthe LICENSE file for more details. Official Releases The current stable release is 8.5.2 and can be downloaded\non GitHub or installed with Homebrew on MacOS. The\ndocumentation for the current version, 8.5.2 , can be\nfound here 1 , and a\nlist of changes from the previous version are here . A list of all past releases, links to their documentation, and the\nchange log can be found on the releases page . Miscellaneous For more information about JSON , see: http://www.json.org/ Documentation for a particular release does not contain links\nback to general documentation; use the browser’s back button to\nnavigate back to https://jacobwilliams.github.io/json-fortran/ ↩ Developer Info Jacob Williams","tags":"home","loc":"index.html"},{"title":"json_file – JSON-Fortran ","text":"type, public :: json_file The json_file is the main public class that is\n used to open a file and get data from it. A json_file contains only two items: an instance of a json_core ,\n which is used for all data manipulation, and a json_value pointer,\n which is used to construct the linked-list data structure.\n Note that most methods in the json_file class are simply wrappers\n to the lower-level routines in the json_value_module . Example program test use json_module implicit none type ( json_file ) :: json integer :: ival real ( real64 ) :: rval character ( len = :), allocatable :: cval logical :: found call json % initialize ( compact_reals = . true .) call json % load ( filename = 'myfile.json' ) call json % print () !print to the console call json % get ( 'var.i' , ival , found ) call json % get ( 'var.r(3)' , rval , found ) call json % get ( 'var.c' , cval , found ) call json % destroy () end program test Note The destroy() method may be called to free the memory if necessary. json_file includes a finalizer that also calls destroy() when the variable goes out of scope. Inherits type~~json_file~~InheritsGraph type~json_file json_file type~json_core json_core type~json_file->type~json_core core type~json_value json_value type~json_file->type~json_value p type~json_value->type~json_value previous, next, parent, children, tail Help Graph Key Nodes of different colours represent the following: Graph Key Type Type This Page's Entity This Page's Entity Solid arrows point from a derived type to the parent type which it\nextends. Dashed arrows point from a derived type to the other\ntypes it contains as a components, with a label listing the name(s) of\nsaid component(s). Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Components Type Visibility Attributes Name Initial type( json_core ), private :: core The instance of the json_core factory used for this file. type( json_value ), private, pointer :: p => null() the JSON structure read from the file Constructor public interface json_file Structure constructor to initialize a json_file object with an existing json_value object or a JSON string, and either the json_core settings or a json_core instance. Example ... type ( json_file ) :: my_file type ( json_value ), pointer :: json_object type ( json_core ) :: json_core_object ... ! Construct a json_object: !could do this: my_file = json_file ( json_object ) !or: my_file = json_file ( json_object , verbose = . true .) !or: my_file = json_file ( '{\"x\": [1]}' , verbose = . true .) !or: my_file = json_file ( json_object , json_core_object ) !or: my_file = json_file ( '{\"x\": [1]}' , json_core_object ) private function initialize_json_file (p, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma, nullify_pointer) result(file_object) Author Izaak Beekman Date 07/23/2015 Cast a json_value object as a json_file object.\n It also calls the initialize() method. Note initialize_json_core , json_initialize , initialize_json_core_in_file , initialize_json_file , initialize_json_file_v2 , initialize_json_file_from_string ,\n and initialize_json_file_from_string_v2 all have a similar interface. Arguments Type Intent Optional Attributes Name type( json_value ), optional, pointer :: p json_value object to cast\nas a json_file object. This\nwill be nullified. logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) logical(kind=LK), intent(in), optional :: nullify_pointer if True, then p will be nullified\nif present. (default is True). Normally,\nthis should be done, because the json_file will destroy\nthe pointer when the class goes out of scope (causing p to be\na dangling pointer). However, if the intent is to use p in\na json_file and then call nullify and continue\nto use p , then this should be set to False. Return Value type( json_file ) private function initialize_json_file_v2 (json_value_object, json_core_object) result(file_object) Author Jacob Williams Date 4/26/2016 Cast a json_value pointer and a json_core object\nas a json_file object. Arguments Type Intent Optional Attributes Name type( json_value ), intent(in), pointer :: json_value_object type( json_core ), intent(in) :: json_core_object Return Value type( json_file ) private function initialize_json_file_from_string (str, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) result(file_object) Author Jacob Williams Date 01/19/2019 Cast a JSON string as a json_file object.\n It also calls the initialize() method. Example type ( json_file ) :: f f = json_file ( '{\"key \": 1}' , trailing_spaces_significant = . true .) Note initialize_json_core , json_initialize , initialize_json_core_in_file , initialize_json_file , initialize_json_file_v2 , initialize_json_file_from_string ,\n and initialize_json_file_from_string_v2 all have a similar interface. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str string to load JSON data from logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Return Value type( json_file ) private function wrap_initialize_json_file_from_string (str, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) result(file_object) Alternate version of initialize_json_file_from_string , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: str string to load JSON data from logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Return Value type( json_file ) private function initialize_json_file_from_string_v2 (str, json_core_object) result(file_object) Author Jacob Williams Date 1/19/2019 Cast a JSON string and a json_core object\nas a json_file object. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str string to load JSON data from type( json_core ), intent(in) :: json_core_object Return Value type( json_file ) private function wrap_initialize_json_file_from_string_v2 (str, json_core_object) result(file_object) Alternate version of initialize_json_file_from_string_v2 , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: str string to load JSON data from type( json_core ), intent(in) :: json_core_object Return Value type( json_file ) Finalization Procedures final :: finalize_json_file private subroutine finalize_json_file (me) Finalizer for json_file class. Read more… Arguments Type Intent Optional Attributes Name type( json_file ), intent(inout) :: me Type-Bound Procedures generic, public :: add => json_file_add , json_file_add_object , wrap_json_file_add_object , json_file_add_integer , wrap_json_file_add_integer , json_file_add_real32 , wrap_json_file_add_real32 , json_file_add_real , wrap_json_file_add_real , json_file_add_logical , wrap_json_file_add_logical , json_file_add_string , wrap_json_file_add_string , json_file_add_integer_vec , wrap_json_file_add_integer_vec , json_file_add_real32_vec , wrap_json_file_add_real32_vec , json_file_add_real_vec , wrap_json_file_add_real_vec , json_file_add_logical_vec , wrap_json_file_add_logical_vec , json_file_add_string_vec , wrap_json_file_add_string_vec Add a variable to a json_file , by specifying the path. Example program test use json_module , rk => json_rk , ik => json_ik implicit none type ( json_file ) :: f call f % initialize () ! specify whatever init options you want. call f % add ( 'inputs.t' , 0.0_rk ) call f % add ( 'inputs.x' , [ 1.0_rk , 2.0_rk , 3.0_rk ]) call f % add ( 'inputs.flag' , . true .) call f % print () ! print to the console end program test private subroutine json_file_add (me, p, destroy_original) Author Jacob Williams Add a json_value pointer as the root object to a JSON file. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me type( json_value ), intent(in), pointer :: p pointer to the variable to add logical(kind=LK), intent(in), optional :: destroy_original if the file currently contains\nan associated pointer, it is\ndestroyed. [Default is True] private subroutine json_file_add_object (me, path, p, found, was_created) Author Jacob Williams Add a json_value pointer to an object to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(in), pointer :: p pointer to the variable to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_object (me, path, p, found, was_created) Author Jacob Williams Alternate version of json_file_add_object , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(in), pointer :: p pointer to the variable to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_integer (me, path, val, found, was_created) Author Jacob Williams Add an integer value to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_integer (me, path, val, found, was_created) Author Jacob Williams Alternate version of json_file_add_integer , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_real32 (me, path, val, found, was_created) Author Jacob Williams Alternate version of json_file_add_real where val is real32 . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_real32 (me, path, val, found, was_created) Author Jacob Williams Alternate version of json_file_add_real32 , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_real (me, path, val, found, was_created) Author Jacob Williams Add a real(RK) variable value to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_real (me, path, val, found, was_created) Author Jacob Williams Alternate version of json_file_add_real , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_logical (me, path, val, found, was_created) Author Jacob Williams Add a logical(LK) value to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_logical (me, path, val, found, was_created) Author Jacob Williams Alternate version of json_file_add_logical , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_string (me, path, val, found, was_created, trim_str, adjustl_str) Author Jacob Williams Add a character string to a json file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) private subroutine wrap_json_file_add_string (me, path, val, found, was_created, trim_str, adjustl_str) Author Jacob Williams Alternate version of json_file_add_string , where “path” and “val” are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) private subroutine json_file_add_integer_vec (me, path, vec, found, was_created) Author Jacob Williams Add an integer vector to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_integer_vec (me, path, vec, found, was_created) Author Jacob Williams Alternate version of json_file_add_integer_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_real32_vec (me, path, vec, found, was_created) Author Jacob Williams Alternate version of json_file_add_real_vec where vec is real32 . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_real32_vec (me, path, vec, found, was_created) Author Jacob Williams Alternate version of json_file_add_real32_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_real_vec (me, path, vec, found, was_created) Author Jacob Williams Add a real(RK) vector to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_real_vec (me, path, vec, found, was_created) Author Jacob Williams Alternate version of json_file_add_real_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_logical_vec (me, path, vec, found, was_created) Author Jacob Williams Add a logical(LK) vector to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_logical_vec (me, path, vec, found, was_created) Author Jacob Williams Alternate version of json_file_add_logical_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_string_vec (me, path, vec, found, was_created, ilen, trim_str, adjustl_str) Author Jacob Williams Add a string vector to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element\n(note that ADJUSTL is done before TRIM) private subroutine wrap_json_file_add_string_vec (me, path, vec, found, was_created, ilen, trim_str, adjustl_str) Author Jacob Williams Alternate version of json_file_add_string_vec , where “path” and “vec” are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element\n(note that ADJUSTL is done before TRIM) generic, public :: add => json_file_add_string_path_ascii , json_file_add_string_value_ascii , json_file_add_string_vec_path_ascii , json_file_add_string_vec_vec_ascii private subroutine json_file_add_string_path_ascii (me, path, val, found, was_created, trim_str, adjustl_str) Author Jacob Williams Wrapper for json_file_add_string where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) private subroutine json_file_add_string_value_ascii (me, path, val, found, was_created, trim_str, adjustl_str) Author Jacob Williams Wrapper for json_file_add_string where “val” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) private subroutine json_file_add_string_vec_path_ascii (me, path, vec, found, was_created, ilen, trim_str, adjustl_str) Author Jacob Williams Alternate version of json_file_add_string_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element\n(note that ADJUSTL is done before TRIM) private subroutine json_file_add_string_vec_vec_ascii (me, path, vec, found, was_created, ilen, trim_str, adjustl_str) Author Jacob Williams Alternate version of json_file_add_string_vec , where “vec” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element\n(note that ADJUSTL is done before TRIM) procedure, public :: assign_json_file private subroutine assign_json_file (me, f) Author Jacob Williams Assignment operator for json_core = json_core .\nThis will duplicate the json_core and also\nperform a deep copy of the json_value data structure. Arguments Type Intent Optional Attributes Name class( json_file ), intent(out) :: me type( json_file ), intent(in) :: f procedure, public, pass(me) :: assign_json_file_to_string private subroutine assign_json_file_to_string (str, me) Author Jacob Williams Assignment operator for character = json_core .\n This is just a wrapper for the json_value_to_string routine. Read more… Arguments Type Intent Optional Attributes Name character(kind=CK, len=:), intent(out), allocatable :: str class( json_file ), intent(in) :: me procedure, public :: assign_string_to_json_file private subroutine assign_string_to_json_file (me, str) Author Jacob Williams Assignment operator for json_core = character.\nThis is just a wrapper for the json_file_load_from_string routine. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: str generic, public :: assignment(=) => assign_json_file , assign_json_file_to_string , assign_string_to_json_file , wrap_assign_string_to_json_file private subroutine assign_json_file (me, f) Author Jacob Williams Assignment operator for json_core = json_core .\nThis will duplicate the json_core and also\nperform a deep copy of the json_value data structure. Arguments Type Intent Optional Attributes Name class( json_file ), intent(out) :: me type( json_file ), intent(in) :: f private subroutine assign_json_file_to_string (str, me) Author Jacob Williams Assignment operator for character = json_core .\n This is just a wrapper for the json_value_to_string routine. Read more… Arguments Type Intent Optional Attributes Name character(kind=CK, len=:), intent(out), allocatable :: str class( json_file ), intent(in) :: me private subroutine assign_string_to_json_file (me, str) Author Jacob Williams Assignment operator for json_core = character.\nThis is just a wrapper for the json_file_load_from_string routine. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: str private subroutine wrap_assign_string_to_json_file (me, str) Author Jacob Williams Alternate version of assign_string_to_json_file , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: str procedure, public :: check_for_errors => json_file_check_for_errors private subroutine json_file_check_for_errors (me, status_ok, error_msg) Retrieve error status and message from the class. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me logical(kind=LK), intent(out), optional :: status_ok true if there were no errors character(kind=CK, len=:), intent(out), optional, allocatable :: error_msg the error message\n(if there were errors) procedure, public :: clear_exceptions => json_file_clear_exceptions private pure subroutine json_file_clear_exceptions (me) Clear exceptions in the class. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me generic, public :: deserialize => json_file_load_from_string , wrap_json_file_load_from_string Load JSON from a string. private subroutine json_file_load_from_string (me, str, destroy_pointer) Author Jacob Williams Date 1/13/2015 Load the JSON data from a string. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: str string to load JSON data from logical(kind=LK), intent(in), optional :: destroy_pointer destroy the pointer before\nloading (default is True) private subroutine wrap_json_file_load_from_string (me, str) Alternate version of json_file_load_from_string , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: str procedure, public :: destroy => json_file_destroy private subroutine json_file_destroy (me, destroy_core) Author Jacob Williams Destroy the json_value data in a json_file .\n This may be done when the variable is no longer needed,\n or will be reused to open a different file.\n Otherwise a memory leak will occur. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me logical, intent(in), optional :: destroy_core to also destroy the json_core .\ndefault is to leave it as is. procedure, public :: failed => json_file_failed private pure function json_file_failed (me) result(failed) Check error status in the file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(in) :: me Return Value logical(kind=LK) will be true if there has been an error. generic, public :: get => json_file_get_object , wrap_json_file_get_object , json_file_get_integer , wrap_json_file_get_integer , json_file_get_real32 , wrap_json_file_get_real32 , json_file_get_real , wrap_json_file_get_real , json_file_get_logical , wrap_json_file_get_logical , json_file_get_string , wrap_json_file_get_string , json_file_get_integer_vec , wrap_json_file_get_integer_vec , json_file_get_real32_vec , wrap_json_file_get_real32_vec , json_file_get_real_vec , wrap_json_file_get_real_vec , json_file_get_logical_vec , wrap_json_file_get_logical_vec , json_file_get_string_vec , wrap_json_file_get_string_vec , json_file_get_alloc_string_vec , wrap_json_file_get_alloc_string_vec , json_file_get_root Get a variable from a json_file , by specifying the path. private subroutine json_file_get_object (me, path, p, found) Author Jacob Williams Date 2/3/2014 Get a json_value pointer to an object from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(out), pointer :: p pointer to the variable logical(kind=LK), intent(out), optional :: found if it was really found private subroutine wrap_json_file_get_object (me, path, p, found) Alternate version of json_file_get_object , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(out), pointer :: p pointer to the variable logical(kind=LK), intent(out), optional :: found if it was really found private subroutine json_file_get_integer (me, path, val, found, default) Author Jacob Williams Date 12/9/2013 Get an integer value from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found integer(kind=IK), intent(in), optional :: default private subroutine wrap_json_file_get_integer (me, path, val, found, default) Alternate version of json_file_get_integer , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found integer(kind=IK), intent(in), optional :: default private subroutine json_file_get_real32 (me, path, val, found, default) Author Jacob Williams Date 1/21/2019 Alternate version of json_file_get_real where val is real32 . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found real(kind=real32), intent(in), optional :: default private subroutine wrap_json_file_get_real32 (me, path, val, found, default) Alternate version of json_file_get_real32 , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found real(kind=real32), intent(in), optional :: default private subroutine json_file_get_real (me, path, val, found, default) Author Jacob Williams Date 12/9/2013 Get a real(RK) variable value from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found real(kind=RK), intent(in), optional :: default private subroutine wrap_json_file_get_real (me, path, val, found, default) Alternate version of json_file_get_real , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found real(kind=RK), intent(in), optional :: default private subroutine json_file_get_logical (me, path, val, found, default) Author Jacob Williams Date 12/9/2013 Get a logical(LK) value from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found logical(kind=LK), intent(in), optional :: default private subroutine wrap_json_file_get_logical (me, path, val, found, default) Alternate version of json_file_get_logical , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found logical(kind=LK), intent(in), optional :: default private subroutine json_file_get_string (me, path, val, found, default) Author Jacob Williams Date 12/9/2013 Get a character string from a json file.\nThe output val is an allocatable character string. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=:), intent(out), allocatable :: val value logical(kind=LK), intent(out), optional :: found if it was really found character(kind=CK, len=*), intent(in), optional :: default private subroutine wrap_json_file_get_string (me, path, val, found, default) Alternate version of json_file_get_string , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=:), intent(out), allocatable :: val value logical(kind=LK), intent(out), optional :: found if it was really found character(kind=CK, len=*), intent(in), optional :: default private subroutine json_file_get_integer_vec (me, path, vec, found, default) Author Jacob Williams Date 1/20/2014 Get an integer vector from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found integer(kind=IK), intent(in), optional, dimension(:) :: default private subroutine wrap_json_file_get_integer_vec (me, path, vec, found, default) Alternate version of json_file_get_integer_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found integer(kind=IK), intent(in), optional, dimension(:) :: default private subroutine json_file_get_real32_vec (me, path, vec, found, default) Author Jacob Williams Date 1/21/2019 Alternate version of json_file_get_real_vec where vec is real32 . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found real(kind=real32), intent(in), optional, dimension(:) :: default private subroutine wrap_json_file_get_real32_vec (me, path, vec, found, default) Alternate version of json_file_get_real32_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found real(kind=real32), intent(in), optional, dimension(:) :: default private subroutine json_file_get_real_vec (me, path, vec, found, default) Author Jacob Williams Date 1/19/2014 Get a real(RK) vector from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found real(kind=RK), intent(in), optional, dimension(:) :: default private subroutine wrap_json_file_get_real_vec (me, path, vec, found, default) Alternate version of json_file_get_real_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found real(kind=RK), intent(in), optional, dimension(:) :: default private subroutine json_file_get_logical_vec (me, path, vec, found, default) Author Jacob Williams Date 1/20/2014 Get a logical(LK) vector from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found logical(kind=LK), intent(in), optional, dimension(:) :: default private subroutine wrap_json_file_get_logical_vec (me, path, vec, found, default) Alternate version of json_file_get_logical_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found logical(kind=LK), intent(in), optional, dimension(:) :: default private subroutine json_file_get_string_vec (me, path, vec, found, default) Author Jacob Williams Date 1/19/2014 Get a string vector from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec value vector logical(kind=LK), intent(out), optional :: found if it was really found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default private subroutine wrap_json_file_get_string_vec (me, path, vec, found, default) Alternate version of json_file_get_string_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec value vector logical(kind=LK), intent(out), optional :: found if it was really found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default private subroutine json_file_get_alloc_string_vec (me, path, vec, ilen, found, default, default_ilen) Author Jacob Williams Date 12/17/2016 Get an (allocatable length) string vector from a JSON file.\nThis is just a wrapper for json_get_alloc_string_vec_by_path . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec value vector integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default integer(kind=IK), intent(in), optional, dimension(:) :: default_ilen the actual\nlength of default private subroutine wrap_json_file_get_alloc_string_vec (me, path, vec, ilen, found, default, default_ilen) Alternate version of json_file_get_alloc_string_vec , where “path” is kind=CDK.\nThis is just a wrapper for wrap_json_get_alloc_string_vec_by_path . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec value vector integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default integer(kind=IK), intent(in), optional, dimension(:) :: default_ilen the actual\nlength of default private subroutine json_file_get_root (me, p) Author Izaak Beekman Date 7/23/2015 Get a json_value pointer to the JSON file root. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me type( json_value ), intent(out), pointer :: p pointer to the variable procedure, public :: get_core => get_json_core_in_file private subroutine get_json_core_in_file (me, core) Get a copy of the json_core in this json_file . Arguments Type Intent Optional Attributes Name class( json_file ), intent(in) :: me type( json_core ), intent(out) :: core generic, public :: info => json_file_variable_info , wrap_json_file_variable_info private subroutine json_file_variable_info (me, path, found, var_type, n_children, name) Author Jacob Williams Date 2/3/2014 Returns information about a variable in a json_file . Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path path to the variable logical(kind=LK), intent(out), optional :: found the variable exists in the structure integer(kind=IK), intent(out), optional :: var_type variable type integer(kind=IK), intent(out), optional :: n_children number of children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name private subroutine wrap_json_file_variable_info (me, path, found, var_type, n_children, name) Alternate version of json_file_variable_info , where “path” is kind=CDK. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(out), optional :: var_type integer(kind=IK), intent(out), optional :: n_children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name generic, public :: initialize => initialize_json_core_in_file , set_json_core_in_file private subroutine initialize_json_core_in_file (me, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) Initialize the json_core for this json_file .\n This is just a wrapper for json_initialize . Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) private subroutine set_json_core_in_file (me, core) Set the json_core for this json_file . Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me type( json_core ), intent(in) :: core procedure, public :: initialize_json_core_in_file private subroutine initialize_json_core_in_file (me, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) Initialize the json_core for this json_file .\n This is just a wrapper for json_initialize . Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) procedure, public :: json_file_add private subroutine json_file_add (me, p, destroy_original) Author Jacob Williams Add a json_value pointer as the root object to a JSON file. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me type( json_value ), intent(in), pointer :: p pointer to the variable to add logical(kind=LK), intent(in), optional :: destroy_original if the file currently contains\nan associated pointer, it is\ndestroyed. [Default is True] procedure, public :: json_file_add_integer private subroutine json_file_add_integer (me, path, val, found, was_created) Author Jacob Williams Add an integer value to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: json_file_add_integer_vec private subroutine json_file_add_integer_vec (me, path, vec, found, was_created) Author Jacob Williams Add an integer vector to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: json_file_add_logical private subroutine json_file_add_logical (me, path, val, found, was_created) Author Jacob Williams Add a logical(LK) value to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: json_file_add_logical_vec private subroutine json_file_add_logical_vec (me, path, vec, found, was_created) Author Jacob Williams Add a logical(LK) vector to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: json_file_add_object private subroutine json_file_add_object (me, path, p, found, was_created) Author Jacob Williams Add a json_value pointer to an object to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(in), pointer :: p pointer to the variable to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: json_file_add_real private subroutine json_file_add_real (me, path, val, found, was_created) Author Jacob Williams Add a real(RK) variable value to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: json_file_add_real32 private subroutine json_file_add_real32 (me, path, val, found, was_created) Author Jacob Williams Alternate version of json_file_add_real where val is real32 . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: json_file_add_real32_vec private subroutine json_file_add_real32_vec (me, path, vec, found, was_created) Author Jacob Williams Alternate version of json_file_add_real_vec where vec is real32 . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: json_file_add_real_vec private subroutine json_file_add_real_vec (me, path, vec, found, was_created) Author Jacob Williams Add a real(RK) vector to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: json_file_add_string private subroutine json_file_add_string (me, path, val, found, was_created, trim_str, adjustl_str) Author Jacob Williams Add a character string to a json file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) procedure, public :: json_file_add_string_path_ascii private subroutine json_file_add_string_path_ascii (me, path, val, found, was_created, trim_str, adjustl_str) Author Jacob Williams Wrapper for json_file_add_string where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) procedure, public :: json_file_add_string_value_ascii private subroutine json_file_add_string_value_ascii (me, path, val, found, was_created, trim_str, adjustl_str) Author Jacob Williams Wrapper for json_file_add_string where “val” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) procedure, public :: json_file_add_string_vec private subroutine json_file_add_string_vec (me, path, vec, found, was_created, ilen, trim_str, adjustl_str) Author Jacob Williams Add a string vector to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element\n(note that ADJUSTL is done before TRIM) procedure, public :: json_file_add_string_vec_path_ascii private subroutine json_file_add_string_vec_path_ascii (me, path, vec, found, was_created, ilen, trim_str, adjustl_str) Author Jacob Williams Alternate version of json_file_add_string_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element\n(note that ADJUSTL is done before TRIM) procedure, public :: json_file_add_string_vec_vec_ascii private subroutine json_file_add_string_vec_vec_ascii (me, path, vec, found, was_created, ilen, trim_str, adjustl_str) Author Jacob Williams Alternate version of json_file_add_string_vec , where “vec” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element\n(note that ADJUSTL is done before TRIM) procedure, public :: json_file_get_alloc_string_vec private subroutine json_file_get_alloc_string_vec (me, path, vec, ilen, found, default, default_ilen) Author Jacob Williams Date 12/17/2016 Get an (allocatable length) string vector from a JSON file.\nThis is just a wrapper for json_get_alloc_string_vec_by_path . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec value vector integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default integer(kind=IK), intent(in), optional, dimension(:) :: default_ilen the actual\nlength of default procedure, public :: json_file_get_integer private subroutine json_file_get_integer (me, path, val, found, default) Author Jacob Williams Date 12/9/2013 Get an integer value from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found integer(kind=IK), intent(in), optional :: default procedure, public :: json_file_get_integer_vec private subroutine json_file_get_integer_vec (me, path, vec, found, default) Author Jacob Williams Date 1/20/2014 Get an integer vector from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found integer(kind=IK), intent(in), optional, dimension(:) :: default procedure, public :: json_file_get_logical private subroutine json_file_get_logical (me, path, val, found, default) Author Jacob Williams Date 12/9/2013 Get a logical(LK) value from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found logical(kind=LK), intent(in), optional :: default procedure, public :: json_file_get_logical_vec private subroutine json_file_get_logical_vec (me, path, vec, found, default) Author Jacob Williams Date 1/20/2014 Get a logical(LK) vector from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found logical(kind=LK), intent(in), optional, dimension(:) :: default procedure, public :: json_file_get_object private subroutine json_file_get_object (me, path, p, found) Author Jacob Williams Date 2/3/2014 Get a json_value pointer to an object from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(out), pointer :: p pointer to the variable logical(kind=LK), intent(out), optional :: found if it was really found procedure, public :: json_file_get_real private subroutine json_file_get_real (me, path, val, found, default) Author Jacob Williams Date 12/9/2013 Get a real(RK) variable value from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found real(kind=RK), intent(in), optional :: default procedure, public :: json_file_get_real32 private subroutine json_file_get_real32 (me, path, val, found, default) Author Jacob Williams Date 1/21/2019 Alternate version of json_file_get_real where val is real32 . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found real(kind=real32), intent(in), optional :: default procedure, public :: json_file_get_real32_vec private subroutine json_file_get_real32_vec (me, path, vec, found, default) Author Jacob Williams Date 1/21/2019 Alternate version of json_file_get_real_vec where vec is real32 . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found real(kind=real32), intent(in), optional, dimension(:) :: default procedure, public :: json_file_get_real_vec private subroutine json_file_get_real_vec (me, path, vec, found, default) Author Jacob Williams Date 1/19/2014 Get a real(RK) vector from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found real(kind=RK), intent(in), optional, dimension(:) :: default procedure, public :: json_file_get_root private subroutine json_file_get_root (me, p) Author Izaak Beekman Date 7/23/2015 Get a json_value pointer to the JSON file root. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me type( json_value ), intent(out), pointer :: p pointer to the variable procedure, public :: json_file_get_string private subroutine json_file_get_string (me, path, val, found, default) Author Jacob Williams Date 12/9/2013 Get a character string from a json file.\nThe output val is an allocatable character string. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=:), intent(out), allocatable :: val value logical(kind=LK), intent(out), optional :: found if it was really found character(kind=CK, len=*), intent(in), optional :: default procedure, public :: json_file_get_string_vec private subroutine json_file_get_string_vec (me, path, vec, found, default) Author Jacob Williams Date 1/19/2014 Get a string vector from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec value vector logical(kind=LK), intent(out), optional :: found if it was really found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default procedure, public :: json_file_load_from_string private subroutine json_file_load_from_string (me, str, destroy_pointer) Author Jacob Williams Date 1/13/2015 Load the JSON data from a string. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: str string to load JSON data from logical(kind=LK), intent(in), optional :: destroy_pointer destroy the pointer before\nloading (default is True) procedure, public :: json_file_print_to_console private subroutine json_file_print_to_console (me) Author Jacob Williams Date 1/11/2015 Print the JSON file to the console. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me procedure, public :: json_file_print_to_filename private subroutine json_file_print_to_filename (me, filename) Author Jacob Williams Date 1/11/2015 Print the JSON structure to the specified filename.\n The file is opened, printed, and then closed. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: filename filename to print to procedure, public :: json_file_print_to_unit private subroutine json_file_print_to_unit (me, iunit) Author Jacob Williams Date 12/9/2013 Prints the JSON file to the specified file unit number. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me integer(kind=IK), intent(in) :: iunit file unit number (must not be -1) procedure, public :: json_file_remove private subroutine json_file_remove (me, path) Author Jacob Williams Date 7/7/2018 Remove a variable from a JSON file. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable procedure, public :: json_file_rename private subroutine json_file_rename (me, path, name, found) Author Jacob Williams Rename a variable in a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if the variable was found procedure, public :: json_file_rename_name_ascii private subroutine json_file_rename_name_ascii (me, path, name, found) Author Jacob Williams Wrapper for json_file_rename where “name” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if the variable was found procedure, public :: json_file_rename_path_ascii private subroutine json_file_rename_path_ascii (me, path, name, found) Author Jacob Williams Wrapper for json_file_rename where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if the variable was found procedure, public :: json_file_update_integer private subroutine json_file_update_integer (me, path, val, found) Author Jacob Williams Date 1/10/2015 Given the path string, if the variable is present in the file,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path integer(kind=IK), intent(in) :: val logical(kind=LK), intent(out) :: found procedure, public :: json_file_update_logical private subroutine json_file_update_logical (me, path, val, found) Author Jacob Williams Date 1/10/2015 Given the path string, if the variable is present in the file,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path logical(kind=LK), intent(in) :: val logical(kind=LK), intent(out) :: found procedure, public :: json_file_update_real private subroutine json_file_update_real (me, path, val, found) Author Jacob Williams Date 1/10/2015 Given the path string, if the variable is present in the file,\nand is a scalar, then update its value.\nIf it is not present, then create it and set its value. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path real(kind=RK), intent(in) :: val logical(kind=LK), intent(out) :: found procedure, public :: json_file_update_real32 private subroutine json_file_update_real32 (me, path, val, found) Author Jacob Williams Date 1/21/2019 Alternate version of json_file_update_real where val is real32 . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path real(kind=real32), intent(in) :: val logical(kind=LK), intent(out) :: found procedure, public :: json_file_update_string private subroutine json_file_update_string (me, path, val, found, trim_str, adjustl_str) Author Jacob Williams Date 1/10/2015 Given the path string, if the variable is present in the file,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path character(kind=CK, len=*), intent(in) :: val logical(kind=LK), intent(out) :: found logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) procedure, public :: json_file_update_string_name_ascii private subroutine json_file_update_string_name_ascii (me, path, val, found, trim_str, adjustl_str) Alternate version of json_file_update_string , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=*), intent(in) :: val logical(kind=LK), intent(out) :: found logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) procedure, public :: json_file_update_string_val_ascii private subroutine json_file_update_string_val_ascii (me, path, val, found, trim_str, adjustl_str) Alternate version of json_file_update_string , where “val” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path character(kind=CDK, len=*), intent(in) :: val logical(kind=LK), intent(out) :: found logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) procedure, public :: json_file_valid_path private function json_file_valid_path (me, path) result(found) Author Jacob Williams Returns true if the path is present in the JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable Return Value logical(kind=LK) if the variable was found procedure, public, pass(me) :: json_file_valid_path_op private function json_file_valid_path_op (path, me) result(found) Author Jacob Williams A wrapper for json_file_valid_path for the .in. operator Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: path the path to the variable class( json_file ), intent(in) :: me the JSON file Return Value logical(kind=LK) if the variable was found procedure, public :: json_file_variable_info private subroutine json_file_variable_info (me, path, found, var_type, n_children, name) Author Jacob Williams Date 2/3/2014 Returns information about a variable in a json_file . Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path path to the variable logical(kind=LK), intent(out), optional :: found the variable exists in the structure integer(kind=IK), intent(out), optional :: var_type variable type integer(kind=IK), intent(out), optional :: n_children number of children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name procedure, public :: json_file_variable_matrix_info private subroutine json_file_variable_matrix_info (me, path, is_matrix, found, var_type, n_sets, set_size, name) Author Jacob Williams Date 6/26/2016 Returns matrix information about a variable in a json_file . Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, 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\nthe matrix (if all elements have\nthe same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name procedure, public :: load => json_file_load Load JSON from a file. private subroutine json_file_load (me, filename, unit, destroy_pointer) Author Jacob Williams Date 12/9/2013 Load the JSON data from a file. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: filename the filename to open integer(kind=IK), intent(in), optional :: unit the unit number to use\n(if not present, a newunit\nis used) logical(kind=LK), intent(in), optional :: destroy_pointer destroy the pointer before\nloading (default is True) procedure, public :: load_file => json_file_load The same as load , but only here for backward compatibility private subroutine json_file_load (me, filename, unit, destroy_pointer) Author Jacob Williams Date 12/9/2013 Load the JSON data from a file. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: filename the filename to open integer(kind=IK), intent(in), optional :: unit the unit number to use\n(if not present, a newunit\nis used) logical(kind=LK), intent(in), optional :: destroy_pointer destroy the pointer before\nloading (default is True) generic, public :: load_from_string => json_file_load_from_string , wrap_json_file_load_from_string The same as deserialize , but only here for backward compatibility private subroutine json_file_load_from_string (me, str, destroy_pointer) Author Jacob Williams Date 1/13/2015 Load the JSON data from a string. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: str string to load JSON data from logical(kind=LK), intent(in), optional :: destroy_pointer destroy the pointer before\nloading (default is True) private subroutine wrap_json_file_load_from_string (me, str) Alternate version of json_file_load_from_string , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: str generic, public :: matrix_info => json_file_variable_matrix_info , wrap_json_file_variable_matrix_info private subroutine json_file_variable_matrix_info (me, path, is_matrix, found, var_type, n_sets, set_size, name) Author Jacob Williams Date 6/26/2016 Returns matrix information about a variable in a json_file . Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, 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\nthe matrix (if all elements have\nthe same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name private subroutine wrap_json_file_variable_matrix_info (me, path, is_matrix, found, var_type, n_sets, set_size, name) Alternate version of json_file_variable_matrix_info , where “path” is kind=CDK. Read more… Arguments 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\nthe matrix (if all elements have\nthe same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name procedure, public :: move => json_file_move_pointer private subroutine json_file_move_pointer (to, from) Author Jacob Williams Date 12/5/2014 Move the json_value pointer from one json_file to another.\n The “from” pointer is then nullified, but not destroyed. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: to class( json_file ), intent(inout) :: from procedure, public :: nullify => json_file_nullify private subroutine json_file_nullify (me) Author Jacob Williams Nullify the json_value pointer in a json_file ,\n but do not destroy it. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me generic, public :: operator(.in.) => json_file_valid_path_op , wrap_json_file_valid_path_op private function json_file_valid_path_op (path, me) result(found) Author Jacob Williams A wrapper for json_file_valid_path for the .in. operator Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: path the path to the variable class( json_file ), intent(in) :: me the JSON file Return Value logical(kind=LK) if the variable was found private function wrap_json_file_valid_path_op (path, me) result(found) Author Jacob Williams Alternate version of json_file_valid_path_op , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: path the path to the variable class( json_file ), intent(in) :: me the JSON file Return Value logical(kind=LK) if the variable was found generic, public :: print => json_file_print_to_console , json_file_print_to_unit , json_file_print_to_filename private subroutine json_file_print_to_console (me) Author Jacob Williams Date 1/11/2015 Print the JSON file to the console. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me private subroutine json_file_print_to_unit (me, iunit) Author Jacob Williams Date 12/9/2013 Prints the JSON file to the specified file unit number. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me integer(kind=IK), intent(in) :: iunit file unit number (must not be -1) private subroutine json_file_print_to_filename (me, filename) Author Jacob Williams Date 1/11/2015 Print the JSON structure to the specified filename.\n The file is opened, printed, and then closed. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: filename filename to print to procedure, public :: print_error_message => json_file_print_error_message private subroutine json_file_print_error_message (me, io_unit) This is a wrapper for json_print_error_message . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me integer, intent(in), optional :: io_unit generic, public :: print_file => json_file_print_to_console , json_file_print_to_unit , json_file_print_to_filename The same as print , but only here for backward compatibility private subroutine json_file_print_to_console (me) Author Jacob Williams Date 1/11/2015 Print the JSON file to the console. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me private subroutine json_file_print_to_unit (me, iunit) Author Jacob Williams Date 12/9/2013 Prints the JSON file to the specified file unit number. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me integer(kind=IK), intent(in) :: iunit file unit number (must not be -1) private subroutine json_file_print_to_filename (me, filename) Author Jacob Williams Date 1/11/2015 Print the JSON structure to the specified filename.\n The file is opened, printed, and then closed. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: filename filename to print to procedure, public :: print_to_string => json_file_print_to_string The same as serialize , but only here for backward compatibility private subroutine json_file_print_to_string (me, str) Author Jacob Williams Date 1/11/2015 Print the JSON file to a string. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=:), intent(out), allocatable :: str string to print JSON data to generic, public :: remove => json_file_remove , wrap_json_file_remove Remove a variable from a json_file by specifying the path. private subroutine json_file_remove (me, path) Author Jacob Williams Date 7/7/2018 Remove a variable from a JSON file. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable private subroutine wrap_json_file_remove (me, path) Alternate version of json_file_remove , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable generic, public :: rename => json_file_rename , wrap_json_file_rename Rename a variable, specifying it by path private subroutine json_file_rename (me, path, name, found) Author Jacob Williams Rename a variable in a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if the variable was found private subroutine wrap_json_file_rename (me, path, name, found) Author Jacob Williams Alternate version of json_file_rename , where “path” and “name” are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if the variable was found generic, public :: rename => json_file_rename_path_ascii , json_file_rename_name_ascii private subroutine json_file_rename_path_ascii (me, path, name, found) Author Jacob Williams Wrapper for json_file_rename where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if the variable was found private subroutine json_file_rename_name_ascii (me, path, name, found) Author Jacob Williams Wrapper for json_file_rename where “name” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if the variable was found procedure, public :: serialize => json_file_print_to_string Print the json_value structure to an allocatable string private subroutine json_file_print_to_string (me, str) Author Jacob Williams Date 1/11/2015 Print the JSON file to a string. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=:), intent(out), allocatable :: str string to print JSON data to procedure, public :: set_json_core_in_file private subroutine set_json_core_in_file (me, core) Set the json_core for this json_file . Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me type( json_core ), intent(in) :: core procedure, public :: traverse => json_file_traverse private subroutine json_file_traverse (me, traverse_callback) Author Jacob Williams Date 6/11/2016 Traverse the JSON structure in the file.\nThis routine calls the user-specified json_traverse_callback_func for each element of the structure. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me procedure( json_traverse_callback_func ) :: traverse_callback generic, public :: update => json_file_update_integer , wrap_json_file_update_integer , json_file_update_logical , wrap_json_file_update_logical , json_file_update_real32 , wrap_json_file_update_real32 , json_file_update_real , wrap_json_file_update_real , json_file_update_string , wrap_json_file_update_string Update a scalar variable in a json_file ,\n by specifying the path. Note These have been mostly supplanted by the add methods, which do a similar thing (and can be used for\n scalars and vectors, etc.) private subroutine json_file_update_integer (me, path, val, found) Author Jacob Williams Date 1/10/2015 Given the path string, if the variable is present in the file,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path integer(kind=IK), intent(in) :: val logical(kind=LK), intent(out) :: found private subroutine wrap_json_file_update_integer (me, path, val, found) Alternate version of json_file_update_integer , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path integer(kind=IK), intent(in) :: val logical(kind=LK), intent(out) :: found private subroutine json_file_update_logical (me, path, val, found) Author Jacob Williams Date 1/10/2015 Given the path string, if the variable is present in the file,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path logical(kind=LK), intent(in) :: val logical(kind=LK), intent(out) :: found private subroutine wrap_json_file_update_logical (me, path, val, found) Alternate version of json_file_update_logical , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path logical(kind=LK), intent(in) :: val logical(kind=LK), intent(out) :: found private subroutine json_file_update_real32 (me, path, val, found) Author Jacob Williams Date 1/21/2019 Alternate version of json_file_update_real where val is real32 . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path real(kind=real32), intent(in) :: val logical(kind=LK), intent(out) :: found private subroutine wrap_json_file_update_real32 (me, path, val, found) Alternate version of json_file_update_real32 , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path real(kind=real32), intent(in) :: val logical(kind=LK), intent(out) :: found private subroutine json_file_update_real (me, path, val, found) Author Jacob Williams Date 1/10/2015 Given the path string, if the variable is present in the file,\nand is a scalar, then update its value.\nIf it is not present, then create it and set its value. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path real(kind=RK), intent(in) :: val logical(kind=LK), intent(out) :: found private subroutine wrap_json_file_update_real (me, path, val, found) Alternate version of json_file_update_real , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path real(kind=RK), intent(in) :: val logical(kind=LK), intent(out) :: found private subroutine json_file_update_string (me, path, val, found, trim_str, adjustl_str) Author Jacob Williams Date 1/10/2015 Given the path string, if the variable is present in the file,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path character(kind=CK, len=*), intent(in) :: val logical(kind=LK), intent(out) :: found logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) private subroutine wrap_json_file_update_string (me, path, val, found, trim_str, adjustl_str) Alternate version of json_file_update_string , where “path” and “val” are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CDK, len=*), intent(in) :: val logical(kind=LK), intent(out) :: found logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) generic, public :: update => json_file_update_string_name_ascii , json_file_update_string_val_ascii private subroutine json_file_update_string_name_ascii (me, path, val, found, trim_str, adjustl_str) Alternate version of json_file_update_string , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=*), intent(in) :: val logical(kind=LK), intent(out) :: found logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) private subroutine json_file_update_string_val_ascii (me, path, val, found, trim_str, adjustl_str) Alternate version of json_file_update_string , where “val” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path character(kind=CDK, len=*), intent(in) :: val logical(kind=LK), intent(out) :: found logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) generic, public :: valid_path => json_file_valid_path , wrap_json_file_valid_path Verify that a path is valid\n(i.e., a variable with this path exists in the file). private function json_file_valid_path (me, path) result(found) Author Jacob Williams Returns true if the path is present in the JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable Return Value logical(kind=LK) if the variable was found private function wrap_json_file_valid_path (me, path) result(found) Author Jacob Williams Alternate version of json_file_valid_path , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable Return Value logical(kind=LK) if the variable was found procedure, public :: wrap_assign_string_to_json_file private subroutine wrap_assign_string_to_json_file (me, str) Author Jacob Williams Alternate version of assign_string_to_json_file , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: str procedure, public :: wrap_json_file_add_integer private subroutine wrap_json_file_add_integer (me, path, val, found, was_created) Author Jacob Williams Alternate version of json_file_add_integer , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: wrap_json_file_add_integer_vec private subroutine wrap_json_file_add_integer_vec (me, path, vec, found, was_created) Author Jacob Williams Alternate version of json_file_add_integer_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: wrap_json_file_add_logical private subroutine wrap_json_file_add_logical (me, path, val, found, was_created) Author Jacob Williams Alternate version of json_file_add_logical , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: wrap_json_file_add_logical_vec private subroutine wrap_json_file_add_logical_vec (me, path, vec, found, was_created) Author Jacob Williams Alternate version of json_file_add_logical_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: wrap_json_file_add_object private subroutine wrap_json_file_add_object (me, path, p, found, was_created) Author Jacob Williams Alternate version of json_file_add_object , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(in), pointer :: p pointer to the variable to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: wrap_json_file_add_real private subroutine wrap_json_file_add_real (me, path, val, found, was_created) Author Jacob Williams Alternate version of json_file_add_real , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: wrap_json_file_add_real32 private subroutine wrap_json_file_add_real32 (me, path, val, found, was_created) Author Jacob Williams Alternate version of json_file_add_real32 , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: wrap_json_file_add_real32_vec private subroutine wrap_json_file_add_real32_vec (me, path, vec, found, was_created) Author Jacob Williams Alternate version of json_file_add_real32_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: wrap_json_file_add_real_vec private subroutine wrap_json_file_add_real_vec (me, path, vec, found, was_created) Author Jacob Williams Alternate version of json_file_add_real_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: wrap_json_file_add_string private subroutine wrap_json_file_add_string (me, path, val, found, was_created, trim_str, adjustl_str) Author Jacob Williams Alternate version of json_file_add_string , where “path” and “val” are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) procedure, public :: wrap_json_file_add_string_vec private subroutine wrap_json_file_add_string_vec (me, path, vec, found, was_created, ilen, trim_str, adjustl_str) Author Jacob Williams Alternate version of json_file_add_string_vec , where “path” and “vec” are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element\n(note that ADJUSTL is done before TRIM) procedure, public :: wrap_json_file_get_alloc_string_vec private subroutine wrap_json_file_get_alloc_string_vec (me, path, vec, ilen, found, default, default_ilen) Alternate version of json_file_get_alloc_string_vec , where “path” is kind=CDK.\nThis is just a wrapper for wrap_json_get_alloc_string_vec_by_path . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec value vector integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default integer(kind=IK), intent(in), optional, dimension(:) :: default_ilen the actual\nlength of default procedure, public :: wrap_json_file_get_integer private subroutine wrap_json_file_get_integer (me, path, val, found, default) Alternate version of json_file_get_integer , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found integer(kind=IK), intent(in), optional :: default procedure, public :: wrap_json_file_get_integer_vec private subroutine wrap_json_file_get_integer_vec (me, path, vec, found, default) Alternate version of json_file_get_integer_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found integer(kind=IK), intent(in), optional, dimension(:) :: default procedure, public :: wrap_json_file_get_logical private subroutine wrap_json_file_get_logical (me, path, val, found, default) Alternate version of json_file_get_logical , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found logical(kind=LK), intent(in), optional :: default procedure, public :: wrap_json_file_get_logical_vec private subroutine wrap_json_file_get_logical_vec (me, path, vec, found, default) Alternate version of json_file_get_logical_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found logical(kind=LK), intent(in), optional, dimension(:) :: default procedure, public :: wrap_json_file_get_object private subroutine wrap_json_file_get_object (me, path, p, found) Alternate version of json_file_get_object , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(out), pointer :: p pointer to the variable logical(kind=LK), intent(out), optional :: found if it was really found procedure, public :: wrap_json_file_get_real private subroutine wrap_json_file_get_real (me, path, val, found, default) Alternate version of json_file_get_real , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found real(kind=RK), intent(in), optional :: default procedure, public :: wrap_json_file_get_real32 private subroutine wrap_json_file_get_real32 (me, path, val, found, default) Alternate version of json_file_get_real32 , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found real(kind=real32), intent(in), optional :: default procedure, public :: wrap_json_file_get_real32_vec private subroutine wrap_json_file_get_real32_vec (me, path, vec, found, default) Alternate version of json_file_get_real32_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found real(kind=real32), intent(in), optional, dimension(:) :: default procedure, public :: wrap_json_file_get_real_vec private subroutine wrap_json_file_get_real_vec (me, path, vec, found, default) Alternate version of json_file_get_real_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found real(kind=RK), intent(in), optional, dimension(:) :: default procedure, public :: wrap_json_file_get_string private subroutine wrap_json_file_get_string (me, path, val, found, default) Alternate version of json_file_get_string , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=:), intent(out), allocatable :: val value logical(kind=LK), intent(out), optional :: found if it was really found character(kind=CK, len=*), intent(in), optional :: default procedure, public :: wrap_json_file_get_string_vec private subroutine wrap_json_file_get_string_vec (me, path, vec, found, default) Alternate version of json_file_get_string_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec value vector logical(kind=LK), intent(out), optional :: found if it was really found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default procedure, public :: wrap_json_file_load_from_string private subroutine wrap_json_file_load_from_string (me, str) Alternate version of json_file_load_from_string , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: str procedure, public :: wrap_json_file_remove private subroutine wrap_json_file_remove (me, path) Alternate version of json_file_remove , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable procedure, public :: wrap_json_file_rename private subroutine wrap_json_file_rename (me, path, name, found) Author Jacob Williams Alternate version of json_file_rename , where “path” and “name” are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if the variable was found procedure, public :: wrap_json_file_update_integer private subroutine wrap_json_file_update_integer (me, path, val, found) Alternate version of json_file_update_integer , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path integer(kind=IK), intent(in) :: val logical(kind=LK), intent(out) :: found procedure, public :: wrap_json_file_update_logical private subroutine wrap_json_file_update_logical (me, path, val, found) Alternate version of json_file_update_logical , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path logical(kind=LK), intent(in) :: val logical(kind=LK), intent(out) :: found procedure, public :: wrap_json_file_update_real private subroutine wrap_json_file_update_real (me, path, val, found) Alternate version of json_file_update_real , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path real(kind=RK), intent(in) :: val logical(kind=LK), intent(out) :: found procedure, public :: wrap_json_file_update_real32 private subroutine wrap_json_file_update_real32 (me, path, val, found) Alternate version of json_file_update_real32 , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path real(kind=real32), intent(in) :: val logical(kind=LK), intent(out) :: found procedure, public :: wrap_json_file_update_string private subroutine wrap_json_file_update_string (me, path, val, found, trim_str, adjustl_str) Alternate version of json_file_update_string , where “path” and “val” are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CDK, len=*), intent(in) :: val logical(kind=LK), intent(out) :: found logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) procedure, public :: wrap_json_file_valid_path private function wrap_json_file_valid_path (me, path) result(found) Author Jacob Williams Alternate version of json_file_valid_path , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable Return Value logical(kind=LK) if the variable was found procedure, public, pass(me) :: wrap_json_file_valid_path_op private function wrap_json_file_valid_path_op (path, me) result(found) Author Jacob Williams Alternate version of json_file_valid_path_op , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: path the path to the variable class( json_file ), intent(in) :: me the JSON file Return Value logical(kind=LK) if the variable was found procedure, public :: wrap_json_file_variable_info private subroutine wrap_json_file_variable_info (me, path, found, var_type, n_children, name) Alternate version of json_file_variable_info , where “path” is kind=CDK. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(out), optional :: var_type integer(kind=IK), intent(out), optional :: n_children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name procedure, public :: wrap_json_file_variable_matrix_info private subroutine wrap_json_file_variable_matrix_info (me, path, is_matrix, found, var_type, n_sets, set_size, name) Alternate version of json_file_variable_matrix_info , where “path” is kind=CDK. Read more… Arguments 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\nthe matrix (if all elements have\nthe same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name Source Code type , public :: json_file private type ( json_core ) :: core !! The instance of the [[json_core(type)]] !! factory used for this file. type ( json_value ), pointer :: p => null () !! the JSON structure read from the file contains generic , public :: initialize => initialize_json_core_in_file ,& set_json_core_in_file procedure , public :: get_core => get_json_core_in_file !> ! Load JSON from a file. procedure , public :: load => json_file_load !> ! The same as `load`, but only here for backward compatibility procedure , public :: load_file => json_file_load !> ! Load JSON from a string. generic , public :: deserialize => MAYBEWRAP ( json_file_load_from_string ) !> ! The same as `deserialize`, but only here for backward compatibility generic , public :: load_from_string => MAYBEWRAP ( json_file_load_from_string ) !> ! Print the [[json_value]] structure to an allocatable string procedure , public :: serialize => json_file_print_to_string !> ! The same as `serialize`, but only here for backward compatibility procedure , public :: print_to_string => json_file_print_to_string procedure , public :: destroy => json_file_destroy procedure , public :: nullify => json_file_nullify procedure , public :: move => json_file_move_pointer generic , public :: info => MAYBEWRAP ( json_file_variable_info ) generic , public :: matrix_info => MAYBEWRAP ( json_file_variable_matrix_info ) !error checking: procedure , public :: failed => json_file_failed procedure , public :: print_error_message => json_file_print_error_message procedure , public :: check_for_errors => json_file_check_for_errors procedure , public :: clear_exceptions => json_file_clear_exceptions generic , public :: print => json_file_print_to_console , & json_file_print_to_unit , & json_file_print_to_filename !> ! The same as `print`, but only here for backward compatibility generic , public :: print_file => json_file_print_to_console , & json_file_print_to_unit , & json_file_print_to_filename !> ! Rename a variable, specifying it by path generic , public :: rename => MAYBEWRAP ( json_file_rename ) #ifdef USE_UCS4 generic , public :: rename => json_file_rename_path_ascii , & json_file_rename_name_ascii #endif !> ! Verify that a path is valid ! (i.e., a variable with this path exists in the file). generic , public :: valid_path => MAYBEWRAP ( json_file_valid_path ) !> ! Get a variable from a [[json_file(type)]], by specifying the path. generic , public :: get => MAYBEWRAP ( json_file_get_object ), & MAYBEWRAP ( json_file_get_integer ), & #ifndef REAL32 MAYBEWRAP ( json_file_get_real32 ), & #endif MAYBEWRAP ( json_file_get_real ), & #ifdef REAL128 MAYBEWRAP ( json_file_get_real64 ), & #endif MAYBEWRAP ( json_file_get_logical ), & MAYBEWRAP ( json_file_get_string ), & MAYBEWRAP ( json_file_get_integer_vec ), & #ifndef REAL32 MAYBEWRAP ( json_file_get_real32_vec ), & #endif MAYBEWRAP ( json_file_get_real_vec ), & #ifdef REAL128 MAYBEWRAP ( json_file_get_real64_vec ), & #endif MAYBEWRAP ( json_file_get_logical_vec ), & MAYBEWRAP ( json_file_get_string_vec ), & MAYBEWRAP ( json_file_get_alloc_string_vec ), & json_file_get_root !> ! Add a variable to a [[json_file(type)]], by specifying the path. ! !### Example ! !```fortran ! program test ! use json_module, rk=>json_rk, ik=>json_ik ! implicit none ! type(json_file) :: f ! call f%initialize() ! specify whatever init options you want. ! call f%add('inputs.t', 0.0_rk) ! call f%add('inputs.x', [1.0_rk,2.0_rk,3.0_rk]) ! call f%add('inputs.flag', .true.) ! call f%print() ! print to the console ! end program test !``` generic , public :: add => json_file_add , & MAYBEWRAP ( json_file_add_object ), & MAYBEWRAP ( json_file_add_integer ), & #ifndef REAL32 MAYBEWRAP ( json_file_add_real32 ), & #endif MAYBEWRAP ( json_file_add_real ), & #ifdef REAL128 MAYBEWRAP ( json_file_add_real64 ), & #endif MAYBEWRAP ( json_file_add_logical ), & MAYBEWRAP ( json_file_add_string ), & MAYBEWRAP ( json_file_add_integer_vec ), & #ifndef REAL32 MAYBEWRAP ( json_file_add_real32_vec ), & #endif MAYBEWRAP ( json_file_add_real_vec ), & #ifdef REAL128 MAYBEWRAP ( json_file_add_real64_vec ), & #endif MAYBEWRAP ( json_file_add_logical_vec ), & MAYBEWRAP ( json_file_add_string_vec ) #ifdef USE_UCS4 generic , public :: add => json_file_add_string_path_ascii , & json_file_add_string_value_ascii ,& json_file_add_string_vec_path_ascii ,& json_file_add_string_vec_vec_ascii #endif !> ! Update a scalar variable in a [[json_file(type)]], ! by specifying the path. ! !@note These have been mostly supplanted by the `add` ! methods, which do a similar thing (and can be used for ! scalars and vectors, etc.) generic , public :: update => MAYBEWRAP ( json_file_update_integer ), & MAYBEWRAP ( json_file_update_logical ), & #ifndef REAL32 MAYBEWRAP ( json_file_update_real32 ), & #endif MAYBEWRAP ( json_file_update_real ), & #ifdef REAL128 MAYBEWRAP ( json_file_update_real64 ), & #endif MAYBEWRAP ( json_file_update_string ) #ifdef USE_UCS4 generic , public :: update => json_file_update_string_name_ascii , & json_file_update_string_val_ascii #endif !> ! Remove a variable from a [[json_file(type)]] ! by specifying the path. generic , public :: remove => MAYBEWRAP ( json_file_remove ) !traverse procedure , public :: traverse => json_file_traverse ! *************************************************** ! operators ! *************************************************** generic , public :: operator (. in .) => MAYBEWRAP ( json_file_valid_path_op ) procedure , pass ( me ) :: MAYBEWRAP ( json_file_valid_path_op ) generic , public :: assignment ( = ) => assign_json_file ,& assign_json_file_to_string ,& MAYBEWRAP ( assign_string_to_json_file ) procedure :: assign_json_file procedure , pass ( me ) :: assign_json_file_to_string procedure :: MAYBEWRAP ( assign_string_to_json_file ) ! *************************************************** ! private routines ! *************************************************** !load from string: procedure :: MAYBEWRAP ( json_file_load_from_string ) !initialize procedure :: initialize_json_core_in_file procedure :: set_json_core_in_file !get info: procedure :: MAYBEWRAP ( json_file_variable_info ) procedure :: MAYBEWRAP ( json_file_variable_matrix_info ) !rename: procedure :: MAYBEWRAP ( json_file_rename ) #ifdef USE_UCS4 procedure :: json_file_rename_path_ascii procedure :: json_file_rename_name_ascii #endif !validate path: procedure :: MAYBEWRAP ( json_file_valid_path ) !get: procedure :: MAYBEWRAP ( json_file_get_object ) procedure :: MAYBEWRAP ( json_file_get_integer ) #ifndef REAL32 procedure :: MAYBEWRAP ( json_file_get_real32 ) #endif procedure :: MAYBEWRAP ( json_file_get_real ) #ifdef REAL128 procedure :: MAYBEWRAP ( json_file_get_real64 ) #endif procedure :: MAYBEWRAP ( json_file_get_logical ) procedure :: MAYBEWRAP ( json_file_get_string ) procedure :: MAYBEWRAP ( json_file_get_integer_vec ) #ifndef REAL32 procedure :: MAYBEWRAP ( json_file_get_real32_vec ) #endif procedure :: MAYBEWRAP ( json_file_get_real_vec ) #ifdef REAL128 procedure :: MAYBEWRAP ( json_file_get_real64_vec ) #endif procedure :: MAYBEWRAP ( json_file_get_logical_vec ) procedure :: MAYBEWRAP ( json_file_get_string_vec ) procedure :: MAYBEWRAP ( json_file_get_alloc_string_vec ) procedure :: json_file_get_root !add: procedure :: json_file_add procedure :: MAYBEWRAP ( json_file_add_object ) procedure :: MAYBEWRAP ( json_file_add_integer ) #ifndef REAL32 procedure :: MAYBEWRAP ( json_file_add_real32 ) #endif procedure :: MAYBEWRAP ( json_file_add_real ) #ifdef REAL128 procedure :: MAYBEWRAP ( json_file_add_real64 ) #endif procedure :: MAYBEWRAP ( json_file_add_logical ) procedure :: MAYBEWRAP ( json_file_add_string ) procedure :: MAYBEWRAP ( json_file_add_integer_vec ) #ifndef REAL32 procedure :: MAYBEWRAP ( json_file_add_real32_vec ) #endif procedure :: MAYBEWRAP ( json_file_add_real_vec ) #ifdef REAL128 procedure :: MAYBEWRAP ( json_file_add_real64_vec ) #endif procedure :: MAYBEWRAP ( json_file_add_logical_vec ) procedure :: MAYBEWRAP ( json_file_add_string_vec ) #ifdef USE_UCS4 procedure :: json_file_add_string_path_ascii procedure :: json_file_add_string_value_ascii procedure :: json_file_add_string_vec_path_ascii procedure :: json_file_add_string_vec_vec_ascii #endif !update: procedure :: MAYBEWRAP ( json_file_update_integer ) procedure :: MAYBEWRAP ( json_file_update_logical ) #ifndef REAL32 procedure :: MAYBEWRAP ( json_file_update_real32 ) #endif procedure :: MAYBEWRAP ( json_file_update_real ) #ifdef REAL128 procedure :: MAYBEWRAP ( json_file_update_real64 ) #endif procedure :: MAYBEWRAP ( json_file_update_string ) #ifdef USE_UCS4 procedure :: json_file_update_string_name_ascii procedure :: json_file_update_string_val_ascii #endif !remove: procedure :: MAYBEWRAP ( json_file_remove ) !print: procedure :: json_file_print_to_console procedure :: json_file_print_to_unit procedure :: json_file_print_to_filename final :: finalize_json_file end type json_file","tags":"","loc":"type/json_file.html"},{"title":"json_core – JSON-Fortran ","text":"type, public :: json_core To access the core routines for manipulation\n of json_value pointer variables. This class allows\n for thread safe use of the module. Usage program test use json_module , wp => json_RK implicit none type ( json_core ) :: json !<--have to declare this type ( json_value ), pointer :: p call json % create_object ( p , '' ) !create the root call json % add ( p , 'year' , 1805 ) !add some data call json % add ( p , 'value' , 1.0_wp ) !add some data call json % print ( p , 'test.json' ) !write it to a file call json % destroy ( p ) !cleanup end program test Inherited by type~~json_core~~InheritedByGraph type~json_core json_core type~json_file json_file type~json_file->type~json_core core Help Graph Key Nodes of different colours represent the following: Graph Key Type Type This Page's Entity This Page's Entity Solid arrows point from a derived type to the parent type which it\nextends. Dashed arrows point from a derived type to the other\ntypes it contains as a components, with a label listing the name(s) of\nsaid component(s). Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Components Type Visibility Attributes Name Initial logical(kind=LK), private :: allow_comments = .true. if true, any comments will be ignored when\nparsing a file. The comment tokens are defined\nby the comment_char character variable. logical(kind=LK), private :: allow_duplicate_keys = .true. If False, then after parsing, if any\nduplicate keys are found, an error is\nthrown. A call to json_value_validate will also check for duplicates. If True\n[default] then no special checks are done logical(kind=LK), private :: allow_trailing_comma = .true. Allow a single trailing comma in arrays and objects. logical(kind=LK), private :: case_sensitive_keys = .true. if name and path comparisons\nare case sensitive. integer(kind=IK), private :: char_count = 0 character position in the current line character(kind=CK, len=:), private, allocatable :: chunk a chunk read from a stream file\nwhen use_unformatted_stream=True character(kind=CK, len=:), private, allocatable :: comment_char comment tokens when allow_comments is true.\nExamples: ‘ ! ’ or ‘ # ’.\nDefault is CK_'/!#' . logical(kind=LK), private :: compact_real = .true. to use the “compact” form of real\nnumbers for output logical(kind=LK), private :: compress_vectors = .false. If true, then arrays of integers,\nnulls, reals, & logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary] character(kind=CK, len=:), private, allocatable :: err_message the error message.\nif exception_thrown=False then\nthis variable is not allocated. logical(kind=LK), private :: escape_solidus = .false. If True then the solidus “ / ” is always escaped\n(“ \\/ ”) when serializing JSON .\nIf False [default], then it is not escaped.\nNote that this option does not affect parsing\n(both escaped and unescaped versions are still\nvalid in all cases). logical(kind=LK), private :: exception_thrown = .false. The error flag. Will be set to true\nwhen an error is thrown in the class.\nMany of the methods will check this\nand return immediately if it is true. integer, private :: filesize = 0 the file size when when use_unformatted_stream=True integer, private :: ichunk = 0 index in chunk for pop_char when use_unformatted_stream=True integer(kind=IK), private :: ipos = 1 for allocatable strings: next character to read logical(kind=LK), private :: is_verbose = .false. if true, all exceptions are\nimmediately printed to console. integer(kind=IK), private :: line_count = 1 lines read counter logical(kind=LK), private :: no_whitespace = .false. when printing a JSON string, don’t include\nnon-significant spaces or line breaks.\nIf true, the entire structure will be\nprinted on one line. logical(kind=LK), private :: non_normals_to_null = .false. How to serialize NaN, Infinity,\nand -Infinity real values: If true : as JSON null values If false : as strings (e.g., “NaN”,\n “Infinity”, “-Infinity”) [default] integer(kind=IK), private :: null_to_real_mode = 2_IK if strict_type_checking=false : 1 : an exception will be raised if\n try to retrieve a null as a real. 2 : a null retrieved as a real\n will return NaN. [default] 3 : a null retrieved as a real\n will return 0.0. integer(kind=IK), private :: path_mode = 1_IK How the path strings are interpreted in the get_by_path routines: 1 – Default mode (see json_get_by_path_default ) 2 – as RFC 6901 “ JSON Pointer” paths\n (see json_get_by_path_rfc6901 ) 3 – JSONPath “bracket-notation”\n see json_get_by_path_jsonpath_bracket ) character(kind=CK, len=1), private :: path_separator = dot The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nNote: if path_mode/=1 then this is ignored. character(kind=CK, len=pushed_char_size), private :: pushed_char = CK_'' used when parsing\nlines in file integer(kind=IK), private :: pushed_index = 0 used when parsing lines in file character(kind=CDK, len=:), private, allocatable :: real_fmt the format string to use\nfor converting real numbers to strings.\nIt can be set in json_initialize ,\nand used in json_value_print If not set, then default_real_fmt is used instead. integer(kind=IK), private :: spaces_per_tab = 2 number of spaces for indenting logical(kind=LK), private :: stop_on_error = .false. if true, then the program is\nstopped immediately when an\nexception is raised. logical(kind=LK), private :: strict_integer_type_checking = .true. If false, when parsing JSON , if an integer numeric value\n cannot be converted to an integer ( integer(IK) ),\n then an attempt is then make to convert it\n to a real ( real(RK) ). If true [default], an exception will be raised if an integer\n value cannot be read when parsing JSON . logical(kind=LK), private :: strict_type_checking = .false. if true, then no type conversions are done\nin the get routines if the actual variable\ntype is different from the return type (for\nexample, integer to real). logical(kind=LK), private :: trailing_spaces_significant = .false. for name and path comparisons, if trailing\nspace is to be considered significant. logical(kind=LK), private :: unescaped_strings = .true. If false, then the escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. logical(kind=LK), private :: use_quiet_nan = .true. if true [default], null_to_real_mode=2 and string_to_real will use ieee_quiet_nan for NaN values. If false, ieee_signaling_nan will be used. Constructor public interface json_core Structure constructor to initialize a json_core object Example type ( json_file ) :: json_core json_core = json_core () private function initialize_json_core (verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) result(json_core_object) Author Jacob Williams Date 4/26/2016 Function constructor for a json_core .\n This is just a wrapper for json_initialize . Note initialize_json_core , json_initialize , initialize_json_core_in_file , and initialize_json_file all have a similar interface. Arguments Type Intent Optional Attributes Name logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Return Value type( json_core ) Type-Bound Procedures generic, public :: add => json_value_add_member , json_value_add_null , wrap_json_value_add_null , json_value_add_integer , wrap_json_value_add_integer , json_value_add_integer_vec , wrap_json_value_add_integer_vec , json_value_add_real32 , wrap_json_value_add_real32 , json_value_add_real32_vec , wrap_json_value_add_real32_vec , json_value_add_real , wrap_json_value_add_real , json_value_add_real_vec , wrap_json_value_add_real_vec , json_value_add_logical , wrap_json_value_add_logical , json_value_add_logical_vec , wrap_json_value_add_logical_vec , json_value_add_string , wrap_json_value_add_string , json_value_add_string_vec , wrap_json_value_add_string_vec Add objects to a linked list of json_value s. Note It might make more sense to call this add_child . private subroutine json_value_add_member (json, p, member) Adds member as a child of p . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p p must be a json_object or a json_array type( json_value ), pointer :: member the child member\nto add to p private subroutine json_value_add_null (json, p, name) Add a NULL value child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name private subroutine wrap_json_value_add_null (json, p, name) Alternate version of json_value_add_null where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable private subroutine json_value_add_integer (json, p, name, val) Author Jacob Williams Date 1/20/2014 Add an integer value child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name integer(kind=IK), intent(in) :: val private subroutine wrap_json_value_add_integer (json, p, name, val) Alternate version of json_value_add_integer where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable integer(kind=IK), intent(in) :: val value private subroutine json_value_add_integer_vec (json, p, name, val) Author Jacob Williams Date 1/20/2014 Add a integer vector child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the variable integer(kind=IK), intent(in), dimension(:) :: val value private subroutine wrap_json_value_add_integer_vec (json, p, name, val) Alternate version of json_value_add_integer_vec where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable integer(kind=IK), intent(in), dimension(:) :: val value private subroutine json_value_add_real32 (json, p, name, val) Alternate version of json_value_add_real where val is real32 . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name variable name real(kind=real32), intent(in) :: val real value private subroutine wrap_json_value_add_real32 (json, p, name, val) Alternate version of json_value_add_real32 where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name variable name real(kind=real32), intent(in) :: val real value private subroutine json_value_add_real32_vec (json, p, name, val) Alternate version of json_value_add_real_vec where val is real32 . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name real(kind=real32), intent(in), dimension(:) :: val private subroutine wrap_json_value_add_real32_vec (json, p, name, val) Alternate version of json_value_add_real32_vec where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name real(kind=real32), intent(in), dimension(:) :: val private subroutine json_value_add_real (json, p, name, val) Author Jacob Williams Date 1/19/2014 Add a real value child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name variable name real(kind=RK), intent(in) :: val real value private subroutine wrap_json_value_add_real (json, p, name, val) Alternate version of json_value_add_real where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name variable name real(kind=RK), intent(in) :: val real value private subroutine json_value_add_real_vec (json, p, name, val) Author Jacob Williams Date 1/20/2014 Add a real vector child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name real(kind=RK), intent(in), dimension(:) :: val private subroutine wrap_json_value_add_real_vec (json, p, name, val) Alternate version of json_value_add_real_vec where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name real(kind=RK), intent(in), dimension(:) :: val private subroutine json_value_add_logical (json, p, name, val) Author Jacob Williams Date 1/20/2014 Add a logical value child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the variable logical(kind=LK), intent(in) :: val value private subroutine wrap_json_value_add_logical (json, p, name, val) Alternate version of json_value_add_logical where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable logical(kind=LK), intent(in) :: val value private subroutine json_value_add_logical_vec (json, p, name, val) Author Jacob Williams Date 1/20/2014 Add a logical vector child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the vector logical(kind=LK), intent(in), dimension(:) :: val value private subroutine wrap_json_value_add_logical_vec (json, p, name, val) Alternate version of json_value_add_logical_vec where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable logical(kind=LK), intent(in), dimension(:) :: val value private subroutine json_value_add_string (json, p, name, val, trim_str, adjustl_str) Author Jacob Williams Date 1/19/2014 Add a character string child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the variable character(kind=CK, len=*), intent(in) :: val value logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val private subroutine wrap_json_value_add_string (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string where name and val are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable character(kind=CDK, len=*), intent(in) :: val value logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val private subroutine json_value_add_string_vec (json, p, name, val, trim_str, adjustl_str) Author Jacob Williams Date 1/19/2014 Add a character string vector child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name variable name character(kind=CK, len=*), intent(in), dimension(:) :: val array of strings logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element private subroutine wrap_json_value_add_string_vec (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string_vec where name and val are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name character(kind=CDK, len=*), intent(in), dimension(:) :: val logical(kind=LK), intent(in), optional :: trim_str logical(kind=LK), intent(in), optional :: adjustl_str generic, public :: add => json_value_add_string_name_ascii , json_value_add_string_val_ascii , json_value_add_string_vec_name_ascii , json_value_add_string_vec_val_ascii private subroutine json_value_add_string_name_ascii (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable character(kind=CK, len=*), intent(in) :: val value logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val private subroutine json_value_add_string_val_ascii (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string where val is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the variable character(kind=CDK, len=*), intent(in) :: val value logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val private subroutine json_value_add_string_vec_name_ascii (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string_vec where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name character(kind=CK, len=*), intent(in), dimension(:) :: val logical(kind=LK), intent(in), optional :: trim_str logical(kind=LK), intent(in), optional :: adjustl_str private subroutine json_value_add_string_vec_val_ascii (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string_vec where val is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name character(kind=CDK, len=*), intent(in), dimension(:) :: val logical(kind=LK), intent(in), optional :: trim_str logical(kind=LK), intent(in), optional :: adjustl_str generic, public :: add_by_path => json_add_member_by_path , wrap_json_add_member_by_path , json_add_integer_by_path , wrap_json_add_integer_by_path , json_add_real32_by_path , wrap_json_add_real32_by_path , json_add_real_by_path , wrap_json_add_real_by_path , json_add_logical_by_path , wrap_json_add_logical_by_path , json_add_string_by_path , wrap_json_add_string_by_path , json_add_integer_vec_by_path , wrap_json_add_integer_vec_by_path , json_add_real32_vec_by_path , wrap_json_add_real32_vec_by_path , json_add_real_vec_by_path , wrap_json_add_real_vec_by_path , json_add_logical_vec_by_path , wrap_json_add_logical_vec_by_path , json_add_string_vec_by_path , wrap_json_add_string_vec_by_path Add variables to a json_value linked list\n by specifying their paths. Example use , intrinsic :: iso_fortran_env , only : output_unit use json_module , wp => json_RK type ( json_core ) :: json type ( json_value ) :: p call json % create_object ( p , 'root' ) ! create the root ! now add some variables using the paths: call json % add_by_path ( p , 'inputs.t' , 0.0_wp ) call json % add_by_path ( p , 'inputs.x(1)' , 10 0.0_wp ) call json % add_by_path ( p , 'inputs.x(2)' , 20 0.0_wp ) call json % print ( p ) ! now print to console Notes This uses json_create_by_path See also The json_core%update methods. json_create_by_path private subroutine json_add_member_by_path (json, me, path, p, found, was_created) Add a new member ( json_value pointer) to a JSON structure, given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(in), pointer :: p the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_member_by_path (json, me, path, p, found, was_created) Wrapper to json_add_member_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(in), pointer :: p the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_integer_by_path (json, me, path, value, found, was_created) Add an integer value to a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_integer_by_path (json, me, path, value, found, was_created) Wrapper to json_add_integer_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_real32_by_path (json, me, path, value, found, was_created) Alternate version of json_add_real_by_path where value=real32. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_real32_by_path (json, me, path, value, found, was_created) Wrapper to json_add_real32_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_real_by_path (json, me, path, value, found, was_created) Add an real value to a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_real_by_path (json, me, path, value, found, was_created) Wrapper to json_add_real_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_logical_by_path (json, me, path, value, found, was_created) Add a logical value to a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_logical_by_path (json, me, path, value, found, was_created) Wrapper to json_add_logical_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_string_by_path (json, me, path, value, found, was_created, trim_str, adjustl_str) Add a string value to a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element private subroutine wrap_json_add_string_by_path (json, me, path, value, found, was_created, trim_str, adjustl_str) Wrapper to json_add_string_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element private subroutine json_add_integer_vec_by_path (json, me, path, value, found, was_created) Wrapper to json_add_integer_by_path for adding an integer vector by path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_integer_vec_by_path (json, me, path, value, found, was_created) Wrapper for json_add_integer_vec_by_path where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_real32_vec_by_path (json, me, path, value, found, was_created) Wrapper to json_add_real_by_path for adding a real vector by path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_real32_vec_by_path (json, me, path, value, found, was_created) Wrapper for json_add_real32_vec_by_path where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_real_vec_by_path (json, me, path, value, found, was_created) Wrapper to json_add_real_by_path for adding a real vector by path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_real_vec_by_path (json, me, path, value, found, was_created) Wrapper for json_add_real_vec_by_path where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_logical_vec_by_path (json, me, path, value, found, was_created) Wrapper to json_add_logical_by_path for adding a logical vector by path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_logical_vec_by_path (json, me, path, value, found, was_created) Wrapper for json_add_logical_vec_by_path where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_string_vec_by_path (json, me, path, value, found, was_created, ilen, trim_str, adjustl_str) Wrapper to json_add_string_by_path for adding a string vector by path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element private subroutine wrap_json_add_string_vec_by_path (json, me, path, value, found, was_created, ilen, trim_str, adjustl_str) Wrapper for json_add_string_vec_by_path where “path” and “value” are kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element generic, public :: add_by_path => json_add_string_by_path_value_ascii , json_add_string_by_path_path_ascii , json_add_string_vec_by_path_value_ascii , json_add_string_vec_by_path_path_ascii private subroutine json_add_string_by_path_value_ascii (json, me, path, value, found, was_created, trim_str, adjustl_str) Wrapper for json_add_string_by_path where “value” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element private subroutine json_add_string_by_path_path_ascii (json, me, path, value, found, was_created, trim_str, adjustl_str) Wrapper for json_add_string_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element private subroutine json_add_string_vec_by_path_value_ascii (json, me, path, value, found, was_created, ilen, trim_str, adjustl_str) Wrapper for json_add_string_vec_by_path where “value” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element private subroutine json_add_string_vec_by_path_path_ascii (json, me, path, value, found, was_created, ilen, trim_str, adjustl_str) Wrapper for json_add_string_vec_by_path where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element procedure, private :: annotate_invalid_json private subroutine annotate_invalid_json (json, iunit, str) Generate a warning message if there was an error parsing a JSON file or string. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: iunit file unit number character(kind=CK, len=*), intent(in) :: str string with JSON data procedure, public :: check_children_for_duplicate_keys => json_check_children_for_duplicate_keys Check a json_value object’s\nchildren for duplicate keys private subroutine json_check_children_for_duplicate_keys (json, p, has_duplicate, name, path) Author Jacob Williams Date 8/25/2017 Checks a JSON object for duplicate child names. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p the object to search. If p is\nnot a json_object , then has_duplicate will be false. logical(kind=LK), intent(out) :: has_duplicate true if there is at least\ntwo children have duplicate name values. character(kind=CK, len=:), intent(out), optional, allocatable :: name the duplicate name\n(unallocated if no\nduplicate was found) character(kind=CK, len=:), intent(out), optional, allocatable :: path the full path to the\nduplicate name\n(unallocated if no\nduplicate was found) procedure, public :: check_for_duplicate_keys => json_check_all_for_duplicate_keys Check entire JSON structure\nfor duplicate keys (recursively) private subroutine json_check_all_for_duplicate_keys (json, p, has_duplicate, name, path) Author Jacob Williams Date 8/25/2017 Checks a JSON structure for duplicate child names.\n This one recursively traverses the entire structure\n (calling json_check_children_for_duplicate_keys recursively for each element). Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p the object to search. If p is\nnot a json_object , then has_duplicate will be false. logical(kind=LK), intent(out) :: has_duplicate true if there is at least\none duplicate name key anywhere\nin the structure. character(kind=CK, len=:), intent(out), optional, allocatable :: name the duplicate name\n(unallocated if no\nduplicates were found) character(kind=CK, len=:), intent(out), optional, allocatable :: path the full path to the\nduplicate name\n(unallocated if no\nduplicate was found) procedure, public :: check_for_errors => json_check_for_errors check for error and get error message private subroutine json_check_for_errors (json, status_ok, error_msg) Author Jacob Williams Date 12/4/2013 Retrieve error code from the json_core .\n This should be called after parse to check for errors.\n If an error is thrown, before using the class again, json_initialize should be called to clean up before it is used again. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(in) :: json logical(kind=LK), intent(out), optional :: status_ok true if there were no errors character(kind=CK, len=:), intent(out), optional, allocatable :: error_msg the error message.\n(not allocated if\nthere were no errors) procedure, public :: clear_exceptions => json_clear_exceptions clear exceptions private pure subroutine json_clear_exceptions (json) Author Jacob Williams Date 12/4/2013 Clear exceptions in the json_core . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json procedure, public :: clone => json_clone clone a JSON structure (deep copy) private subroutine json_clone (json, from, to) Author Jacob Williams Date 10/31/2015 Create a deep copy of a json_value linked-list structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: from this is the structure to clone type( json_value ), pointer :: to the clone is put here\n(it must not already be associated) procedure, private :: convert private subroutine convert (json, p, var_type) Convert an existing JSON variable p to a different variable type .\n The existing variable (and its children) is destroyed. It is replaced\n in the structure by a new variable of type var_type (which can be a json_null , json_object or json_array ). Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p the variable to convert integer(kind=IK), intent(in) :: var_type the variable type to convert p to procedure, public :: count => json_count count the number of children private function json_count (json, p) result(count) Count the number of children in the object or array. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p this should normally be a json_object or a json_array . For any other variable type this will return 0. Return Value integer(kind=IK) number of children in p . generic, public :: create => json_create_by_path , wrap_json_create_by_path Create a json_value linked list using the\n path to the variables. Optionally return a\n pointer to the variable. (This will create a null variable) See also add_by_path private subroutine json_create_by_path (json, me, path, p, found, was_created) Returns the json_value pointer given the path string,\n If necessary, by creating the variables as needed. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable type( json_value ), intent(out), optional, pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if there were no errors\n(variable found or created) logical(kind=LK), intent(out), optional :: was_created true if it was actually created\n(as opposed to already being there) private subroutine wrap_json_create_by_path (json, me, path, p, found, was_created) Alternate version of json_create_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CDK, len=*), intent(in) :: path path to the variable type( json_value ), intent(out), optional, pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if there were no errors\n(variable found or created) logical(kind=LK), intent(out), optional :: was_created true if it was actually created\n(as opposed to already being there) generic, public :: create_array => json_value_create_array , wrap_json_value_create_array Allocate a json_value pointer and make it an array variable.\n The pointer should not already be allocated. Example type ( json_core ) :: json type ( json_value ), pointer :: p call json % create_array ( p , 'arrayname' ) private subroutine json_value_create_array (json, p, name) Author Jacob Williams Allocate a json_value pointer and make it an array variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name private subroutine wrap_json_value_create_array (json, p, name) Author Izaak Beekman A wrapper for json_value_create_array so that create_array method may be\ncalled with an actual argument, corresponding to the dummy argument name ,\nthat is either of ‘DEFAULT’ or ‘ISO_10646’ character kind. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name generic, public :: create_double => json_value_create_real , wrap_json_value_create_real This is equivalent to create_real ,\nand is here only for backward compatibility. private subroutine json_value_create_real (json, p, val, name) Author Jacob Williams Allocate a json_value pointer and make it a real(RK) variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=RK), intent(in) :: val character(kind=CK, len=*), intent(in) :: name private subroutine wrap_json_value_create_real (json, p, val, name) Author Izaak Beekman A wrapper for json_value_create_real so that create_real method\nmay be called with an actual argument corresponding to the dummy argument, name that may be of ‘DEFAULT’ or ‘ISO_10646’ character kind. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=RK), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name generic, public :: create_double => json_value_create_real32 , wrap_json_value_create_real32 private subroutine json_value_create_real32 (json, p, val, name) Alternate version of json_value_create_real where val=real32. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=real32), intent(in) :: val character(kind=CK, len=*), intent(in) :: name private subroutine wrap_json_value_create_real32 (json, p, val, name) Alternate version of json_value_create_real32 where “name” is kind(CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=real32), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name generic, public :: create_integer => json_value_create_integer , wrap_json_value_create_integer Allocate a json_value pointer and make it an integer variable.\n The pointer should not already be allocated. Example type ( json_core ) :: json type ( json_value ), pointer :: p call json % create_integer ( p , 42 , 'value' ) private subroutine json_value_create_integer (json, p, val, name) Author Jacob Williams Allocate a json_value pointer and make it an integer(IK) variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(in) :: val character(kind=CK, len=*), intent(in) :: name private subroutine wrap_json_value_create_integer (json, p, val, name) Author Izaak Beekman A wrapper procedure for json_value_create_integer so that create_integer method may be called with either a ‘DEFAULT’ or ‘ISO_10646’ character kind name actual argument. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name generic, public :: create_logical => json_value_create_logical , wrap_json_value_create_logical Allocate a json_value pointer and make it a logical variable.\n The pointer should not already be allocated. Example type ( json_core ) :: json type ( json_value ), pointer :: p call json % create_logical ( p , 'value' ,. true .) private subroutine json_value_create_logical (json, p, val, name) Author Jacob Williams Allocate a json_value pointer and make it a logical(LK) variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p logical(kind=LK), intent(in) :: val variable value character(kind=CK, len=*), intent(in) :: name variable name private subroutine wrap_json_value_create_logical (json, p, val, name) Author Izaak Beekman Wrapper for json_value_create_logical so create_logical method can\nbe called with name of character kind ‘DEFAULT’ or ‘ISO_10646’ Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p logical(kind=LK), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name generic, public :: create_null => json_value_create_null , wrap_json_value_create_null Allocate a json_value pointer and make it a null variable.\n The pointer should not already be allocated. Example type ( json_core ) :: json type ( json_value ), pointer :: p call json % create_null ( p , 'value' ) private subroutine json_value_create_null (json, p, name) Author Jacob Williams Allocate a json_value pointer and make it a null variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name private subroutine wrap_json_value_create_null (json, p, name) Author Izaak Beekman Wrap json_value_create_null so that create_null method may be called with\nan actual argument corresponding to the dummy argument name that is either\nof ‘DEFAULT’ or ‘ISO_10646’ character kind. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name generic, public :: create_object => json_value_create_object , wrap_json_value_create_object Allocate a json_value pointer and make it an object variable.\n The pointer should not already be allocated. Example type ( json_core ) :: json type ( json_value ), pointer :: p call json % create_object ( p , 'objectname' ) Note The name is not significant for the root structure or an array element.\n In those cases, an empty string can be used. private subroutine json_value_create_object (json, p, name) Author Jacob Williams Allocate a json_value pointer and make it an object variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name private subroutine wrap_json_value_create_object (json, p, name) Author Izaak Beekman Wrap json_value_create_object so that create_object method may be called\nwith an actual argument corresponding to the dummy argument name that is of\neither ‘DEFAULT’ or ‘ISO_10646’ character kind. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name generic, public :: create_real => json_value_create_real , wrap_json_value_create_real Allocate a json_value pointer and make it a real variable.\n The pointer should not already be allocated. Example type ( json_core ) :: json type ( json_value ), pointer :: p call json % create_real ( p , 'value' , 1.0_RK ) Note create_real is just an alias\n to this one for backward compatibility. private subroutine json_value_create_real (json, p, val, name) Author Jacob Williams Allocate a json_value pointer and make it a real(RK) variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=RK), intent(in) :: val character(kind=CK, len=*), intent(in) :: name private subroutine wrap_json_value_create_real (json, p, val, name) Author Izaak Beekman A wrapper for json_value_create_real so that create_real method\nmay be called with an actual argument corresponding to the dummy argument, name that may be of ‘DEFAULT’ or ‘ISO_10646’ character kind. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=RK), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name generic, public :: create_real => json_value_create_real32 , wrap_json_value_create_real32 private subroutine json_value_create_real32 (json, p, val, name) Alternate version of json_value_create_real where val=real32. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=real32), intent(in) :: val character(kind=CK, len=*), intent(in) :: name private subroutine wrap_json_value_create_real32 (json, p, val, name) Alternate version of json_value_create_real32 where “name” is kind(CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=real32), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name generic, public :: create_string => json_value_create_string , wrap_json_value_create_string Allocate a json_value pointer and make it a string variable.\n The pointer should not already be allocated. Example type ( json_core ) :: json type ( json_value ), pointer :: p call json % create_string ( p , 'value' , 'foobar' ) private subroutine json_value_create_string (json, p, val, name, trim_str, adjustl_str) Author Jacob Williams Allocate a json_value pointer and make it a string variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: val character(kind=CK, len=*), intent(in) :: name logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val private subroutine wrap_json_value_create_string (json, p, val, name, trim_str, adjustl_str) Author Izaak Beekman Wrap json_value_create_string so that create_string method may be called\nwith actual character string arguments for name and val that are BOTH of\n‘DEFAULT’ or ‘ISO_10646’ character kind. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val generic, public :: deserialize => json_parse_string , wrap_json_parse_string Parse the JSON string and populate the json_value tree. private subroutine json_parse_string (json, p, str) Parse the JSON string and populate the json_value tree. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p output structure character(kind=CK, len=*), intent(in) :: str string with JSON data private subroutine wrap_json_parse_string (json, p, str) Alternate version of json_parse_string , where str is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p output structure character(kind=CDK, len=*), intent(in) :: str string with JSON data generic, public :: destroy => json_value_destroy , destroy_json_core Destructor routine for a json_value pointer.\n This must be called explicitly if it is no longer needed,\n before it goes out of scope. Otherwise, a memory leak will result. Example Destroy the json_value pointer before the variable goes out of scope: subroutine example1 () type ( json_core ) :: json type ( json_value ), pointer :: p call json % create_object ( p , '' ) call json % add ( p , 'year' , 2015 ) call json % print ( p ) call json % destroy ( p ) end subroutine example1 Note: it should NOT be called for a json_value pointer than has already been\n added to another json_value structure, since doing so may render the\n other structure invalid. Consider the following example: subroutine example2 ( p ) type ( json_core ) :: json type ( json_value ), pointer , intent ( out ) :: p type ( json_value ), pointer :: q call json % create_object ( p , '' ) call json % add ( p , 'year' , 2015 ) call json % create_object ( q , 'q' ) call json % add ( q , 'val' , 1 ) call json % add ( p , q ) !add q to p structure ! do NOT call json%destroy(q) here, because q is ! now part of the output structure p. p should be destroyed ! somewhere upstream by the caller of this routine. nullify ( q ) !OK, but not strictly necessary end subroutine example2 private pure recursive subroutine json_value_destroy (json, p, destroy_next) Author Jacob Williams Date 1/22/2014 Destroy a json_value linked-list structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p variable to destroy logical(kind=LK), intent(in), optional :: destroy_next if true, then p%next is also destroyed (default is true) private subroutine destroy_json_core (me) Author Jacob Williams Date 4/17/2016 Destructor for the json_core type. Arguments Type Intent Optional Attributes Name class( json_core ), intent(out) :: me procedure, private :: destroy_json_core private subroutine destroy_json_core (me) Author Jacob Williams Date 4/17/2016 Destructor for the json_core type. Arguments Type Intent Optional Attributes Name class( json_core ), intent(out) :: me procedure, public :: failed => json_failed check for error private pure function json_failed (json) result(failed) Author Jacob Williams Date 12/5/2013 Logical function to indicate if an exception has been thrown in a json_core . Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(in) :: json Return Value logical(kind=LK) will be true if an exception\nhas been thrown. generic, public :: get => json_get_by_path , wrap_json_get_by_path , json_get_integer , json_get_integer_by_path , wrap_json_get_integer_by_path , json_get_integer_vec , json_get_integer_vec_by_path , wrap_json_get_integer_vec_by_path , json_get_real32 , json_get_real32_by_path , wrap_json_get_real32_by_path , json_get_real32_vec , json_get_real32_vec_by_path , wrap_json_get_real32_vec_by_path , json_get_real , json_get_real_by_path , wrap_json_get_real_by_path , json_get_real_vec , json_get_real_vec_by_path , wrap_json_get_real_vec_by_path , json_get_logical , json_get_logical_by_path , wrap_json_get_logical_by_path , json_get_logical_vec , json_get_logical_vec_by_path , wrap_json_get_logical_vec_by_path , json_get_string , json_get_string_by_path , wrap_json_get_string_by_path , json_get_string_vec , json_get_string_vec_by_path , wrap_json_get_string_vec_by_path , json_get_alloc_string_vec , json_get_alloc_string_vec_by_path , wrap_json_get_alloc_string_vec_by_path , json_get_array , json_get_array_by_path , wrap_json_get_array_by_path Get data from a json_value linked list. Note There are two versions (e.g. json_get_integer and json_get_integer_by_path ).\n The first one gets the value from the json_value passed into the routine,\n while the second one gets the value from the json_value found by parsing the\n path. The path version is split up into unicode and non-unicode versions. private subroutine json_get_by_path (json, me, path, p, found) Returns the json_value pointer given the path string. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable type( json_value ), intent(out), pointer :: p pointer to the variable\nspecified by path logical(kind=LK), intent(out), optional :: found true if it was found private subroutine wrap_json_get_by_path (json, me, path, p, found) Alternate version of json_get_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path type( json_value ), intent(out), pointer :: p logical(kind=LK), intent(out), optional :: found private subroutine json_get_integer (json, me, value) Get an integer value from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me integer(kind=IK), intent(out) :: value the integer value private subroutine json_get_integer_by_path (json, me, path, value, found, default) Get an integer value from a json_value , given the path string. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path integer(kind=IK), intent(out) :: value logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(in), optional :: default default value if not found private subroutine wrap_json_get_integer_by_path (json, me, path, value, found, default) Alternate version of json_get_integer_by_path , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path integer(kind=IK), intent(out) :: value logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(in), optional :: default default value if not found private subroutine json_get_integer_vec (json, me, vec) Author Jacob Williams Date 5/14/2014 Get an integer vector from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me integer(kind=IK), intent(out), dimension(:), allocatable :: vec private subroutine json_get_integer_vec_by_path (json, me, path, vec, found, default) Get an integer vector from a json_value , given the path string. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path integer(kind=IK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(in), optional, dimension(:) :: default default value if not found private subroutine wrap_json_get_integer_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_integer_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path integer(kind=IK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(in), optional, dimension(:) :: default default value if not found private subroutine json_get_real32 (json, me, value) Alternate version of json_get_real where value=real32. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me real(kind=real32), intent(out) :: value private subroutine json_get_real32_by_path (json, me, path, value, found, default) Alternate version of json_get_real_by_path where value=real32. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CK, len=*), intent(in) :: path real(kind=real32), intent(out) :: value logical(kind=LK), intent(out), optional :: found real(kind=real32), intent(in), optional :: default default value if not found private subroutine wrap_json_get_real32_by_path (json, me, path, value, found, default) Alternate version of json_get_real32_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path real(kind=real32), intent(out) :: value logical(kind=LK), intent(out), optional :: found real(kind=real32), intent(in), optional :: default default value if not found private subroutine json_get_real32_vec (json, me, vec) Alternate version of json_get_real_vec where vec is real32 . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me real(kind=real32), intent(out), dimension(:), allocatable :: vec private subroutine json_get_real32_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_real_vec_by_path where vec is real32 . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path real(kind=real32), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found real(kind=real32), intent(in), optional, dimension(:) :: default default value if not found private subroutine wrap_json_get_real32_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_real32_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path real(kind=real32), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found real(kind=real32), intent(in), optional, dimension(:) :: default default value if not found private subroutine json_get_real (json, me, value) Get a real value from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me real(kind=RK), intent(out) :: value private subroutine json_get_real_by_path (json, me, path, value, found, default) Get a real value from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CK, len=*), intent(in) :: path real(kind=RK), intent(out) :: value logical(kind=LK), intent(out), optional :: found real(kind=RK), intent(in), optional :: default default value if not found private subroutine wrap_json_get_real_by_path (json, me, path, value, found, default) Alternate version of json_get_real_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path real(kind=RK), intent(out) :: value logical(kind=LK), intent(out), optional :: found real(kind=RK), intent(in), optional :: default default value if not found private subroutine json_get_real_vec (json, me, vec) Author Jacob Williams Date 5/14/2014 Get a real vector from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me real(kind=RK), intent(out), dimension(:), allocatable :: vec private subroutine json_get_real_vec_by_path (json, me, path, vec, found, default) Get a real vector from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path real(kind=RK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found real(kind=RK), intent(in), optional, dimension(:) :: default default value if not found private subroutine wrap_json_get_real_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_real_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path real(kind=RK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found real(kind=RK), intent(in), optional, dimension(:) :: default default value if not found private subroutine json_get_logical (json, me, value) Get a logical value from a json_value . Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me logical(kind=LK), intent(out) :: value private subroutine json_get_logical_by_path (json, me, path, value, found, default) Get a logical value from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path logical(kind=LK), intent(out) :: value logical(kind=LK), intent(out), optional :: found logical(kind=LK), intent(in), optional :: default default value if not found private subroutine wrap_json_get_logical_by_path (json, me, path, value, found, default) Alternate version of json_get_logical_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path logical(kind=LK), intent(out) :: value logical(kind=LK), intent(out), optional :: found logical(kind=LK), intent(in), optional :: default default value if not found private subroutine json_get_logical_vec (json, me, vec) Author Jacob Williams Date 5/14/2014 Get a logical vector from json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me logical(kind=LK), intent(out), dimension(:), allocatable :: vec private subroutine json_get_logical_vec_by_path (json, me, path, vec, found, default) Get a logical vector from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path logical(kind=LK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found logical(kind=LK), intent(in), optional, dimension(:) :: default private subroutine wrap_json_get_logical_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_logical_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path logical(kind=LK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found logical(kind=LK), intent(in), optional, dimension(:) :: default private subroutine json_get_string (json, me, value) Get a character string from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=:), intent(out), allocatable :: value private subroutine json_get_string_by_path (json, me, path, value, found, default) Get a character string from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path character(kind=CK, len=:), intent(out), allocatable :: value logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional :: default private subroutine wrap_json_get_string_by_path (json, me, path, value, found, default) Alternate version of json_get_string_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=:), intent(out), allocatable :: value logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional :: default private subroutine json_get_string_vec (json, me, vec) Author Jacob Williams Date 5/14/2014 Get a string vector from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec private subroutine json_get_string_vec_by_path (json, me, path, vec, found, default) Get a string vector from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default private subroutine wrap_json_get_string_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_string_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default private subroutine json_get_alloc_string_vec (json, me, vec, ilen) Author Jacob Williams Date 12/16/2016 Get a string vector from a json_value . This is an alternate\n version of json_get_string_vec . This one returns an allocatable\n length character (where the string length is the maximum length of\n any element in the array). It also returns an integer array of the\n actual sizes of the strings in the JSON structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array private subroutine json_get_alloc_string_vec_by_path (json, me, path, vec, ilen, found, default, default_ilen) Alternate version of json_get_alloc_string_vec where input is the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default integer(kind=IK), intent(in), optional, dimension(:) :: default_ilen the actual\nlength of default private subroutine wrap_json_get_alloc_string_vec_by_path (json, me, path, vec, ilen, found, default, default_ilen) Alternate version of json_get_alloc_string_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default integer(kind=IK), intent(in), optional, dimension(:) :: default_ilen the actual\nlength of default private recursive subroutine json_get_array (json, me, array_callback) This routine calls the user-supplied json_array_callback_func subroutine for each element in the array. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me procedure( json_array_callback_func ) :: array_callback private recursive subroutine json_get_array_by_path (json, me, path, array_callback, found) This routine calls the user-supplied array_callback subroutine\nfor each element in the array (specified by the path). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path procedure( json_array_callback_func ) :: array_callback logical(kind=LK), intent(out), optional :: found private recursive subroutine wrap_json_get_array_by_path (json, me, path, array_callback, found) Alternate version of json_get_array_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path procedure( json_array_callback_func ) :: array_callback logical(kind=LK), intent(out), optional :: found generic, public :: get_child => json_value_get_child_by_index , json_value_get_child , json_value_get_child_by_name , wrap_json_value_get_child_by_name Return a child of a json_value structure. private subroutine json_value_get_child_by_index (json, p, idx, child, found) Returns a child in the object or array given the index. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p object or array JSON data integer(kind=IK), intent(in) :: idx index of the child\n(this is a 1-based Fortran\nstyle array index). type( json_value ), pointer :: child pointer to the child logical(kind=LK), intent(out), optional :: found true if the value was found\n(if not present, an exception\nwill be thrown if it was not\nfound. If present and not\nfound, no exception will be\nthrown). private subroutine json_value_get_child (json, p, child) Returns pointer to the first child of the object\n(or null() if it is not associated). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p object or array JSON data type( json_value ), pointer :: child pointer to the child private subroutine json_value_get_child_by_name (json, p, name, child, found) Returns a child in the object or array given the name string. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CK, len=*), intent(in) :: name the name of a child of p type( json_value ), pointer :: child pointer to the child logical(kind=LK), intent(out), optional :: found true if the value was found\n(if not present, an exception\nwill be thrown if it was not\nfound. If present and not\nfound, no exception will be\nthrown). private subroutine wrap_json_value_get_child_by_name (json, p, name, child, found) Alternate version of json_value_get_child_by_name where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CDK, len=*), intent(in) :: name type( json_value ), pointer :: child logical(kind=LK), intent(out), optional :: found procedure, private, nopass :: get_current_line_from_file_sequential private subroutine get_current_line_from_file_sequential (iunit, line) Author Jacob Williams Rewind the file to the beginning of the current line, and return this line.\nThe file is assumed to be opened.\nThis is the SEQUENTIAL version (see also get_current_line_from_file_stream ). Arguments Type Intent Optional Attributes Name integer(kind=IK), intent(in) :: iunit file unit number character(kind=CK, len=:), intent(out), allocatable :: line current line procedure, private :: get_current_line_from_file_stream private subroutine get_current_line_from_file_stream (json, iunit, line) Author Jacob Williams Rewind the file to the beginning of the current line, and return this line.\nThe file is assumed to be opened.\nThis is the STREAM version (see also get_current_line_from_file_sequential ). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: iunit file unit number character(kind=CK, len=:), intent(out), allocatable :: line current line procedure, public :: get_next => json_get_next get pointer to json_value next private subroutine json_get_next (json, p, next) Author Jacob Williams Date 10/31/2015 Returns a pointer to the next of a json_value .\nIf there is no next, then a null() pointer is returned. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p JSON object type( json_value ), intent(out), pointer :: next pointer to next procedure, public :: get_parent => json_get_parent get pointer to json_value parent private subroutine json_get_parent (json, p, parent) Author Jacob Williams Date 10/16/2015 Returns a pointer to the parent of a json_value .\nIf there is no parent, then a null() pointer is returned. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p JSON object type( json_value ), intent(out), pointer :: parent pointer to parent generic, public :: get_path => json_get_path , wrap_json_get_path get the path to a JSON variable in a structure: private subroutine json_get_path (json, p, path, found, use_alt_array_tokens, path_sep) Returns the path to a JSON object that is part\n of a linked list structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list object character(kind=CK, len=:), intent(out), allocatable :: path path to the variable logical(kind=LK), intent(out), optional :: found true if there were no problems logical(kind=LK), intent(in), optional :: use_alt_array_tokens if true, then ‘()’ are used for array elements\notherwise, ‘[]’ are used [default]\n(only used if path_mode=1 ) character(kind=CK, len=1), intent(in), optional :: path_sep character to use for path separator\n(otherwise use json%path_separator )\n(only used if path_mode=1 ) private subroutine wrap_json_get_path (json, p, path, found, use_alt_array_tokens, path_sep) Wrapper for json_get_path where “path” and “path_sep” are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list object character(kind=CDK, len=:), intent(out), allocatable :: path path to the variable logical(kind=LK), intent(out), optional :: found true if there were no problems logical(kind=LK), intent(in), optional :: use_alt_array_tokens if true, then ‘()’ are used\nfor array elements otherwise,\n‘[]’ are used [default] character(kind=CDK, len=1), intent(in), optional :: path_sep character to use for path\nseparator (default is ‘.’) procedure, public :: get_previous => json_get_previous get pointer to json_value previous private subroutine json_get_previous (json, p, previous) Author Jacob Williams Date 10/31/2015 Returns a pointer to the previous of a json_value .\nIf there is no previous, then a null() pointer is returned. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p JSON object type( json_value ), intent(out), pointer :: previous pointer to previous procedure, public :: get_tail => json_get_tail get pointer to json_value tail private subroutine json_get_tail (json, p, tail) Author Jacob Williams Date 10/31/2015 Returns a pointer to the tail of a json_value (the last child of an array of object).\nIf there is no tail, then a null() pointer is returned. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p JSON object type( json_value ), intent(out), pointer :: tail pointer to tail generic, public :: info => json_info , json_info_by_path , wrap_json_info_by_path get info about a json_value private subroutine json_info (json, p, var_type, n_children, name) Author Jacob Williams Date 2/13/2014 Returns information about a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(out), optional :: var_type variable type integer(kind=IK), intent(out), optional :: n_children number of children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name private subroutine json_info_by_path (json, p, path, found, var_type, n_children, name) Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable logical(kind=LK), intent(out), optional :: found true if it was found integer(kind=IK), intent(out), optional :: var_type variable type integer(kind=IK), intent(out), optional :: n_children number of children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name private subroutine wrap_json_info_by_path (json, p, path, found, var_type, n_children, name) Alternate version of json_info_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list character(kind=CDK, len=*), intent(in) :: path path to the variable logical(kind=LK), intent(out), optional :: found true if it was found integer(kind=IK), intent(out), optional :: var_type variable type integer(kind=IK), intent(out), optional :: n_children number of children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name procedure, public :: initialize => json_initialize to initialize some parsing parameters private subroutine json_initialize (me, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) Author Jacob Williams Date 12/4/2013 Initialize the json_core instance. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: me logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) generic, public :: insert_after => json_value_insert_after , json_value_insert_after_child_by_index insert a new element after an existing one,\nupdating the JSON structure accordingly private subroutine json_value_insert_after (json, p, element) Inserts element after p , and updates the JSON structure accordingly. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a value from a JSON structure\n(presumably, this is a child of\nan object or array). type( json_value ), pointer :: element the element to insert after p private subroutine json_value_insert_after_child_by_index (json, p, idx, element) Inserts element after the idx -th child of p ,\nand updates the JSON structure accordingly. This is just\na wrapper for json_value_insert_after . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a JSON object or array. integer(kind=IK), intent(in) :: idx the index of the child of p to\ninsert the new element after\n(this is a 1-based Fortran\nstyle array index) type( json_value ), pointer :: element the element to insert procedure, public :: is_child_of => json_value_is_child_of Check if a json_value is a\ndescendant of another. private function json_value_is_child_of (json, p1, p2) result(is_child_of) Author Jacob Williams Date 4/28/2016 Returns True if p2 is a descendant of p1 (i.e, a child, or a child of child, etc.) Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p1 type( json_value ), pointer :: p2 Return Value logical(kind=LK) procedure, private :: is_vector => json_is_vector private function json_is_vector (json, p) result(is_vector) Returns true if all the children are the same type (and a scalar).\nNote that integers and reals are considered the same type for this purpose.\nThis routine is used for the compress_vectors option. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p Return Value logical(kind=LK) if all elements of a vector\nare scalars of the same type procedure, private :: json_add_integer_by_path private subroutine json_add_integer_by_path (json, me, path, value, found, was_created) Add an integer value to a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: json_add_integer_vec_by_path private subroutine json_add_integer_vec_by_path (json, me, path, value, found, was_created) Wrapper to json_add_integer_by_path for adding an integer vector by path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: json_add_logical_by_path private subroutine json_add_logical_by_path (json, me, path, value, found, was_created) Add a logical value to a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: json_add_logical_vec_by_path private subroutine json_add_logical_vec_by_path (json, me, path, value, found, was_created) Wrapper to json_add_logical_by_path for adding a logical vector by path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: json_add_member_by_path private subroutine json_add_member_by_path (json, me, path, p, found, was_created) Add a new member ( json_value pointer) to a JSON structure, given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(in), pointer :: p the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: json_add_real32_by_path private subroutine json_add_real32_by_path (json, me, path, value, found, was_created) Alternate version of json_add_real_by_path where value=real32. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: json_add_real32_vec_by_path private subroutine json_add_real32_vec_by_path (json, me, path, value, found, was_created) Wrapper to json_add_real_by_path for adding a real vector by path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: json_add_real_by_path private subroutine json_add_real_by_path (json, me, path, value, found, was_created) Add an real value to a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: json_add_real_vec_by_path private subroutine json_add_real_vec_by_path (json, me, path, value, found, was_created) Wrapper to json_add_real_by_path for adding a real vector by path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: json_add_string_by_path private subroutine json_add_string_by_path (json, me, path, value, found, was_created, trim_str, adjustl_str) Add a string value to a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element procedure, private :: json_add_string_by_path_path_ascii private subroutine json_add_string_by_path_path_ascii (json, me, path, value, found, was_created, trim_str, adjustl_str) Wrapper for json_add_string_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element procedure, private :: json_add_string_by_path_value_ascii private subroutine json_add_string_by_path_value_ascii (json, me, path, value, found, was_created, trim_str, adjustl_str) Wrapper for json_add_string_by_path where “value” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element procedure, private :: json_add_string_vec_by_path private subroutine json_add_string_vec_by_path (json, me, path, value, found, was_created, ilen, trim_str, adjustl_str) Wrapper to json_add_string_by_path for adding a string vector by path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element procedure, private :: json_add_string_vec_by_path_path_ascii private subroutine json_add_string_vec_by_path_path_ascii (json, me, path, value, found, was_created, ilen, trim_str, adjustl_str) Wrapper for json_add_string_vec_by_path where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element procedure, private :: json_add_string_vec_by_path_value_ascii private subroutine json_add_string_vec_by_path_value_ascii (json, me, path, value, found, was_created, ilen, trim_str, adjustl_str) Wrapper for json_add_string_vec_by_path where “value” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element procedure, private :: json_create_by_path private subroutine json_create_by_path (json, me, path, p, found, was_created) Returns the json_value pointer given the path string,\n If necessary, by creating the variables as needed. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable type( json_value ), intent(out), optional, pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if there were no errors\n(variable found or created) logical(kind=LK), intent(out), optional :: was_created true if it was actually created\n(as opposed to already being there) procedure, private :: json_get_alloc_string_vec private subroutine json_get_alloc_string_vec (json, me, vec, ilen) Author Jacob Williams Date 12/16/2016 Get a string vector from a json_value . This is an alternate\n version of json_get_string_vec . This one returns an allocatable\n length character (where the string length is the maximum length of\n any element in the array). It also returns an integer array of the\n actual sizes of the strings in the JSON structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array procedure, private :: json_get_alloc_string_vec_by_path private subroutine json_get_alloc_string_vec_by_path (json, me, path, vec, ilen, found, default, default_ilen) Alternate version of json_get_alloc_string_vec where input is the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default integer(kind=IK), intent(in), optional, dimension(:) :: default_ilen the actual\nlength of default procedure, private :: json_get_array private recursive subroutine json_get_array (json, me, array_callback) This routine calls the user-supplied json_array_callback_func subroutine for each element in the array. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me procedure( json_array_callback_func ) :: array_callback procedure, private :: json_get_array_by_path private recursive subroutine json_get_array_by_path (json, me, path, array_callback, found) This routine calls the user-supplied array_callback subroutine\nfor each element in the array (specified by the path). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path procedure( json_array_callback_func ) :: array_callback logical(kind=LK), intent(out), optional :: found procedure, private :: json_get_by_path private subroutine json_get_by_path (json, me, path, p, found) Returns the json_value pointer given the path string. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable type( json_value ), intent(out), pointer :: p pointer to the variable\nspecified by path logical(kind=LK), intent(out), optional :: found true if it was found procedure, private :: json_get_by_path_default private subroutine json_get_by_path_default (json, me, path, p, found, create_it, was_created) Returns the json_value pointer given the path string. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable type( json_value ), intent(out), pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if it was found logical(kind=LK), intent(in), optional :: create_it if a variable is not present\nin the path, then it is created.\nthe leaf node is returned as\na null json type and can be\nchanged by the caller. logical(kind=LK), intent(out), optional :: was_created if create_it is true, this\nwill be true if the variable\nwas actually created. Otherwise\nit will be false. procedure, private :: json_get_by_path_jsonpath_bracket private subroutine json_get_by_path_jsonpath_bracket (json, me, path, p, found, create_it, was_created) Author Jacob Williams Date 9/2/2017 Returns the json_value pointer given the path string,\n using the “ JSON Pointer” path specification defined by the\n JSONPath “bracket-notation”. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable\n(using JSONPath\n“bracket-notation”) type( json_value ), intent(out), pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if it was found logical(kind=LK), intent(in), optional :: create_it if a variable is not present\nin the path, then it is created.\nthe leaf node is returned as\na null json type and can be\nchanged by the caller. logical(kind=LK), intent(out), optional :: was_created if create_it is true, this\nwill be true if the variable\nwas actually created. Otherwise\nit will be false. procedure, private :: json_get_by_path_rfc6901 private subroutine json_get_by_path_rfc6901 (json, me, path, p, found) Author Jacob Williams Date 2/4/2017 Returns the json_value pointer given the path string,\n using the “ JSON Pointer” path specification defined by RFC 6901. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable\n(an RFC 6901 “ JSON Pointer”) type( json_value ), intent(out), pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if it was found procedure, private :: json_get_integer private subroutine json_get_integer (json, me, value) Get an integer value from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me integer(kind=IK), intent(out) :: value the integer value procedure, private :: json_get_integer_by_path private subroutine json_get_integer_by_path (json, me, path, value, found, default) Get an integer value from a json_value , given the path string. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path integer(kind=IK), intent(out) :: value logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(in), optional :: default default value if not found procedure, private :: json_get_integer_vec private subroutine json_get_integer_vec (json, me, vec) Author Jacob Williams Date 5/14/2014 Get an integer vector from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me integer(kind=IK), intent(out), dimension(:), allocatable :: vec procedure, private :: json_get_integer_vec_by_path private subroutine json_get_integer_vec_by_path (json, me, path, vec, found, default) Get an integer vector from a json_value , given the path string. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path integer(kind=IK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(in), optional, dimension(:) :: default default value if not found procedure, private :: json_get_logical private subroutine json_get_logical (json, me, value) Get a logical value from a json_value . Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me logical(kind=LK), intent(out) :: value procedure, private :: json_get_logical_by_path private subroutine json_get_logical_by_path (json, me, path, value, found, default) Get a logical value from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path logical(kind=LK), intent(out) :: value logical(kind=LK), intent(out), optional :: found logical(kind=LK), intent(in), optional :: default default value if not found procedure, private :: json_get_logical_vec private subroutine json_get_logical_vec (json, me, vec) Author Jacob Williams Date 5/14/2014 Get a logical vector from json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me logical(kind=LK), intent(out), dimension(:), allocatable :: vec procedure, private :: json_get_logical_vec_by_path private subroutine json_get_logical_vec_by_path (json, me, path, vec, found, default) Get a logical vector from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path logical(kind=LK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found logical(kind=LK), intent(in), optional, dimension(:) :: default procedure, private :: json_get_path private subroutine json_get_path (json, p, path, found, use_alt_array_tokens, path_sep) Returns the path to a JSON object that is part\n of a linked list structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list object character(kind=CK, len=:), intent(out), allocatable :: path path to the variable logical(kind=LK), intent(out), optional :: found true if there were no problems logical(kind=LK), intent(in), optional :: use_alt_array_tokens if true, then ‘()’ are used for array elements\notherwise, ‘[]’ are used [default]\n(only used if path_mode=1 ) character(kind=CK, len=1), intent(in), optional :: path_sep character to use for path separator\n(otherwise use json%path_separator )\n(only used if path_mode=1 ) procedure, private :: json_get_real private subroutine json_get_real (json, me, value) Get a real value from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me real(kind=RK), intent(out) :: value procedure, private :: json_get_real32 private subroutine json_get_real32 (json, me, value) Alternate version of json_get_real where value=real32. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me real(kind=real32), intent(out) :: value procedure, private :: json_get_real32_by_path private subroutine json_get_real32_by_path (json, me, path, value, found, default) Alternate version of json_get_real_by_path where value=real32. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CK, len=*), intent(in) :: path real(kind=real32), intent(out) :: value logical(kind=LK), intent(out), optional :: found real(kind=real32), intent(in), optional :: default default value if not found procedure, private :: json_get_real32_vec private subroutine json_get_real32_vec (json, me, vec) Alternate version of json_get_real_vec where vec is real32 . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me real(kind=real32), intent(out), dimension(:), allocatable :: vec procedure, private :: json_get_real32_vec_by_path private subroutine json_get_real32_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_real_vec_by_path where vec is real32 . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path real(kind=real32), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found real(kind=real32), intent(in), optional, dimension(:) :: default default value if not found procedure, private :: json_get_real_by_path private subroutine json_get_real_by_path (json, me, path, value, found, default) Get a real value from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CK, len=*), intent(in) :: path real(kind=RK), intent(out) :: value logical(kind=LK), intent(out), optional :: found real(kind=RK), intent(in), optional :: default default value if not found procedure, private :: json_get_real_vec private subroutine json_get_real_vec (json, me, vec) Author Jacob Williams Date 5/14/2014 Get a real vector from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me real(kind=RK), intent(out), dimension(:), allocatable :: vec procedure, private :: json_get_real_vec_by_path private subroutine json_get_real_vec_by_path (json, me, path, vec, found, default) Get a real vector from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path real(kind=RK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found real(kind=RK), intent(in), optional, dimension(:) :: default default value if not found procedure, private :: json_get_string private subroutine json_get_string (json, me, value) Get a character string from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=:), intent(out), allocatable :: value procedure, private :: json_get_string_by_path private subroutine json_get_string_by_path (json, me, path, value, found, default) Get a character string from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path character(kind=CK, len=:), intent(out), allocatable :: value logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional :: default procedure, private :: json_get_string_vec private subroutine json_get_string_vec (json, me, vec) Author Jacob Williams Date 5/14/2014 Get a string vector from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec procedure, private :: json_get_string_vec_by_path private subroutine json_get_string_vec_by_path (json, me, path, vec, found, default) Get a string vector from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default procedure, private :: json_info private subroutine json_info (json, p, var_type, n_children, name) Author Jacob Williams Date 2/13/2014 Returns information about a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(out), optional :: var_type variable type integer(kind=IK), intent(out), optional :: n_children number of children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name procedure, private :: json_info_by_path private subroutine json_info_by_path (json, p, path, found, var_type, n_children, name) Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable logical(kind=LK), intent(out), optional :: found true if it was found integer(kind=IK), intent(out), optional :: var_type variable type integer(kind=IK), intent(out), optional :: n_children number of children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name procedure, private :: json_matrix_info private subroutine json_matrix_info (json, p, is_matrix, var_type, n_sets, set_size, name) Author Jacob Williams Date 10/16/2015 Alternate version of json_info that returns matrix\n information about a json_value . Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a JSON linked list logical(kind=LK), intent(out) :: is_matrix true if it is a valid matrix integer(kind=IK), intent(out), optional :: var_type variable type of data in the matrix\n(if all elements have the same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name procedure, private :: json_matrix_info_by_path private subroutine json_matrix_info_by_path (json, p, path, is_matrix, found, var_type, n_sets, set_size, name) Returns matrix information about a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a JSON linked list character(kind=CK, 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\nthe matrix (if all elements have\nthe same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name procedure, private :: json_parse_file private subroutine json_parse_file (json, file, p, unit) Parse the JSON file and populate the json_value tree. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CDK, len=*), intent(in) :: file JSON file name type( json_value ), pointer :: p output structure integer(kind=IK), intent(in), optional :: unit file unit number (/= 0) procedure, private :: json_parse_string private subroutine json_parse_string (json, p, str) Parse the JSON string and populate the json_value tree. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p output structure character(kind=CK, len=*), intent(in) :: str string with JSON data procedure, private :: json_print_to_console private subroutine json_print_to_console (json, p) Print the json_value structure to the console ( output_unit ). Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p procedure, private :: json_print_to_filename private subroutine json_print_to_filename (json, p, filename) Author Jacob Williams Date 12/23/2014 Print the json_value structure to a file. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CDK, len=*), intent(in) :: filename the filename to print to\n(should not already be open) procedure, private :: json_print_to_unit private subroutine json_print_to_unit (json, p, iunit) Author Jacob Williams Date 6/20/2014 Print the json_value structure to a file. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p integer(kind=IK), intent(in) :: iunit the file unit (the file must\nalready have been opened, can’t be -1). procedure, private :: json_rename_by_path private subroutine json_rename_by_path (json, me, path, name, found) Rename a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path path to the variable to rename character(kind=CK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if there were no errors procedure, private :: json_rename_by_path_name_ascii private subroutine json_rename_by_path_name_ascii (json, me, path, name, found) Alternate version of json_rename_by_path , where “name” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path character(kind=CDK, len=*), intent(in) :: name logical(kind=LK), intent(out), optional :: found procedure, private :: json_rename_by_path_path_ascii private subroutine json_rename_by_path_path_ascii (json, me, path, name, found) Alternate version of json_rename_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=*), intent(in) :: name logical(kind=LK), intent(out), optional :: found procedure, private :: json_string_info private subroutine json_string_info (json, p, ilen, max_str_len, found) Author Jacob Williams Date 12/18/2016 Returns information about character strings returned from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(out), optional, dimension(:), allocatable :: ilen if p is an array, this\nis the actual length\nof each character\nstring in the array.\nif not an array, this\nis returned unallocated. integer(kind=IK), intent(out), optional :: max_str_len The maximum length required to\nhold the string representation returned\nby a call to a get routine. If a scalar,\nthis is just the length of the scalar. If\na vector, this is the maximum length of\nany element. logical(kind=LK), intent(out), optional :: found true if there were no errors.\nif not present, an error will\nthrow an exception procedure, private :: json_throw_exception private subroutine json_throw_exception (json, msg, found) Author Jacob Williams Date 12/4/2013 Throw an exception in the json_core .\n This routine sets the error flag, and prevents any subsequent routine\n from doing anything, until json_clear_exceptions is called. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CK, len=*), intent(in) :: msg the error message logical(kind=LK), intent(inout), optional :: found if the caller is handling the\nexception with an optimal return\nargument. If so, json%stop_on_error is ignored. procedure, private :: json_update_integer private subroutine json_update_integer (json, p, path, val, found) Author Jacob Williams Date 12/6/2014 Given the path string, if the variable is present,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure integer(kind=IK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. procedure, private :: json_update_logical private subroutine json_update_logical (json, p, path, val, found) Author Jacob Williams Date 12/6/2014 Given the path string, if the variable is present,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure logical(kind=LK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. procedure, private :: json_update_real private subroutine json_update_real (json, p, path, val, found) Author Jacob Williams Date 12/6/2014 Given the path string, if the variable is present,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure real(kind=RK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. procedure, private :: json_update_real32 private subroutine json_update_real32 (json, p, path, val, found) Alternate version of json_update_real , where val is real32 . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure real(kind=real32), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. procedure, private :: json_update_string private subroutine json_update_string (json, p, path, val, found, trim_str, adjustl_str) Author Jacob Williams Date 12/6/2014 Given the path string, if the variable is present,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure character(kind=CK, len=*), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) procedure, private :: json_update_string_name_ascii private subroutine json_update_string_name_ascii (json, p, path, val, found, trim_str, adjustl_str) Alternate version of json_update_string , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure character(kind=CK, len=*), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) procedure, private :: json_update_string_val_ascii private subroutine json_update_string_val_ascii (json, p, path, val, found, trim_str, adjustl_str) Alternate version of json_update_string , where val is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure character(kind=CDK, len=*), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) procedure, private :: json_valid_path private function json_valid_path (json, p, path) result(found) Returns true if the path is present in the p JSON structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable Return Value logical(kind=LK) true if it was found procedure, private :: json_value_add_integer private subroutine json_value_add_integer (json, p, name, val) Author Jacob Williams Date 1/20/2014 Add an integer value child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name integer(kind=IK), intent(in) :: val procedure, private :: json_value_add_integer_vec private subroutine json_value_add_integer_vec (json, p, name, val) Author Jacob Williams Date 1/20/2014 Add a integer vector child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the variable integer(kind=IK), intent(in), dimension(:) :: val value procedure, private :: json_value_add_logical private subroutine json_value_add_logical (json, p, name, val) Author Jacob Williams Date 1/20/2014 Add a logical value child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the variable logical(kind=LK), intent(in) :: val value procedure, private :: json_value_add_logical_vec private subroutine json_value_add_logical_vec (json, p, name, val) Author Jacob Williams Date 1/20/2014 Add a logical vector child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the vector logical(kind=LK), intent(in), dimension(:) :: val value procedure, private :: json_value_add_member private subroutine json_value_add_member (json, p, member) Adds member as a child of p . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p p must be a json_object or a json_array type( json_value ), pointer :: member the child member\nto add to p procedure, private :: json_value_add_null private subroutine json_value_add_null (json, p, name) Add a NULL value child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name procedure, private :: json_value_add_real private subroutine json_value_add_real (json, p, name, val) Author Jacob Williams Date 1/19/2014 Add a real value child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name variable name real(kind=RK), intent(in) :: val real value procedure, private :: json_value_add_real32 private subroutine json_value_add_real32 (json, p, name, val) Alternate version of json_value_add_real where val is real32 . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name variable name real(kind=real32), intent(in) :: val real value procedure, private :: json_value_add_real32_vec private subroutine json_value_add_real32_vec (json, p, name, val) Alternate version of json_value_add_real_vec where val is real32 . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name real(kind=real32), intent(in), dimension(:) :: val procedure, private :: json_value_add_real_vec private subroutine json_value_add_real_vec (json, p, name, val) Author Jacob Williams Date 1/20/2014 Add a real vector child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name real(kind=RK), intent(in), dimension(:) :: val procedure, private :: json_value_add_string private subroutine json_value_add_string (json, p, name, val, trim_str, adjustl_str) Author Jacob Williams Date 1/19/2014 Add a character string child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the variable character(kind=CK, len=*), intent(in) :: val value logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val procedure, private :: json_value_add_string_name_ascii private subroutine json_value_add_string_name_ascii (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable character(kind=CK, len=*), intent(in) :: val value logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val procedure, private :: json_value_add_string_val_ascii private subroutine json_value_add_string_val_ascii (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string where val is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the variable character(kind=CDK, len=*), intent(in) :: val value logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val procedure, private :: json_value_add_string_vec private subroutine json_value_add_string_vec (json, p, name, val, trim_str, adjustl_str) Author Jacob Williams Date 1/19/2014 Add a character string vector child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name variable name character(kind=CK, len=*), intent(in), dimension(:) :: val array of strings logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element procedure, private :: json_value_add_string_vec_name_ascii private subroutine json_value_add_string_vec_name_ascii (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string_vec where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name character(kind=CK, len=*), intent(in), dimension(:) :: val logical(kind=LK), intent(in), optional :: trim_str logical(kind=LK), intent(in), optional :: adjustl_str procedure, private :: json_value_add_string_vec_val_ascii private subroutine json_value_add_string_vec_val_ascii (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string_vec where val is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name character(kind=CDK, len=*), intent(in), dimension(:) :: val logical(kind=LK), intent(in), optional :: trim_str logical(kind=LK), intent(in), optional :: adjustl_str procedure, private, nopass :: json_value_clone_func private recursive subroutine json_value_clone_func (from, to, parent, previous, tail) Author Jacob Williams Date 10/31/2015 Recursive deep copy function called by json_clone . Read more… Arguments Type Intent Optional Attributes Name type( json_value ), pointer :: from this is the structure to clone type( json_value ), pointer :: to the clone is put here (it\nmust not already be associated) type( json_value ), optional, pointer :: parent to%parent type( json_value ), optional, pointer :: previous to%previous logical, optional :: tail if “to” is the tail of\nits parent’s children procedure, private :: json_value_create_array private subroutine json_value_create_array (json, p, name) Author Jacob Williams Allocate a json_value pointer and make it an array variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name procedure, private :: json_value_create_integer private subroutine json_value_create_integer (json, p, val, name) Author Jacob Williams Allocate a json_value pointer and make it an integer(IK) variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(in) :: val character(kind=CK, len=*), intent(in) :: name procedure, private :: json_value_create_logical private subroutine json_value_create_logical (json, p, val, name) Author Jacob Williams Allocate a json_value pointer and make it a logical(LK) variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p logical(kind=LK), intent(in) :: val variable value character(kind=CK, len=*), intent(in) :: name variable name procedure, private :: json_value_create_null private subroutine json_value_create_null (json, p, name) Author Jacob Williams Allocate a json_value pointer and make it a null variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name procedure, private :: json_value_create_object private subroutine json_value_create_object (json, p, name) Author Jacob Williams Allocate a json_value pointer and make it an object variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name procedure, private :: json_value_create_real private subroutine json_value_create_real (json, p, val, name) Author Jacob Williams Allocate a json_value pointer and make it a real(RK) variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=RK), intent(in) :: val character(kind=CK, len=*), intent(in) :: name procedure, private :: json_value_create_real32 private subroutine json_value_create_real32 (json, p, val, name) Alternate version of json_value_create_real where val=real32. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=real32), intent(in) :: val character(kind=CK, len=*), intent(in) :: name procedure, private :: json_value_create_string private subroutine json_value_create_string (json, p, val, name, trim_str, adjustl_str) Author Jacob Williams Allocate a json_value pointer and make it a string variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: val character(kind=CK, len=*), intent(in) :: name logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val procedure, private :: json_value_destroy private pure recursive subroutine json_value_destroy (json, p, destroy_next) Author Jacob Williams Date 1/22/2014 Destroy a json_value linked-list structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p variable to destroy logical(kind=LK), intent(in), optional :: destroy_next if true, then p%next is also destroyed (default is true) procedure, private :: json_value_get_child private subroutine json_value_get_child (json, p, child) Returns pointer to the first child of the object\n(or null() if it is not associated). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p object or array JSON data type( json_value ), pointer :: child pointer to the child procedure, private :: json_value_get_child_by_index private subroutine json_value_get_child_by_index (json, p, idx, child, found) Returns a child in the object or array given the index. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p object or array JSON data integer(kind=IK), intent(in) :: idx index of the child\n(this is a 1-based Fortran\nstyle array index). type( json_value ), pointer :: child pointer to the child logical(kind=LK), intent(out), optional :: found true if the value was found\n(if not present, an exception\nwill be thrown if it was not\nfound. If present and not\nfound, no exception will be\nthrown). procedure, private :: json_value_get_child_by_name private subroutine json_value_get_child_by_name (json, p, name, child, found) Returns a child in the object or array given the name string. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CK, len=*), intent(in) :: name the name of a child of p type( json_value ), pointer :: child pointer to the child logical(kind=LK), intent(out), optional :: found true if the value was found\n(if not present, an exception\nwill be thrown if it was not\nfound. If present and not\nfound, no exception will be\nthrown). procedure, private :: json_value_insert_after private subroutine json_value_insert_after (json, p, element) Inserts element after p , and updates the JSON structure accordingly. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a value from a JSON structure\n(presumably, this is a child of\nan object or array). type( json_value ), pointer :: element the element to insert after p procedure, private :: json_value_insert_after_child_by_index private subroutine json_value_insert_after_child_by_index (json, p, idx, element) Inserts element after the idx -th child of p ,\nand updates the JSON structure accordingly. This is just\na wrapper for json_value_insert_after . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a JSON object or array. integer(kind=IK), intent(in) :: idx the index of the child of p to\ninsert the new element after\n(this is a 1-based Fortran\nstyle array index) type( json_value ), pointer :: element the element to insert procedure, private :: json_value_print private recursive subroutine json_value_print (json, p, iunit, str, indent, need_comma, colon, is_array_element, is_compressed_vector, iloc) Print the JSON structure to a string or a file. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p integer(kind=IK), intent(in) :: iunit file unit to write to (the\nfile is assumed to be open) character(kind=CK, len=:), intent(inout), allocatable :: str if iunit==unit2str (-1) then\nthe structure is printed to this\nstring rather than a file. This mode\nis used by json_value_to_string . integer(kind=IK), intent(in), optional :: indent indention level logical(kind=LK), intent(in), optional :: need_comma if it needs a comma after it logical(kind=LK), intent(in), optional :: colon if the colon was just written logical(kind=LK), intent(in), optional :: is_array_element if this is an array element logical(kind=LK), intent(in), optional :: is_compressed_vector if True, this is an element\nfrom an array being printed\non one line [default is False] integer(kind=IK), intent(inout) :: iloc current index in str . should be set to 0 initially.\n[only used when str is used.] procedure, private :: json_value_remove_if_present private subroutine json_value_remove_if_present (json, p, path) Author Jacob Williams Date 12/6/2014 Given the path string, remove the variable\nfrom json_value , if it exists. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path the path to the variable to remove procedure, private :: json_value_rename private subroutine json_value_rename (json, p, name) Author Jacob Williams Date 4/29/2016 Rename a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CK, len=*), intent(in) :: name new variable name generic, public :: load => json_parse_file Parse the JSON file and populate the json_value tree. private subroutine json_parse_file (json, file, p, unit) Parse the JSON file and populate the json_value tree. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CDK, len=*), intent(in) :: file JSON file name type( json_value ), pointer :: p output structure integer(kind=IK), intent(in), optional :: unit file unit number (/= 0) generic, public :: matrix_info => json_matrix_info , json_matrix_info_by_path , wrap_json_matrix_info_by_path get matrix info about a json_value private subroutine json_matrix_info (json, p, is_matrix, var_type, n_sets, set_size, name) Author Jacob Williams Date 10/16/2015 Alternate version of json_info that returns matrix\n information about a json_value . Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a JSON linked list logical(kind=LK), intent(out) :: is_matrix true if it is a valid matrix integer(kind=IK), intent(out), optional :: var_type variable type of data in the matrix\n(if all elements have the same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name private subroutine json_matrix_info_by_path (json, p, path, is_matrix, found, var_type, n_sets, set_size, name) Returns matrix information about a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a JSON linked list character(kind=CK, 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\nthe matrix (if all elements have\nthe same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name private subroutine wrap_json_matrix_info_by_path (json, p, path, is_matrix, found, var_type, n_sets, set_size, name) Alternate version of json_matrix_info_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a JSON linked list 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\nthe matrix (if all elements have\nthe same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name procedure, private :: name_equal private function name_equal (json, p, name) result(is_equal) Author Jacob Williams Returns true if name is equal to p%name , using the specified\n settings for case sensitivity and trailing whitespace. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in) :: p the json object character(kind=CK, len=*), intent(in) :: name the name to check for Return Value logical(kind=LK) true if the string are\nlexically equal procedure, private :: name_strings_equal private function name_strings_equal (json, name1, name2) result(is_equal) Author Jacob Williams Date 8/25/2017 Returns true if the name strings name1 is equal to name2 , using\nthe specified settings for case sensitivity and trailing whitespace. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CK, len=*), intent(in) :: name1 the name to check character(kind=CK, len=*), intent(in) :: name2 the name to check Return Value logical(kind=LK) true if the string are\nlexically equal generic, public :: parse => json_parse_file , json_parse_string , wrap_json_parse_string Same as load and deserialize but only here for backward compatibility. private subroutine json_parse_file (json, file, p, unit) Parse the JSON file and populate the json_value tree. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CDK, len=*), intent(in) :: file JSON file name type( json_value ), pointer :: p output structure integer(kind=IK), intent(in), optional :: unit file unit number (/= 0) private subroutine json_parse_string (json, p, str) Parse the JSON string and populate the json_value tree. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p output structure character(kind=CK, len=*), intent(in) :: str string with JSON data private subroutine wrap_json_parse_string (json, p, str) Alternate version of json_parse_string , where str is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p output structure character(kind=CDK, len=*), intent(in) :: str string with JSON data procedure, private :: parse_array private recursive subroutine parse_array (json, unit, str, array) Core parsing routine. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if parsing from a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing from a string) type( json_value ), pointer :: array procedure, private :: parse_end => json_parse_end private subroutine json_parse_end (json, unit, str) An error checking routine to call after a file (or string) has been parsed.\nIt will throw an exception if there are any other non-whitespace characters\nin the file. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number character(kind=CK, len=*), intent(in) :: str string containing JSON data (only used if unit=0 ) procedure, private :: parse_for_chars private subroutine parse_for_chars (json, unit, str, chars) Core parsing routine. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if parsing from a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing from a string) character(kind=CK, len=*), intent(in) :: chars the string to check for. procedure, private :: parse_number private subroutine parse_number (json, unit, str, value) Author Jacob Williams Date 1/20/2014 Read a numerical value from the file (or string).\n The routine will determine if it is an integer or a real, and\n allocate the type accordingly. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if parsing from a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing from a string) type( json_value ), pointer :: value procedure, private :: parse_object private recursive subroutine parse_object (json, unit, str, parent, expecting_next_element) Core parsing routine. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if parsing from a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing from a string) type( json_value ), pointer :: parent the parsed object will be added as a child of this logical(kind=LK), intent(in) :: expecting_next_element if true, this object is preceeded by a comma, so\nwe expect a valid object to exist. used to check\nfor trailing delimiters. procedure, private :: parse_string private subroutine parse_string (json, unit, str, string) Parses a string while reading a JSON file. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if\nparsing from a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing\nfrom a string) character(kind=CK, len=:), intent(out), allocatable :: string the string (unescaped\nif necessary) procedure, private :: parse_value private recursive subroutine parse_value (json, unit, str, value) Core parsing routine. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number character(kind=CK, len=*), intent(in) :: str string containing JSON data (only used if unit=0 ) type( json_value ), pointer :: value JSON data that is extracted procedure, private :: pop_char private subroutine pop_char (json, unit, str, skip_ws, skip_comments, eof, popped) Get the next character from the file (or string). Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if parsing\nfrom a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing from a\nstring) – only used if unit=0 logical(kind=LK), intent(in), optional :: skip_ws to ignore whitespace [default False] logical(kind=LK), intent(in), optional :: skip_comments to ignore comment lines [default False] logical(kind=LK), intent(out) :: eof true if the end of the file has\nbeen reached. character(kind=CK, len=1), intent(out) :: popped the popped character returned procedure, private :: prepare_parser => json_prepare_parser private subroutine json_prepare_parser (json) Internal routine to be called before parsing JSON .\nCurrently, all this does it allocate the comment_char if none was specified. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json generic, public :: print => json_print_to_console , json_print_to_unit , json_print_to_filename Print the json_value to an output unit or file. Example type ( json_core ) :: json type ( json_value ) :: p !... call json % print ( p , 'test.json' ) !this is [[json_print_to_filename]] private subroutine json_print_to_console (json, p) Print the json_value structure to the console ( output_unit ). Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p private subroutine json_print_to_unit (json, p, iunit) Author Jacob Williams Date 6/20/2014 Print the json_value structure to a file. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p integer(kind=IK), intent(in) :: iunit the file unit (the file must\nalready have been opened, can’t be -1). private subroutine json_print_to_filename (json, p, filename) Author Jacob Williams Date 12/23/2014 Print the json_value structure to a file. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CDK, len=*), intent(in) :: filename the filename to print to\n(should not already be open) procedure, public :: print_error_message => json_print_error_message simply routine to print error\nmessages private subroutine json_print_error_message (json, io_unit) Author Jacob Williams Print any error message, and then clear the exceptions. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer, intent(in), optional :: io_unit unit number for\nprinting error message procedure, public :: print_to_string => json_value_to_string The same as serialize , but only here for backward compatibility private subroutine json_value_to_string (json, p, str) Author Jacob Williams Date 2/12/2014 Print the json_value structure to an allocatable string. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CK, len=:), intent(out), allocatable :: str prints structure to this string procedure, private :: push_char private subroutine push_char (json, c) Core routine. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CK, len=1), intent(in) :: c to character to push procedure, public :: remove => json_value_remove Remove a json_value from a\nlinked-list structure. private subroutine json_value_remove (json, p, destroy) Author Jacob Williams Date 9/9/2014 Remove a json_value (and all its children)\n from a linked-list structure, preserving the rest of the structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p logical(kind=LK), intent(in), optional :: destroy Option to destroy p after it is removed: Read more… generic, public :: remove_if_present => json_value_remove_if_present , wrap_json_value_remove_if_present If the child variable is present, then remove it. private subroutine json_value_remove_if_present (json, p, path) Author Jacob Williams Date 12/6/2014 Given the path string, remove the variable\nfrom json_value , if it exists. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path the path to the variable to remove private subroutine wrap_json_value_remove_if_present (json, p, path) Alternate version of json_value_remove_if_present , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path generic, public :: rename => json_value_rename , wrap_json_value_rename , json_rename_by_path , wrap_json_rename_by_path Rename a json_value variable. private subroutine json_value_rename (json, p, name) Author Jacob Williams Date 4/29/2016 Rename a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CK, len=*), intent(in) :: name new variable name private subroutine wrap_json_value_rename (json, p, name) Author Jacob Williams Date 4/29/2016 Alternate version of json_value_rename , where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CDK, len=*), intent(in) :: name new variable name private subroutine json_rename_by_path (json, me, path, name, found) Rename a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path path to the variable to rename character(kind=CK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if there were no errors private subroutine wrap_json_rename_by_path (json, me, path, name, found) Alternate version of json_rename_by_path , where “path” and “name” are kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CDK, len=*), intent(in) :: name logical(kind=LK), intent(out), optional :: found generic, public :: rename => json_rename_by_path_name_ascii , json_rename_by_path_path_ascii private subroutine json_rename_by_path_name_ascii (json, me, path, name, found) Alternate version of json_rename_by_path , where “name” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path character(kind=CDK, len=*), intent(in) :: name logical(kind=LK), intent(out), optional :: found private subroutine json_rename_by_path_path_ascii (json, me, path, name, found) Alternate version of json_rename_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=*), intent(in) :: name logical(kind=LK), intent(out), optional :: found procedure, public :: replace => json_value_replace Replace a json_value in a\nlinked-list structure. private subroutine json_value_replace (json, p1, p2, destroy) Replace p1 with p2 in a JSON structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p1 the item to replace type( json_value ), pointer :: p2 item to take the place of p1 logical(kind=LK), intent(in), optional :: destroy Should p1 also be destroyed\n(default is True). Normally,\nthis should be true to avoid\na memory leak. procedure, public :: reverse => json_value_reverse Reverse the order of the children\nof an array of object. private subroutine json_value_reverse (json, p) Author Jacob Williams Date 4/11/2017 Reverse the order of the children of an array or object. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p procedure, public :: serialize => json_value_to_string Print the json_value structure to an allocatable string private subroutine json_value_to_string (json, p, str) Author Jacob Williams Date 2/12/2014 Print the json_value structure to an allocatable string. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CK, len=:), intent(out), allocatable :: str prints structure to this string generic, public :: string_info => json_string_info get string info about a json_value private subroutine json_string_info (json, p, ilen, max_str_len, found) Author Jacob Williams Date 12/18/2016 Returns information about character strings returned from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(out), optional, dimension(:), allocatable :: ilen if p is an array, this\nis the actual length\nof each character\nstring in the array.\nif not an array, this\nis returned unallocated. integer(kind=IK), intent(out), optional :: max_str_len The maximum length required to\nhold the string representation returned\nby a call to a get routine. If a scalar,\nthis is just the length of the scalar. If\na vector, this is the maximum length of\nany element. logical(kind=LK), intent(out), optional :: found true if there were no errors.\nif not present, an error will\nthrow an exception procedure, private :: string_to_dble private function string_to_dble (json, str) result(rval) Convert a string into a real(RK) value. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CK, len=*), intent(in) :: str a string Return Value real(kind=RK) str converted to a real(RK) procedure, private :: string_to_int private function string_to_int (json, str) result(ival) Convert a string into an integer. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CK, len=*), intent(in) :: str a string Return Value integer(kind=IK) str converted to an integer procedure, public :: swap => json_value_swap Swap two json_value pointers\nin a structure (or two different\nstructures). private subroutine json_value_swap (json, p1, p2) Author Jacob Williams Date 4/26/2016 Swap two elements in a JSON structure.\n All of the children are carried along as well. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p1 swap with p2 type( json_value ), pointer :: p2 swap with p1 generic, public :: throw_exception => json_throw_exception , wrap_json_throw_exception Throw an exception. private subroutine json_throw_exception (json, msg, found) Author Jacob Williams Date 12/4/2013 Throw an exception in the json_core .\n This routine sets the error flag, and prevents any subsequent routine\n from doing anything, until json_clear_exceptions is called. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CK, len=*), intent(in) :: msg the error message logical(kind=LK), intent(inout), optional :: found if the caller is handling the\nexception with an optimal return\nargument. If so, json%stop_on_error is ignored. private subroutine wrap_json_throw_exception (json, msg, found) Alternate version of json_throw_exception , where msg is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CDK, len=*), intent(in) :: msg the error message logical(kind=LK), intent(inout), optional :: found if the caller is handling the\nexception with an optimal return\nargument. If so, json%stop_on_error is ignored. procedure, private :: to_array private subroutine to_array (json, p, name) Author Jacob Williams Change the json_value variable to an array. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. procedure, private :: to_integer private subroutine to_integer (json, p, val, name) Author Jacob Williams Change the json_value variable to an integer. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(in), optional :: val if the value is also to be set\n(if not present, then 0 is used). character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. procedure, private :: to_logical private subroutine to_logical (json, p, val, name) Author Jacob Williams Change the json_value variable to a logical. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p logical(kind=LK), intent(in), optional :: val if the value is also to be set\n(if not present, then .false. is used). character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. procedure, private :: to_null private subroutine to_null (json, p, name) Author Jacob Williams Change the json_value variable to a null. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. procedure, private :: to_object private subroutine to_object (json, p, name) Author Jacob Williams Change the json_value variable to an object. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. procedure, private :: to_real private subroutine to_real (json, p, val, name) Author Jacob Williams Change the json_value variable to a real. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=RK), intent(in), optional :: val if the value is also to be set\n(if not present, then 0.0_rk is used). character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. procedure, private :: to_string private subroutine to_string (json, p, val, name, trim_str, adjustl_str) Author Jacob Williams Change the json_value variable to a string. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in), optional :: val if the value is also to be set\n(if not present, then ‘’ is used). character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) procedure, public :: traverse => json_traverse to traverse all elements of a JSON structure private subroutine json_traverse (json, p, traverse_callback) Author Jacob Williams Date 4/28/2016 Traverse a JSON structure.\nThis routine calls the user-specified json_traverse_callback_func for each element of the structure. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p procedure( json_traverse_callback_func ) :: traverse_callback generic, public :: update => json_update_logical , wrap_json_update_logical , json_update_real32 , wrap_json_update_real32 , json_update_real , wrap_json_update_real , json_update_integer , wrap_json_update_integer , json_update_string , wrap_json_update_string These are like the add methods, except if a variable with the\n same path is already present, then its value is simply updated.\n Note that currently, these only work for scalar variables.\n These routines can also change the variable’s type (but an error will be\n thrown if the existing variable is not a scalar). See also add_by_path - this one can be used to change\n arrays and objects to scalars if so desired. Note Unlike some routines, the found output is not optional,\n so it doesn’t present exceptions from being thrown. Note These have been mostly supplanted by the add_by_path methods, which do a similar thing (and can be used for\n scalars and vectors, etc.) private subroutine json_update_logical (json, p, path, val, found) Author Jacob Williams Date 12/6/2014 Given the path string, if the variable is present,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure logical(kind=LK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. private subroutine wrap_json_update_logical (json, p, path, val, found) Alternate version of json_update_logical , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure logical(kind=LK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. private subroutine json_update_real32 (json, p, path, val, found) Alternate version of json_update_real , where val is real32 . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure real(kind=real32), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. private subroutine wrap_json_update_real32 (json, p, path, val, found) Alternate version of json_update_real32 , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure real(kind=real32), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. private subroutine json_update_real (json, p, path, val, found) Author Jacob Williams Date 12/6/2014 Given the path string, if the variable is present,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure real(kind=RK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. private subroutine wrap_json_update_real (json, p, path, val, found) Alternate version of json_update_real , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure real(kind=RK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. private subroutine json_update_integer (json, p, path, val, found) Author Jacob Williams Date 12/6/2014 Given the path string, if the variable is present,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure integer(kind=IK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. private subroutine wrap_json_update_integer (json, p, path, val, found) Alternate version of json_update_integer , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure integer(kind=IK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. private subroutine json_update_string (json, p, path, val, found, trim_str, adjustl_str) Author Jacob Williams Date 12/6/2014 Given the path string, if the variable is present,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure character(kind=CK, len=*), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) private subroutine wrap_json_update_string (json, p, path, val, found, trim_str, adjustl_str) Alternate version of json_update_string , where path and value are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure character(kind=CDK, len=*), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) generic, public :: update => json_update_string_name_ascii , json_update_string_val_ascii private subroutine json_update_string_name_ascii (json, p, path, val, found, trim_str, adjustl_str) Alternate version of json_update_string , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure character(kind=CK, len=*), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) private subroutine json_update_string_val_ascii (json, p, path, val, found, trim_str, adjustl_str) Alternate version of json_update_string , where val is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure character(kind=CDK, len=*), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) generic, public :: valid_path => json_valid_path , wrap_json_valid_path verify if a path is valid\n(i.e., a variable with this path exists in the file). private function json_valid_path (json, p, path) result(found) Returns true if the path is present in the p JSON structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable Return Value logical(kind=LK) true if it was found private function wrap_json_valid_path (json, p, path) result(found) Alternate version of json_valid_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list character(kind=CDK, len=*), intent(in) :: path path to the variable Return Value logical(kind=LK) true if it was found procedure, public :: validate => json_value_validate Check that a json_value linked\nlist is valid (i.e., is properly\nconstructed). This may be useful\nif it has been constructed externally. private subroutine json_value_validate (json, p, is_valid, error_msg) Author Jacob Williams Date 5/2/2016 Validate a json_value linked list by checking to make sure\n all the pointers are properly associated, arrays and objects\n have the correct number of children, and the correct data is\n allocated for the variable types. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p logical(kind=LK), intent(out) :: is_valid True if the structure is valid. character(kind=CK, len=:), intent(out), allocatable :: error_msg if not valid, this will contain\na description of the problem procedure, private :: wrap_json_add_integer_by_path private subroutine wrap_json_add_integer_by_path (json, me, path, value, found, was_created) Wrapper to json_add_integer_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: wrap_json_add_integer_vec_by_path private subroutine wrap_json_add_integer_vec_by_path (json, me, path, value, found, was_created) Wrapper for json_add_integer_vec_by_path where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: wrap_json_add_logical_by_path private subroutine wrap_json_add_logical_by_path (json, me, path, value, found, was_created) Wrapper to json_add_logical_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: wrap_json_add_logical_vec_by_path private subroutine wrap_json_add_logical_vec_by_path (json, me, path, value, found, was_created) Wrapper for json_add_logical_vec_by_path where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: wrap_json_add_member_by_path private subroutine wrap_json_add_member_by_path (json, me, path, p, found, was_created) Wrapper to json_add_member_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(in), pointer :: p the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: wrap_json_add_real32_by_path private subroutine wrap_json_add_real32_by_path (json, me, path, value, found, was_created) Wrapper to json_add_real32_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: wrap_json_add_real32_vec_by_path private subroutine wrap_json_add_real32_vec_by_path (json, me, path, value, found, was_created) Wrapper for json_add_real32_vec_by_path where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: wrap_json_add_real_by_path private subroutine wrap_json_add_real_by_path (json, me, path, value, found, was_created) Wrapper to json_add_real_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: wrap_json_add_real_vec_by_path private subroutine wrap_json_add_real_vec_by_path (json, me, path, value, found, was_created) Wrapper for json_add_real_vec_by_path where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: wrap_json_add_string_by_path private subroutine wrap_json_add_string_by_path (json, me, path, value, found, was_created, trim_str, adjustl_str) Wrapper to json_add_string_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element procedure, private :: wrap_json_add_string_vec_by_path private subroutine wrap_json_add_string_vec_by_path (json, me, path, value, found, was_created, ilen, trim_str, adjustl_str) Wrapper for json_add_string_vec_by_path where “path” and “value” are kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element procedure, private :: wrap_json_create_by_path private subroutine wrap_json_create_by_path (json, me, path, p, found, was_created) Alternate version of json_create_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CDK, len=*), intent(in) :: path path to the variable type( json_value ), intent(out), optional, pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if there were no errors\n(variable found or created) logical(kind=LK), intent(out), optional :: was_created true if it was actually created\n(as opposed to already being there) procedure, private :: wrap_json_get_alloc_string_vec_by_path private subroutine wrap_json_get_alloc_string_vec_by_path (json, me, path, vec, ilen, found, default, default_ilen) Alternate version of json_get_alloc_string_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default integer(kind=IK), intent(in), optional, dimension(:) :: default_ilen the actual\nlength of default procedure, private :: wrap_json_get_array_by_path private recursive subroutine wrap_json_get_array_by_path (json, me, path, array_callback, found) Alternate version of json_get_array_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path procedure( json_array_callback_func ) :: array_callback logical(kind=LK), intent(out), optional :: found procedure, private :: wrap_json_get_by_path private subroutine wrap_json_get_by_path (json, me, path, p, found) Alternate version of json_get_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path type( json_value ), intent(out), pointer :: p logical(kind=LK), intent(out), optional :: found procedure, private :: wrap_json_get_integer_by_path private subroutine wrap_json_get_integer_by_path (json, me, path, value, found, default) Alternate version of json_get_integer_by_path , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path integer(kind=IK), intent(out) :: value logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(in), optional :: default default value if not found procedure, private :: wrap_json_get_integer_vec_by_path private subroutine wrap_json_get_integer_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_integer_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path integer(kind=IK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(in), optional, dimension(:) :: default default value if not found procedure, private :: wrap_json_get_logical_by_path private subroutine wrap_json_get_logical_by_path (json, me, path, value, found, default) Alternate version of json_get_logical_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path logical(kind=LK), intent(out) :: value logical(kind=LK), intent(out), optional :: found logical(kind=LK), intent(in), optional :: default default value if not found procedure, private :: wrap_json_get_logical_vec_by_path private subroutine wrap_json_get_logical_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_logical_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path logical(kind=LK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found logical(kind=LK), intent(in), optional, dimension(:) :: default procedure, private :: wrap_json_get_path private subroutine wrap_json_get_path (json, p, path, found, use_alt_array_tokens, path_sep) Wrapper for json_get_path where “path” and “path_sep” are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list object character(kind=CDK, len=:), intent(out), allocatable :: path path to the variable logical(kind=LK), intent(out), optional :: found true if there were no problems logical(kind=LK), intent(in), optional :: use_alt_array_tokens if true, then ‘()’ are used\nfor array elements otherwise,\n‘[]’ are used [default] character(kind=CDK, len=1), intent(in), optional :: path_sep character to use for path\nseparator (default is ‘.’) procedure, private :: wrap_json_get_real32_by_path private subroutine wrap_json_get_real32_by_path (json, me, path, value, found, default) Alternate version of json_get_real32_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path real(kind=real32), intent(out) :: value logical(kind=LK), intent(out), optional :: found real(kind=real32), intent(in), optional :: default default value if not found procedure, private :: wrap_json_get_real32_vec_by_path private subroutine wrap_json_get_real32_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_real32_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path real(kind=real32), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found real(kind=real32), intent(in), optional, dimension(:) :: default default value if not found procedure, private :: wrap_json_get_real_by_path private subroutine wrap_json_get_real_by_path (json, me, path, value, found, default) Alternate version of json_get_real_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path real(kind=RK), intent(out) :: value logical(kind=LK), intent(out), optional :: found real(kind=RK), intent(in), optional :: default default value if not found procedure, private :: wrap_json_get_real_vec_by_path private subroutine wrap_json_get_real_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_real_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path real(kind=RK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found real(kind=RK), intent(in), optional, dimension(:) :: default default value if not found procedure, private :: wrap_json_get_string_by_path private subroutine wrap_json_get_string_by_path (json, me, path, value, found, default) Alternate version of json_get_string_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=:), intent(out), allocatable :: value logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional :: default procedure, private :: wrap_json_get_string_vec_by_path private subroutine wrap_json_get_string_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_string_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default procedure, private :: wrap_json_info_by_path private subroutine wrap_json_info_by_path (json, p, path, found, var_type, n_children, name) Alternate version of json_info_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list character(kind=CDK, len=*), intent(in) :: path path to the variable logical(kind=LK), intent(out), optional :: found true if it was found integer(kind=IK), intent(out), optional :: var_type variable type integer(kind=IK), intent(out), optional :: n_children number of children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name procedure, private :: wrap_json_matrix_info_by_path private subroutine wrap_json_matrix_info_by_path (json, p, path, is_matrix, found, var_type, n_sets, set_size, name) Alternate version of json_matrix_info_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a JSON linked list 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\nthe matrix (if all elements have\nthe same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name procedure, private :: wrap_json_parse_string private subroutine wrap_json_parse_string (json, p, str) Alternate version of json_parse_string , where str is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p output structure character(kind=CDK, len=*), intent(in) :: str string with JSON data procedure, private :: wrap_json_rename_by_path private subroutine wrap_json_rename_by_path (json, me, path, name, found) Alternate version of json_rename_by_path , where “path” and “name” are kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CDK, len=*), intent(in) :: name logical(kind=LK), intent(out), optional :: found procedure, private :: wrap_json_throw_exception private subroutine wrap_json_throw_exception (json, msg, found) Alternate version of json_throw_exception , where msg is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CDK, len=*), intent(in) :: msg the error message logical(kind=LK), intent(inout), optional :: found if the caller is handling the\nexception with an optimal return\nargument. If so, json%stop_on_error is ignored. procedure, private :: wrap_json_update_integer private subroutine wrap_json_update_integer (json, p, path, val, found) Alternate version of json_update_integer , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure integer(kind=IK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. procedure, private :: wrap_json_update_logical private subroutine wrap_json_update_logical (json, p, path, val, found) Alternate version of json_update_logical , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure logical(kind=LK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. procedure, private :: wrap_json_update_real private subroutine wrap_json_update_real (json, p, path, val, found) Alternate version of json_update_real , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure real(kind=RK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. procedure, private :: wrap_json_update_real32 private subroutine wrap_json_update_real32 (json, p, path, val, found) Alternate version of json_update_real32 , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure real(kind=real32), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. procedure, private :: wrap_json_update_string private subroutine wrap_json_update_string (json, p, path, val, found, trim_str, adjustl_str) Alternate version of json_update_string , where path and value are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure character(kind=CDK, len=*), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) procedure, private :: wrap_json_valid_path private function wrap_json_valid_path (json, p, path) result(found) Alternate version of json_valid_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list character(kind=CDK, len=*), intent(in) :: path path to the variable Return Value logical(kind=LK) true if it was found procedure, private :: wrap_json_value_add_integer private subroutine wrap_json_value_add_integer (json, p, name, val) Alternate version of json_value_add_integer where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable integer(kind=IK), intent(in) :: val value procedure, private :: wrap_json_value_add_integer_vec private subroutine wrap_json_value_add_integer_vec (json, p, name, val) Alternate version of json_value_add_integer_vec where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable integer(kind=IK), intent(in), dimension(:) :: val value procedure, private :: wrap_json_value_add_logical private subroutine wrap_json_value_add_logical (json, p, name, val) Alternate version of json_value_add_logical where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable logical(kind=LK), intent(in) :: val value procedure, private :: wrap_json_value_add_logical_vec private subroutine wrap_json_value_add_logical_vec (json, p, name, val) Alternate version of json_value_add_logical_vec where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable logical(kind=LK), intent(in), dimension(:) :: val value procedure, private :: wrap_json_value_add_null private subroutine wrap_json_value_add_null (json, p, name) Alternate version of json_value_add_null where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable procedure, private :: wrap_json_value_add_real private subroutine wrap_json_value_add_real (json, p, name, val) Alternate version of json_value_add_real where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name variable name real(kind=RK), intent(in) :: val real value procedure, private :: wrap_json_value_add_real32 private subroutine wrap_json_value_add_real32 (json, p, name, val) Alternate version of json_value_add_real32 where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name variable name real(kind=real32), intent(in) :: val real value procedure, private :: wrap_json_value_add_real32_vec private subroutine wrap_json_value_add_real32_vec (json, p, name, val) Alternate version of json_value_add_real32_vec where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name real(kind=real32), intent(in), dimension(:) :: val procedure, private :: wrap_json_value_add_real_vec private subroutine wrap_json_value_add_real_vec (json, p, name, val) Alternate version of json_value_add_real_vec where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name real(kind=RK), intent(in), dimension(:) :: val procedure, private :: wrap_json_value_add_string private subroutine wrap_json_value_add_string (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string where name and val are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable character(kind=CDK, len=*), intent(in) :: val value logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val procedure, private :: wrap_json_value_add_string_vec private subroutine wrap_json_value_add_string_vec (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string_vec where name and val are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name character(kind=CDK, len=*), intent(in), dimension(:) :: val logical(kind=LK), intent(in), optional :: trim_str logical(kind=LK), intent(in), optional :: adjustl_str procedure, private :: wrap_json_value_create_array private subroutine wrap_json_value_create_array (json, p, name) Author Izaak Beekman A wrapper for json_value_create_array so that create_array method may be\ncalled with an actual argument, corresponding to the dummy argument name ,\nthat is either of ‘DEFAULT’ or ‘ISO_10646’ character kind. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name procedure, private :: wrap_json_value_create_integer private subroutine wrap_json_value_create_integer (json, p, val, name) Author Izaak Beekman A wrapper procedure for json_value_create_integer so that create_integer method may be called with either a ‘DEFAULT’ or ‘ISO_10646’ character kind name actual argument. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name procedure, private :: wrap_json_value_create_logical private subroutine wrap_json_value_create_logical (json, p, val, name) Author Izaak Beekman Wrapper for json_value_create_logical so create_logical method can\nbe called with name of character kind ‘DEFAULT’ or ‘ISO_10646’ Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p logical(kind=LK), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name procedure, private :: wrap_json_value_create_null private subroutine wrap_json_value_create_null (json, p, name) Author Izaak Beekman Wrap json_value_create_null so that create_null method may be called with\nan actual argument corresponding to the dummy argument name that is either\nof ‘DEFAULT’ or ‘ISO_10646’ character kind. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name procedure, private :: wrap_json_value_create_object private subroutine wrap_json_value_create_object (json, p, name) Author Izaak Beekman Wrap json_value_create_object so that create_object method may be called\nwith an actual argument corresponding to the dummy argument name that is of\neither ‘DEFAULT’ or ‘ISO_10646’ character kind. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name procedure, private :: wrap_json_value_create_real private subroutine wrap_json_value_create_real (json, p, val, name) Author Izaak Beekman A wrapper for json_value_create_real so that create_real method\nmay be called with an actual argument corresponding to the dummy argument, name that may be of ‘DEFAULT’ or ‘ISO_10646’ character kind. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=RK), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name procedure, private :: wrap_json_value_create_real32 private subroutine wrap_json_value_create_real32 (json, p, val, name) Alternate version of json_value_create_real32 where “name” is kind(CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=real32), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name procedure, private :: wrap_json_value_create_string private subroutine wrap_json_value_create_string (json, p, val, name, trim_str, adjustl_str) Author Izaak Beekman Wrap json_value_create_string so that create_string method may be called\nwith actual character string arguments for name and val that are BOTH of\n‘DEFAULT’ or ‘ISO_10646’ character kind. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val procedure, private :: wrap_json_value_get_child_by_name private subroutine wrap_json_value_get_child_by_name (json, p, name, child, found) Alternate version of json_value_get_child_by_name where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CDK, len=*), intent(in) :: name type( json_value ), pointer :: child logical(kind=LK), intent(out), optional :: found procedure, private :: wrap_json_value_remove_if_present private subroutine wrap_json_value_remove_if_present (json, p, path) Alternate version of json_value_remove_if_present , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path procedure, private :: wrap_json_value_rename private subroutine wrap_json_value_rename (json, p, name) Author Jacob Williams Date 4/29/2016 Alternate version of json_value_rename , where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CDK, len=*), intent(in) :: name new variable name Source Code type , public :: json_core private integer ( IK ) :: spaces_per_tab = 2 !! number of spaces for indenting logical ( LK ) :: compact_real = . true . !! to use the \"compact\" form of real !! numbers for output character ( kind = CDK , len = :), allocatable :: real_fmt !! the format string to use !! for converting real numbers to strings. !! It can be set in [[json_initialize]], !! and used in [[json_value_print]] !! If not set, then `default_real_fmt` !! is used instead. logical ( LK ) :: is_verbose = . false . !! if true, all exceptions are !! immediately printed to console. logical ( LK ) :: stop_on_error = . false . !! if true, then the program is !! stopped immediately when an !! exception is raised. logical ( LK ) :: exception_thrown = . false . !! The error flag. Will be set to true !! when an error is thrown in the class. !! Many of the methods will check this !! and return immediately if it is true. character ( kind = CK , len = :), allocatable :: err_message !! the error message. !! if `exception_thrown=False` then !! this variable is not allocated. integer ( IK ) :: char_count = 0 !! character position in the current line integer ( IK ) :: line_count = 1 !! lines read counter integer ( IK ) :: pushed_index = 0 !! used when parsing lines in file character ( kind = CK , len = pushed_char_size ) :: pushed_char = CK_ '' !! used when parsing !! lines in file integer ( IK ) :: ipos = 1 !! for allocatable strings: next character to read logical ( LK ) :: strict_type_checking = . false . !! if true, then no type conversions are done !! in the `get` routines if the actual variable !! type is different from the return type (for !! example, integer to real). logical ( LK ) :: trailing_spaces_significant = . false . !! for name and path comparisons, if trailing !! space is to be considered significant. logical ( LK ) :: case_sensitive_keys = . true . !! if name and path comparisons !! are case sensitive. logical ( LK ) :: no_whitespace = . false . !! when printing a JSON string, don't include !! non-significant spaces or line breaks. !! If true, the entire structure will be !! printed on one line. logical ( LK ) :: unescaped_strings = . true . !! If false, then the escaped !! string is returned from [[json_get_string]] !! and similar routines. If true [default], !! then the string is returned unescaped. logical ( LK ) :: allow_comments = . true . !! if true, any comments will be ignored when !! parsing a file. The comment tokens are defined !! by the `comment_char` character variable. character ( kind = CK , len = :), allocatable :: comment_char !! comment tokens when !! `allow_comments` is true. !! Examples: '`!`' or '`#`'. !! Default is `CK_'/!#'`. integer ( IK ) :: path_mode = 1_IK !! How the path strings are interpreted in the !! `get_by_path` routines: !! !! * 1 -- Default mode (see [[json_get_by_path_default]]) !! * 2 -- as RFC 6901 \"JSON Pointer\" paths !! (see [[json_get_by_path_rfc6901]]) !! * 3 -- JSONPath \"bracket-notation\" !! see [[json_get_by_path_jsonpath_bracket]]) character ( kind = CK , len = 1 ) :: path_separator = dot !! The `path` separator to use !! in the \"default\" mode for !! the paths in the various !! `get_by_path` routines. !! Note: if `path_mode/=1` !! then this is ignored. logical ( LK ) :: compress_vectors = . false . !! If true, then arrays of integers, !! nulls, reals, & logicals are !! printed all on one line. !! [Note: `no_whitespace` will !! override this option if necessary] logical ( LK ) :: allow_duplicate_keys = . true . !! If False, then after parsing, if any !! duplicate keys are found, an error is !! thrown. A call to [[json_value_validate]] !! will also check for duplicates. If True !! [default] then no special checks are done logical ( LK ) :: escape_solidus = . false . !! If True then the solidus \"`/`\" is always escaped !! (\"`\\/`\") when serializing JSON. !! If False [default], then it is not escaped. !! Note that this option does not affect parsing !! (both escaped and unescaped versions are still !! valid in all cases). integer ( IK ) :: null_to_real_mode = 2_IK !! if `strict_type_checking=false`: !! !! * 1 : an exception will be raised if !! try to retrieve a `null` as a real. !! * 2 : a `null` retrieved as a real !! will return NaN. [default] !! * 3 : a `null` retrieved as a real !! will return 0.0. logical ( LK ) :: non_normals_to_null = . false . !! How to serialize NaN, Infinity, !! and -Infinity real values: !! !! * If true : as JSON `null` values !! * If false : as strings (e.g., \"NaN\", !! \"Infinity\", \"-Infinity\") [default] logical ( LK ) :: use_quiet_nan = . true . !! if true [default], `null_to_real_mode=2` !! and [[string_to_real]] will use !! `ieee_quiet_nan` for NaN values. If false, !! `ieee_signaling_nan` will be used. logical ( LK ) :: strict_integer_type_checking = . true . !! * If false, when parsing JSON, if an integer numeric value !! cannot be converted to an integer (`integer(IK)`), !! then an attempt is then make to convert it !! to a real (`real(RK)`). !! * If true [default], an exception will be raised if an integer !! value cannot be read when parsing JSON. logical ( LK ) :: allow_trailing_comma = . true . !! Allow a single trailing comma in arrays and objects. integer :: ichunk = 0 !! index in `chunk` for [[pop_char]] !! when `use_unformatted_stream=True` integer :: filesize = 0 !! the file size when when `use_unformatted_stream=True` character ( kind = CK , len = :), allocatable :: chunk !! a chunk read from a stream file !! when `use_unformatted_stream=True` contains private !> ! Return a child of a [[json_value]] structure. generic , public :: get_child => json_value_get_child_by_index , & json_value_get_child ,& MAYBEWRAP ( json_value_get_child_by_name ) procedure , private :: json_value_get_child_by_index procedure , private :: MAYBEWRAP ( json_value_get_child_by_name ) procedure , private :: json_value_get_child !> ! Add objects to a linked list of [[json_value]]s. ! !@note It might make more sense to call this `add_child`. generic , public :: add => json_value_add_member , & MAYBEWRAP ( json_value_add_null ), & MAYBEWRAP ( json_value_add_integer ), & MAYBEWRAP ( json_value_add_integer_vec ), & #ifndef REAL32 MAYBEWRAP ( json_value_add_real32 ), & MAYBEWRAP ( json_value_add_real32_vec ), & #endif MAYBEWRAP ( json_value_add_real ), & MAYBEWRAP ( json_value_add_real_vec ), & #ifdef REAL128 MAYBEWRAP ( json_value_add_real64 ), & MAYBEWRAP ( json_value_add_real64_vec ), & #endif MAYBEWRAP ( json_value_add_logical ), & MAYBEWRAP ( json_value_add_logical_vec ), & MAYBEWRAP ( json_value_add_string ), & MAYBEWRAP ( json_value_add_string_vec ) #ifdef USE_UCS4 generic , public :: add => json_value_add_string_name_ascii , & json_value_add_string_val_ascii , & json_value_add_string_vec_name_ascii , & json_value_add_string_vec_val_ascii #endif procedure , private :: json_value_add_member procedure , private :: MAYBEWRAP ( json_value_add_integer ) procedure , private :: MAYBEWRAP ( json_value_add_null ) procedure , private :: MAYBEWRAP ( json_value_add_integer_vec ) #ifndef REAL32 procedure , private :: MAYBEWRAP ( json_value_add_real32 ) procedure , private :: MAYBEWRAP ( json_value_add_real32_vec ) #endif procedure , private :: MAYBEWRAP ( json_value_add_real ) procedure , private :: MAYBEWRAP ( json_value_add_real_vec ) #ifdef REAL128 procedure , private :: MAYBEWRAP ( json_value_add_real64 ) procedure , private :: MAYBEWRAP ( json_value_add_real64_vec ) #endif procedure , private :: MAYBEWRAP ( json_value_add_logical ) procedure , private :: MAYBEWRAP ( json_value_add_logical_vec ) procedure , private :: MAYBEWRAP ( json_value_add_string ) procedure , private :: MAYBEWRAP ( json_value_add_string_vec ) #ifdef USE_UCS4 procedure , private :: json_value_add_string_name_ascii procedure , private :: json_value_add_string_val_ascii procedure , private :: json_value_add_string_vec_name_ascii procedure , private :: json_value_add_string_vec_val_ascii #endif !> ! These are like the `add` methods, except if a variable with the ! same path is already present, then its value is simply updated. ! Note that currently, these only work for scalar variables. ! These routines can also change the variable's type (but an error will be ! thrown if the existing variable is not a scalar). ! !### See also ! * [[json_core(type):add_by_path]] - this one can be used to change ! arrays and objects to scalars if so desired. ! !@note Unlike some routines, the `found` output is not optional, ! so it doesn't present exceptions from being thrown. ! !@note These have been mostly supplanted by the [[json_core(type):add_by_path]] ! methods, which do a similar thing (and can be used for ! scalars and vectors, etc.) generic , public :: update => MAYBEWRAP ( json_update_logical ),& #ifndef REAL32 MAYBEWRAP ( json_update_real32 ),& #endif MAYBEWRAP ( json_update_real ),& #ifdef REAL128 MAYBEWRAP ( json_update_real64 ),& #endif MAYBEWRAP ( json_update_integer ),& MAYBEWRAP ( json_update_string ) #ifdef USE_UCS4 generic , public :: update => json_update_string_name_ascii ,& json_update_string_val_ascii #endif procedure , private :: MAYBEWRAP ( json_update_logical ) #ifndef REAL32 procedure , private :: MAYBEWRAP ( json_update_real32 ) #endif procedure , private :: MAYBEWRAP ( json_update_real ) #ifdef REAL128 procedure , private :: MAYBEWRAP ( json_update_real64 ) #endif procedure , private :: MAYBEWRAP ( json_update_integer ) procedure , private :: MAYBEWRAP ( json_update_string ) #ifdef USE_UCS4 procedure , private :: json_update_string_name_ascii procedure , private :: json_update_string_val_ascii #endif !> ! Add variables to a [[json_value]] linked list ! by specifying their paths. ! !### Example ! !````fortran ! use, intrinsic :: iso_fortran_env, only: output_unit ! use json_module, wp=>json_RK ! type(json_core) :: json ! type(json_value) :: p ! call json%create_object(p,'root') ! create the root ! ! now add some variables using the paths: ! call json%add_by_path(p,'inputs.t', 0.0_wp ) ! call json%add_by_path(p,'inputs.x(1)', 100.0_wp) ! call json%add_by_path(p,'inputs.x(2)', 200.0_wp) ! call json%print(p) ! now print to console !```` ! !### Notes ! * This uses [[json_create_by_path]] ! !### See also ! * The `json_core%update` methods. ! * [[json_create_by_path]] generic , public :: add_by_path => MAYBEWRAP ( json_add_member_by_path ),& MAYBEWRAP ( json_add_integer_by_path ),& #ifndef REAL32 MAYBEWRAP ( json_add_real32_by_path ),& #endif MAYBEWRAP ( json_add_real_by_path ),& #ifdef REAL128 MAYBEWRAP ( json_add_real64_by_path ),& #endif MAYBEWRAP ( json_add_logical_by_path ),& MAYBEWRAP ( json_add_string_by_path ),& MAYBEWRAP ( json_add_integer_vec_by_path ),& #ifndef REAL32 MAYBEWRAP ( json_add_real32_vec_by_path ),& #endif MAYBEWRAP ( json_add_real_vec_by_path ),& #ifdef REAL128 MAYBEWRAP ( json_add_real64_vec_by_path ),& #endif MAYBEWRAP ( json_add_logical_vec_by_path ),& MAYBEWRAP ( json_add_string_vec_by_path ) #ifdef USE_UCS4 generic , public :: add_by_path => json_add_string_by_path_value_ascii ,& json_add_string_by_path_path_ascii ,& json_add_string_vec_by_path_value_ascii ,& json_add_string_vec_by_path_path_ascii #endif procedure :: MAYBEWRAP ( json_add_member_by_path ) procedure :: MAYBEWRAP ( json_add_integer_by_path ) #ifndef REAL32 procedure :: MAYBEWRAP ( json_add_real32_by_path ) #endif procedure :: MAYBEWRAP ( json_add_real_by_path ) #ifdef REAL128 procedure :: MAYBEWRAP ( json_add_real64_by_path ) #endif procedure :: MAYBEWRAP ( json_add_logical_by_path ) procedure :: MAYBEWRAP ( json_add_string_by_path ) procedure :: MAYBEWRAP ( json_add_integer_vec_by_path ) #ifndef REAL32 procedure :: MAYBEWRAP ( json_add_real32_vec_by_path ) #endif procedure :: MAYBEWRAP ( json_add_real_vec_by_path ) #ifdef REAL128 procedure :: MAYBEWRAP ( json_add_real64_vec_by_path ) #endif procedure :: MAYBEWRAP ( json_add_logical_vec_by_path ) procedure :: MAYBEWRAP ( json_add_string_vec_by_path ) #ifdef USE_UCS4 procedure :: json_add_string_by_path_value_ascii procedure :: json_add_string_by_path_path_ascii procedure :: json_add_string_vec_by_path_value_ascii procedure :: json_add_string_vec_by_path_path_ascii #endif !> ! Create a [[json_value]] linked list using the ! path to the variables. Optionally return a ! pointer to the variable. ! ! (This will create a `null` variable) ! !### See also ! * [[json_core(type):add_by_path]] generic , public :: create => MAYBEWRAP ( json_create_by_path ) procedure :: MAYBEWRAP ( json_create_by_path ) !> ! Get data from a [[json_value]] linked list. ! !@note There are two versions (e.g. [[json_get_integer]] and [[json_get_integer_by_path]]). ! The first one gets the value from the [[json_value]] passed into the routine, ! while the second one gets the value from the [[json_value]] found by parsing the ! path. The path version is split up into unicode and non-unicode versions. generic , public :: get => & MAYBEWRAP ( json_get_by_path ), & json_get_integer , MAYBEWRAP ( json_get_integer_by_path ), & json_get_integer_vec , MAYBEWRAP ( json_get_integer_vec_by_path ), & #ifndef REAL32 json_get_real32 , MAYBEWRAP ( json_get_real32_by_path ), & json_get_real32_vec , MAYBEWRAP ( json_get_real32_vec_by_path ), & #endif json_get_real , MAYBEWRAP ( json_get_real_by_path ), & json_get_real_vec , MAYBEWRAP ( json_get_real_vec_by_path ), & #ifdef REAL128 json_get_real64 , MAYBEWRAP ( json_get_real64_by_path ), & json_get_real64_vec , MAYBEWRAP ( json_get_real64_vec_by_path ), & #endif json_get_logical , MAYBEWRAP ( json_get_logical_by_path ), & json_get_logical_vec , MAYBEWRAP ( json_get_logical_vec_by_path ), & json_get_string , MAYBEWRAP ( json_get_string_by_path ), & json_get_string_vec , MAYBEWRAP ( json_get_string_vec_by_path ), & json_get_alloc_string_vec , MAYBEWRAP ( json_get_alloc_string_vec_by_path ),& json_get_array , MAYBEWRAP ( json_get_array_by_path ) procedure , private :: json_get_integer procedure , private :: json_get_integer_vec #ifndef REAL32 procedure , private :: json_get_real32 procedure , private :: json_get_real32_vec #endif procedure , private :: json_get_real procedure , private :: json_get_real_vec #ifdef REAL128 procedure , private :: json_get_real64 procedure , private :: json_get_real64_vec #endif procedure , private :: json_get_logical procedure , private :: json_get_logical_vec procedure , private :: json_get_string procedure , private :: json_get_string_vec procedure , private :: json_get_alloc_string_vec procedure , private :: json_get_array procedure , private :: MAYBEWRAP ( json_get_by_path ) procedure , private :: MAYBEWRAP ( json_get_integer_by_path ) procedure , private :: MAYBEWRAP ( json_get_integer_vec_by_path ) #ifndef REAL32 procedure , private :: MAYBEWRAP ( json_get_real32_by_path ) procedure , private :: MAYBEWRAP ( json_get_real32_vec_by_path ) #endif procedure , private :: MAYBEWRAP ( json_get_real_by_path ) procedure , private :: MAYBEWRAP ( json_get_real_vec_by_path ) #ifdef REAL128 procedure , private :: MAYBEWRAP ( json_get_real64_by_path ) procedure , private :: MAYBEWRAP ( json_get_real64_vec_by_path ) #endif procedure , private :: MAYBEWRAP ( json_get_logical_by_path ) procedure , private :: MAYBEWRAP ( json_get_logical_vec_by_path ) procedure , private :: MAYBEWRAP ( json_get_string_by_path ) procedure , private :: MAYBEWRAP ( json_get_string_vec_by_path ) procedure , private :: MAYBEWRAP ( json_get_array_by_path ) procedure , private :: MAYBEWRAP ( json_get_alloc_string_vec_by_path ) procedure , private :: json_get_by_path_default procedure , private :: json_get_by_path_rfc6901 procedure , private :: json_get_by_path_jsonpath_bracket !> ! Print the [[json_value]] to an output unit or file. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value) :: p ! !... ! call json%print(p,'test.json') !this is [[json_print_to_filename]] !```` generic , public :: print => json_print_to_console ,& json_print_to_unit ,& json_print_to_filename procedure :: json_print_to_console procedure :: json_print_to_unit procedure :: json_print_to_filename !> ! Destructor routine for a [[json_value]] pointer. ! This must be called explicitly if it is no longer needed, ! before it goes out of scope. Otherwise, a memory leak will result. ! !### Example ! ! Destroy the [[json_value]] pointer before the variable goes out of scope: !````fortran ! subroutine example1() ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_object(p,'') ! call json%add(p,'year',2015) ! call json%print(p) ! call json%destroy(p) ! end subroutine example1 !```` ! ! Note: it should NOT be called for a [[json_value]] pointer than has already been ! added to another [[json_value]] structure, since doing so may render the ! other structure invalid. Consider the following example: !````fortran ! subroutine example2(p) ! type(json_core) :: json ! type(json_value),pointer,intent(out) :: p ! type(json_value),pointer :: q ! call json%create_object(p,'') ! call json%add(p,'year',2015) ! call json%create_object(q,'q') ! call json%add(q,'val',1) ! call json%add(p, q) !add q to p structure ! ! do NOT call json%destroy(q) here, because q is ! ! now part of the output structure p. p should be destroyed ! ! somewhere upstream by the caller of this routine. ! nullify(q) !OK, but not strictly necessary ! end subroutine example2 !```` generic , public :: destroy => json_value_destroy , destroy_json_core procedure :: json_value_destroy procedure :: destroy_json_core !> ! If the child variable is present, then remove it. generic , public :: remove_if_present => MAYBEWRAP ( json_value_remove_if_present ) procedure :: MAYBEWRAP ( json_value_remove_if_present ) !> ! Allocate a [[json_value]] pointer and make it a real variable. ! The pointer should not already be allocated. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_real(p,'value',1.0_RK) !```` ! !### Note ! * [[json_core(type):create_real]] is just an alias ! to this one for backward compatibility. generic , public :: create_real => MAYBEWRAP ( json_value_create_real ) procedure :: MAYBEWRAP ( json_value_create_real ) #ifndef REAL32 generic , public :: create_real => MAYBEWRAP ( json_value_create_real32 ) procedure :: MAYBEWRAP ( json_value_create_real32 ) #endif #ifdef REAL128 generic , public :: create_real => MAYBEWRAP ( json_value_create_real64 ) procedure :: MAYBEWRAP ( json_value_create_real64 ) #endif !> ! This is equivalent to [[json_core(type):create_real]], ! and is here only for backward compatibility. generic , public :: create_double => MAYBEWRAP ( json_value_create_real ) #ifndef REAL32 generic , public :: create_double => MAYBEWRAP ( json_value_create_real32 ) #endif #ifdef REAL128 generic , public :: create_double => MAYBEWRAP ( json_value_create_real64 ) #endif !> ! Allocate a [[json_value]] pointer and make it an array variable. ! The pointer should not already be allocated. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_array(p,'arrayname') !```` generic , public :: create_array => MAYBEWRAP ( json_value_create_array ) procedure :: MAYBEWRAP ( json_value_create_array ) !> ! Allocate a [[json_value]] pointer and make it an object variable. ! The pointer should not already be allocated. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_object(p,'objectname') !```` ! !@note The name is not significant for the root structure or an array element. ! In those cases, an empty string can be used. generic , public :: create_object => MAYBEWRAP ( json_value_create_object ) procedure :: MAYBEWRAP ( json_value_create_object ) !> ! Allocate a json_value pointer and make it a null variable. ! The pointer should not already be allocated. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_null(p,'value') !```` generic , public :: create_null => MAYBEWRAP ( json_value_create_null ) procedure :: MAYBEWRAP ( json_value_create_null ) !> ! Allocate a json_value pointer and make it a string variable. ! The pointer should not already be allocated. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_string(p,'value','foobar') !```` generic , public :: create_string => MAYBEWRAP ( json_value_create_string ) procedure :: MAYBEWRAP ( json_value_create_string ) !> ! Allocate a json_value pointer and make it an integer variable. ! The pointer should not already be allocated. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_integer(p,42,'value') !```` generic , public :: create_integer => MAYBEWRAP ( json_value_create_integer ) procedure :: MAYBEWRAP ( json_value_create_integer ) !> ! Allocate a json_value pointer and make it a logical variable. ! The pointer should not already be allocated. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_logical(p,'value',.true.) !```` generic , public :: create_logical => MAYBEWRAP ( json_value_create_logical ) procedure :: MAYBEWRAP ( json_value_create_logical ) !> ! Parse the JSON file and populate the [[json_value]] tree. generic , public :: load => json_parse_file procedure :: json_parse_file !> ! Print the [[json_value]] structure to an allocatable string procedure , public :: serialize => json_value_to_string !> ! The same as `serialize`, but only here for backward compatibility procedure , public :: print_to_string => json_value_to_string !> ! Parse the JSON string and populate the [[json_value]] tree. generic , public :: deserialize => MAYBEWRAP ( json_parse_string ) procedure :: MAYBEWRAP ( json_parse_string ) !> ! Same as `load` and `deserialize` but only here for backward compatibility. generic , public :: parse => json_parse_file , & MAYBEWRAP ( json_parse_string ) !> ! Throw an exception. generic , public :: throw_exception => MAYBEWRAP ( json_throw_exception ) procedure :: MAYBEWRAP ( json_throw_exception ) !> ! Rename a [[json_value]] variable. generic , public :: rename => MAYBEWRAP ( json_value_rename ),& MAYBEWRAP ( json_rename_by_path ) procedure :: MAYBEWRAP ( json_value_rename ) procedure :: MAYBEWRAP ( json_rename_by_path ) #ifdef USE_UCS4 generic , public :: rename => json_rename_by_path_name_ascii ,& json_rename_by_path_path_ascii procedure :: json_rename_by_path_name_ascii procedure :: json_rename_by_path_path_ascii #endif !> ! get info about a [[json_value]] generic , public :: info => json_info , MAYBEWRAP ( json_info_by_path ) procedure :: json_info procedure :: MAYBEWRAP ( json_info_by_path ) !> ! get string info about a [[json_value]] generic , public :: string_info => json_string_info procedure :: json_string_info !> ! get matrix info about a [[json_value]] generic , public :: matrix_info => json_matrix_info , MAYBEWRAP ( json_matrix_info_by_path ) procedure :: json_matrix_info procedure :: MAYBEWRAP ( json_matrix_info_by_path ) !> ! insert a new element after an existing one, ! updating the JSON structure accordingly generic , public :: insert_after => json_value_insert_after , & json_value_insert_after_child_by_index procedure :: json_value_insert_after procedure :: json_value_insert_after_child_by_index !> ! get the path to a JSON variable in a structure: generic , public :: get_path => MAYBEWRAP ( json_get_path ) procedure :: MAYBEWRAP ( json_get_path ) !> ! verify if a path is valid ! (i.e., a variable with this path exists in the file). generic , public :: valid_path => MAYBEWRAP ( json_valid_path ) procedure :: MAYBEWRAP ( json_valid_path ) procedure , public :: remove => json_value_remove !! Remove a [[json_value]] from a !! linked-list structure. procedure , public :: replace => json_value_replace !! Replace a [[json_value]] in a !! linked-list structure. procedure , public :: reverse => json_value_reverse !! Reverse the order of the children !! of an array of object. procedure , public :: check_for_errors => json_check_for_errors !! check for error and get error message procedure , public :: clear_exceptions => json_clear_exceptions !! clear exceptions procedure , public :: count => json_count !! count the number of children procedure , public :: clone => json_clone !! clone a JSON structure (deep copy) procedure , public :: failed => json_failed !! check for error procedure , public :: get_parent => json_get_parent !! get pointer to json_value parent procedure , public :: get_next => json_get_next !! get pointer to json_value next procedure , public :: get_previous => json_get_previous !! get pointer to json_value previous procedure , public :: get_tail => json_get_tail !! get pointer to json_value tail procedure , public :: initialize => json_initialize !! to initialize some parsing parameters procedure , public :: traverse => json_traverse !! to traverse all elements of a JSON !! structure procedure , public :: print_error_message => json_print_error_message !! simply routine to print error !! messages procedure , public :: swap => json_value_swap !! Swap two [[json_value]] pointers !! in a structure (or two different !! structures). procedure , public :: is_child_of => json_value_is_child_of !! Check if a [[json_value]] is a !! descendant of another. procedure , public :: validate => json_value_validate !! Check that a [[json_value]] linked !! list is valid (i.e., is properly !! constructed). This may be useful !! if it has been constructed externally. procedure , public :: check_for_duplicate_keys & => json_check_all_for_duplicate_keys !! Check entire JSON structure !! for duplicate keys (recursively) procedure , public :: check_children_for_duplicate_keys & => json_check_children_for_duplicate_keys !! Check a `json_value` object's !! children for duplicate keys !other private routines: procedure :: name_equal procedure :: name_strings_equal procedure :: json_value_print procedure :: string_to_int procedure :: string_to_dble procedure :: prepare_parser => json_prepare_parser procedure :: parse_end => json_parse_end procedure :: parse_value procedure :: parse_number procedure :: parse_string procedure :: parse_for_chars procedure :: parse_object procedure :: parse_array procedure :: annotate_invalid_json procedure :: pop_char procedure :: push_char procedure :: get_current_line_from_file_stream procedure , nopass :: get_current_line_from_file_sequential procedure :: convert procedure :: to_string procedure :: to_logical procedure :: to_integer procedure :: to_real procedure :: to_null procedure :: to_object procedure :: to_array procedure , nopass :: json_value_clone_func procedure :: is_vector => json_is_vector end type json_core","tags":"","loc":"type/json_core.html"},{"title":"json_value – JSON-Fortran ","text":"type, public :: json_value sequence Type used to construct the linked-list JSON structure.\n Normally, this should always be a pointer variable.\n This type should only be used by an instance of json_core . Example The following test program: program test use json_module implicit none type ( json_core ) :: json type ( json_value ), pointer :: p call json % create_object ( p , '' ) !create the root call json % add ( p , 'year' , 1805 ) !add some data call json % add ( p , 'value' , 1.0_RK ) !add some data call json % print ( p , 'test.json' ) !write it to a file call json % destroy ( p ) !cleanup end program test Produces the JSON file test.json : { \"year\" : 1805 , \"value\" : 0.1E+1 } Warning Pointers of this type should only be allocated\n using the methods from json_core . Inherited by type~~json_value~~InheritedByGraph type~json_value json_value type~json_value->type~json_value previous, next, parent, children, tail type~json_file json_file type~json_file->type~json_value p Help Graph Key Nodes of different colours represent the following: Graph Key Type Type This Page's Entity This Page's Entity Solid arrows point from a derived type to the parent type which it\nextends. Dashed arrows point from a derived type to the other\ntypes it contains as a components, with a label listing the name(s) of\nsaid component(s). Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Components Type Visibility Attributes Name Initial type( json_value ), private, pointer :: children => null() first child item of this real(kind=RK), private, allocatable :: dbl_value real data for this variable integer(kind=IK), private, allocatable :: int_value integer data for this variable logical(kind=LK), private, allocatable :: log_value logical data for this variable integer(kind=IK), private :: n_children = 0 number of children character(kind=CK, len=:), private, allocatable :: name variable name (unescaped) type( json_value ), private, pointer :: next => null() next item in the list type( json_value ), private, pointer :: parent => null() parent item of this type( json_value ), private, pointer :: previous => null() previous item in the list character(kind=CK, len=:), private, allocatable :: str_value string data for this variable\n(unescaped) type( json_value ), private, pointer :: tail => null() last child item of this integer(kind=IK), private :: var_type = json_unknown variable type Source Code type , public :: json_value !force the constituents to be stored contiguously ![note: on Intel, the order of the variables below ! is significant to avoid the misaligned field warnings] sequence private !for the linked list: type ( json_value ), pointer :: previous => null () !! previous item in the list type ( json_value ), pointer :: next => null () !! next item in the list type ( json_value ), pointer :: parent => null () !! parent item of this type ( json_value ), pointer :: children => null () !! first child item of this type ( json_value ), pointer :: tail => null () !! last child item of this character ( kind = CK , len = :), allocatable :: name !! variable name (unescaped) real ( RK ), allocatable :: dbl_value !! real data for this variable logical ( LK ), allocatable :: log_value !! logical data for this variable character ( kind = CK , len = :), allocatable :: str_value !! string data for this variable !! (unescaped) integer ( IK ), allocatable :: int_value !! integer data for this variable integer ( IK ) :: var_type = json_unknown !! variable type integer ( IK ), private :: n_children = 0 !! number of children end type json_value","tags":"","loc":"type/json_value.html"},{"title":"json_array_callback_func – JSON-Fortran","text":"interface public subroutine json_array_callback_func(json, element, i, count) Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: element integer(kind=IK), intent(in) :: i index integer(kind=IK), intent(in) :: count size of array Description Array element callback function. Used by json_get_array","tags":"","loc":"interface/json_array_callback_func.html"},{"title":"json_traverse_callback_func – JSON-Fortran","text":"interface public subroutine json_traverse_callback_func(json, p, finished) Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p logical(kind=LK), intent(out) :: finished set true to stop traversing Description Callback function used by json_traverse","tags":"","loc":"interface/json_traverse_callback_func.html"},{"title":"initialize_json_file – JSON-Fortran","text":"private function initialize_json_file(p, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma, nullify_pointer) result(file_object) Cast a json_value object as a json_file object.\n It also calls the initialize() method. Note initialize_json_core , json_initialize , initialize_json_core_in_file , initialize_json_file , initialize_json_file_v2 , initialize_json_file_from_string ,\n and initialize_json_file_from_string_v2 all have a similar interface. Arguments Type Intent Optional Attributes Name type( json_value ), optional, pointer :: p json_value object to cast\nas a json_file object. This\nwill be nullified. logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: 1 : Default mode (see json_get_by_path_default ) 2 : as RFC 6901 “ JSON Pointer” paths\n (see json_get_by_path_rfc6901 ) 3 : JSONPath “bracket-notation”\n see json_get_by_path_jsonpath_bracket ) character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys If True [default] then no special checks\n are done to check for duplicate keys. If False, then after parsing, if any duplicate\n keys are found, an error is thrown. A call to json_value_validate will also check for\n duplicates. logical(kind=LK), intent(in), optional :: escape_solidus If True then the solidus “ / ” is always escaped\n “ \\/ ” when serializing JSON If False [default], then it is not escaped. Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : 1 : an exception will be raised if\n try to retrieve a null as a real. 2 : a null retrieved as a real\n will return a NaN. [default] 3 : a null retrieved as a real\n will return 0.0. integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: 1 : as strings (e.g., “NaN”,\n “Infinity”, “-Infinity”) [default] 2 : as JSON null values logical(kind=LK), intent(in), optional :: use_quiet_nan If true [default], null_to_real_mode=2 and string_to_real will use ieee_quiet_nan for NaN values. If false, ieee_signaling_nan will be used. logical(kind=LK), intent(in), optional :: strict_integer_type_checking If false, when parsing JSON , if an integer numeric value\n cannot be converted to an integer ( integer(IK) ),\n then an attempt is then make to convert it\n to a real ( real(RK) ). If true, an exception will be raised if the integer\n value cannot be read. (default is true) logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) logical(kind=LK), intent(in), optional :: nullify_pointer if True, then p will be nullified\nif present. (default is True). Normally,\nthis should be done, because the json_file will destroy\nthe pointer when the class goes out of scope (causing p to be\na dangling pointer). However, if the intent is to use p in\na json_file and then call nullify and continue\nto use p , then this should be set to False. Return Value type( json_file ) Calls proc~~initialize_json_file~~CallsGraph proc~initialize_json_file initialize_json_file none~initialize json_file%initialize proc~initialize_json_file->none~initialize proc~initialize_json_core_in_file json_file%initialize_json_core_in_file none~initialize->proc~initialize_json_core_in_file proc~set_json_core_in_file json_file%set_json_core_in_file none~initialize->proc~set_json_core_in_file proc~json_initialize json_core%json_initialize proc~initialize_json_core_in_file->proc~json_initialize none~throw_exception json_core%throw_exception proc~json_initialize->none~throw_exception proc~integer_to_string integer_to_string proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~initialize_json_file~~CalledByGraph proc~initialize_json_file initialize_json_file interface~json_file json_file interface~json_file->proc~initialize_json_file Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function initialize_json_file ( p ,& #include \"json_initialize_dummy_arguments.inc\" , nullify_pointer & ) result ( file_object ) implicit none type ( json_file ) :: file_object type ( json_value ), pointer , optional :: p !! `json_value` object to cast !! as a `json_file` object. This !! will be nullified. #include \"json_initialize_arguments.inc\" logical ( LK ), intent ( in ), optional :: nullify_pointer !! if True, then `p` will be nullified !! if present. (default is True). Normally, !! this should be done, because the [[json_file]] will destroy !! the pointer when the class goes out of scope (causing `p` to be !! a dangling pointer). However, if the intent is to use `p` in !! a [[json_file]] and then call [[json_file:nullify]] and continue !! to use `p`, then this should be set to False. call file_object % initialize (& #include \"json_initialize_dummy_arguments.inc\" ) if ( present ( p )) then file_object % p => p ! we have to nullify it to avoid ! a dangling pointer when the file ! goes out of scope if ( present ( nullify_pointer )) then if ( nullify_pointer ) nullify ( p ) else nullify ( p ) end if end if end function initialize_json_file","tags":"","loc":"proc/initialize_json_file.html"},{"title":"initialize_json_file_from_string – JSON-Fortran","text":"private function initialize_json_file_from_string(str, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) result(file_object) Cast a JSON string as a json_file object.\n It also calls the initialize() method. Example type ( json_file ) :: f f = json_file ( '{\"key \": 1}' , trailing_spaces_significant = . true .) Note initialize_json_core , json_initialize , initialize_json_core_in_file , initialize_json_file , initialize_json_file_v2 , initialize_json_file_from_string ,\n and initialize_json_file_from_string_v2 all have a similar interface. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str string to load JSON data from logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: 1 : Default mode (see json_get_by_path_default ) 2 : as RFC 6901 “ JSON Pointer” paths\n (see json_get_by_path_rfc6901 ) 3 : JSONPath “bracket-notation”\n see json_get_by_path_jsonpath_bracket ) character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys If True [default] then no special checks\n are done to check for duplicate keys. If False, then after parsing, if any duplicate\n keys are found, an error is thrown. A call to json_value_validate will also check for\n duplicates. logical(kind=LK), intent(in), optional :: escape_solidus If True then the solidus “ / ” is always escaped\n “ \\/ ” when serializing JSON If False [default], then it is not escaped. Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : 1 : an exception will be raised if\n try to retrieve a null as a real. 2 : a null retrieved as a real\n will return a NaN. [default] 3 : a null retrieved as a real\n will return 0.0. integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: 1 : as strings (e.g., “NaN”,\n “Infinity”, “-Infinity”) [default] 2 : as JSON null values logical(kind=LK), intent(in), optional :: use_quiet_nan If true [default], null_to_real_mode=2 and string_to_real will use ieee_quiet_nan for NaN values. If false, ieee_signaling_nan will be used. logical(kind=LK), intent(in), optional :: strict_integer_type_checking If false, when parsing JSON , if an integer numeric value\n cannot be converted to an integer ( integer(IK) ),\n then an attempt is then make to convert it\n to a real ( real(RK) ). If true, an exception will be raised if the integer\n value cannot be read. (default is true) logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Return Value type( json_file ) Calls proc~~initialize_json_file_from_string~~CallsGraph proc~initialize_json_file_from_string initialize_json_file_from_string none~deserialize json_file%deserialize proc~initialize_json_file_from_string->none~deserialize none~initialize json_file%initialize proc~initialize_json_file_from_string->none~initialize proc~json_file_load_from_string json_file%json_file_load_from_string none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~initialize_json_core_in_file json_file%initialize_json_core_in_file none~initialize->proc~initialize_json_core_in_file proc~set_json_core_in_file json_file%set_json_core_in_file none~initialize->proc~set_json_core_in_file proc~json_initialize json_core%json_initialize proc~initialize_json_core_in_file->proc~json_initialize none~deserialize~2 json_core%deserialize proc~json_file_load_from_string->none~deserialize~2 proc~json_file_destroy json_file%json_file_destroy proc~json_file_load_from_string->proc~json_file_destroy proc~wrap_json_file_load_from_string->none~deserialize interface~to_unicode to_unicode proc~wrap_json_file_load_from_string->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_parse_string json_core%json_parse_string none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~destroy~3 json_core%destroy proc~json_file_destroy->none~destroy~3 none~throw_exception json_core%throw_exception proc~json_initialize->none~throw_exception proc~integer_to_string integer_to_string proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_parse_string->proc~json_initialize proc~json_parse_string->none~throw_exception proc~annotate_invalid_json json_core%annotate_invalid_json proc~json_parse_string->proc~annotate_invalid_json proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_parse_end json_core%json_parse_end proc~json_parse_string->proc~json_parse_end proc~json_prepare_parser json_core%json_prepare_parser proc~json_parse_string->proc~json_prepare_parser proc~json_value_create json_value_create proc~json_parse_string->proc~json_value_create proc~parse_value json_core%parse_value proc~json_parse_string->proc~parse_value proc~wrap_json_parse_string->interface~to_unicode proc~wrap_json_parse_string->none~deserialize~2 proc~annotate_invalid_json->proc~integer_to_string proc~get_current_line_from_file_sequential json_core%get_current_line_from_file_sequential proc~annotate_invalid_json->proc~get_current_line_from_file_sequential proc~get_current_line_from_file_stream json_core%get_current_line_from_file_stream proc~annotate_invalid_json->proc~get_current_line_from_file_stream proc~json_traverse json_core%json_traverse proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_parse_end->none~throw_exception proc~pop_char json_core%pop_char proc~json_parse_end->proc~pop_char proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~parse_value->none~throw_exception proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_for_chars json_core%parse_for_chars proc~parse_value->proc~parse_for_chars proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~parse_string json_core%parse_string proc~parse_value->proc~parse_string proc~parse_value->proc~pop_char proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~to_array json_core%to_array proc~parse_value->proc~to_array proc~to_logical json_core%to_logical proc~parse_value->proc~to_logical proc~to_null json_core%to_null proc~parse_value->proc~to_null proc~to_object json_core%to_object proc~parse_value->proc~to_object proc~to_string json_core%to_string proc~parse_value->proc~to_string proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_traverse->none~throw_exception proc~parse_array->none~destroy~3 proc~parse_array->none~throw_exception proc~parse_array->proc~json_value_create proc~parse_array->proc~parse_value proc~parse_array->proc~pop_char none~add~4 json_core%add proc~parse_array->none~add~4 proc~parse_for_chars->none~throw_exception proc~parse_for_chars->proc~pop_char proc~parse_number->proc~json_clear_exceptions proc~parse_number->proc~pop_char proc~parse_number->proc~push_char proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real proc~parse_object->none~destroy~3 proc~parse_object->none~throw_exception proc~parse_object->proc~json_value_create proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~pop_char proc~parse_object->none~add~4 proc~parse_string->none~throw_exception proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~push_char->none~throw_exception proc~push_char->proc~integer_to_string proc~to_array->proc~destroy_json_data proc~to_logical->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~initialize_json_file_from_string~~CalledByGraph proc~initialize_json_file_from_string initialize_json_file_from_string interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function initialize_json_file_from_string ( str ,& #include \"json_initialize_dummy_arguments.inc\" ) result ( file_object ) implicit none type ( json_file ) :: file_object character ( kind = CK , len =* ), intent ( in ) :: str !! string to load JSON data from #include \"json_initialize_arguments.inc\" call file_object % initialize (& #include \"json_initialize_dummy_arguments.inc\" ) call file_object % deserialize ( str ) end function initialize_json_file_from_string","tags":"","loc":"proc/initialize_json_file_from_string.html"},{"title":"initialize_json_file_from_string_v2 – JSON-Fortran","text":"private function initialize_json_file_from_string_v2(str, json_core_object) result(file_object) Cast a JSON string and a json_core object\nas a json_file object. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str string to load JSON data from type( json_core ), intent(in) :: json_core_object Return Value type( json_file ) Calls proc~~initialize_json_file_from_string_v2~~CallsGraph proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 none~deserialize json_file%deserialize proc~initialize_json_file_from_string_v2->none~deserialize proc~json_file_load_from_string json_file%json_file_load_from_string none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string none~deserialize~2 json_core%deserialize proc~json_file_load_from_string->none~deserialize~2 proc~json_file_destroy json_file%json_file_destroy proc~json_file_load_from_string->proc~json_file_destroy proc~wrap_json_file_load_from_string->none~deserialize interface~to_unicode to_unicode proc~wrap_json_file_load_from_string->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_parse_string json_core%json_parse_string none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~destroy~3 json_core%destroy proc~json_file_destroy->none~destroy~3 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy none~throw_exception json_core%throw_exception proc~json_parse_string->none~throw_exception proc~annotate_invalid_json json_core%annotate_invalid_json proc~json_parse_string->proc~annotate_invalid_json proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_initialize json_core%json_initialize proc~json_parse_string->proc~json_initialize proc~json_parse_end json_core%json_parse_end proc~json_parse_string->proc~json_parse_end proc~json_prepare_parser json_core%json_prepare_parser proc~json_parse_string->proc~json_prepare_parser proc~json_value_create json_value_create proc~json_parse_string->proc~json_value_create proc~parse_value json_core%parse_value proc~json_parse_string->proc~parse_value proc~wrap_json_parse_string->interface~to_unicode proc~wrap_json_parse_string->none~deserialize~2 proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~get_current_line_from_file_sequential json_core%get_current_line_from_file_sequential proc~annotate_invalid_json->proc~get_current_line_from_file_sequential proc~get_current_line_from_file_stream json_core%get_current_line_from_file_stream proc~annotate_invalid_json->proc~get_current_line_from_file_stream proc~integer_to_string integer_to_string proc~annotate_invalid_json->proc~integer_to_string proc~json_traverse json_core%json_traverse proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_initialize->none~throw_exception proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions proc~json_parse_end->none~throw_exception proc~pop_char json_core%pop_char proc~json_parse_end->proc~pop_char proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~parse_value->none~throw_exception proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_for_chars json_core%parse_for_chars proc~parse_value->proc~parse_for_chars proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~parse_string json_core%parse_string proc~parse_value->proc~parse_string proc~parse_value->proc~pop_char proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~to_array json_core%to_array proc~parse_value->proc~to_array proc~to_logical json_core%to_logical proc~parse_value->proc~to_logical proc~to_null json_core%to_null proc~parse_value->proc~to_null proc~to_object json_core%to_object proc~parse_value->proc~to_object proc~to_string json_core%to_string proc~parse_value->proc~to_string proc~json_traverse->none~throw_exception proc~parse_array->none~destroy~3 proc~parse_array->none~throw_exception proc~parse_array->proc~json_value_create proc~parse_array->proc~parse_value proc~parse_array->proc~pop_char none~add~4 json_core%add proc~parse_array->none~add~4 proc~parse_for_chars->none~throw_exception proc~parse_for_chars->proc~pop_char proc~parse_number->proc~json_clear_exceptions proc~parse_number->proc~pop_char proc~parse_number->proc~push_char proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real proc~parse_object->none~destroy~3 proc~parse_object->none~throw_exception proc~parse_object->proc~json_value_create proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~pop_char proc~parse_object->none~add~4 proc~parse_string->none~throw_exception proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~push_char->none~throw_exception proc~push_char->proc~integer_to_string proc~to_array->proc~destroy_json_data proc~to_logical->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~initialize_json_file_from_string_v2~~CalledByGraph proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function initialize_json_file_from_string_v2 ( str , json_core_object ) & result ( file_object ) implicit none type ( json_file ) :: file_object character ( kind = CK , len =* ), intent ( in ) :: str !! string to load JSON data from type ( json_core ), intent ( in ) :: json_core_object file_object % core = json_core_object call file_object % deserialize ( str ) end function initialize_json_file_from_string_v2","tags":"","loc":"proc/initialize_json_file_from_string_v2.html"},{"title":"initialize_json_file_v2 – JSON-Fortran","text":"private function initialize_json_file_v2(json_value_object, json_core_object) result(file_object) Cast a json_value pointer and a json_core object\nas a json_file object. Arguments Type Intent Optional Attributes Name type( json_value ), intent(in), pointer :: json_value_object type( json_core ), intent(in) :: json_core_object Return Value type( json_file ) Called by proc~~initialize_json_file_v2~~CalledByGraph proc~initialize_json_file_v2 initialize_json_file_v2 interface~json_file json_file interface~json_file->proc~initialize_json_file_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function initialize_json_file_v2 ( json_value_object , json_core_object ) & result ( file_object ) implicit none type ( json_file ) :: file_object type ( json_value ), pointer , intent ( in ) :: json_value_object type ( json_core ), intent ( in ) :: json_core_object file_object % p => json_value_object file_object % core = json_core_object end function initialize_json_file_v2","tags":"","loc":"proc/initialize_json_file_v2.html"},{"title":"json_file_failed – JSON-Fortran","text":"private pure function json_file_failed(me) result(failed) Check error status in the file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(in) :: me Return Value logical(kind=LK) will be true if there has been an error. Calls proc~~json_file_failed~~CallsGraph proc~json_file_failed json_file%json_file_failed proc~json_failed json_core%json_failed proc~json_file_failed->proc~json_failed Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_failed~~CalledByGraph proc~json_file_failed json_file%json_file_failed proc~json_file_move_pointer json_file%json_file_move_pointer proc~json_file_move_pointer->proc~json_file_failed Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure function json_file_failed ( me ) result ( failed ) implicit none class ( json_file ), intent ( in ) :: me logical ( LK ) :: failed !! will be true if there has been an error. failed = me % core % failed () end function json_file_failed","tags":"","loc":"proc/json_file_failed.html"},{"title":"json_file_valid_path – JSON-Fortran","text":"private function json_file_valid_path(me, path) result(found) Returns true if the path is present in the JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable Return Value logical(kind=LK) if the variable was found Calls proc~~json_file_valid_path~~CallsGraph proc~json_file_valid_path json_file%json_file_valid_path none~valid_path~2 json_core%valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_valid_path json_core%json_valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path none~get~2 json_core%get proc~json_valid_path->none~get~2 proc~wrap_json_valid_path->none~valid_path~2 interface~to_unicode to_unicode proc~wrap_json_valid_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_valid_path~~CalledByGraph proc~json_file_valid_path json_file%json_file_valid_path none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~wrap_json_file_valid_path->none~valid_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function json_file_valid_path ( me , path ) result ( found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ) :: found !! if the variable was found found = me % core % valid_path ( me % p , path ) end function json_file_valid_path","tags":"","loc":"proc/json_file_valid_path.html"},{"title":"json_file_valid_path_op – JSON-Fortran","text":"private function json_file_valid_path_op(path, me) result(found) A wrapper for json_file_valid_path for the .in. operator Type Bound json_file Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: path the path to the variable class( json_file ), intent(in) :: me the JSON file Return Value logical(kind=LK) if the variable was found Calls proc~~json_file_valid_path_op~~CallsGraph proc~json_file_valid_path_op json_file%json_file_valid_path_op none~destroy~3 json_core%destroy proc~json_file_valid_path_op->none~destroy~3 none~valid_path~2 json_core%valid_path proc~json_file_valid_path_op->none~valid_path~2 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_valid_path json_core%json_valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path none~get~2 json_core%get proc~json_valid_path->none~get~2 proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~wrap_json_valid_path->none~valid_path~2 interface~to_unicode to_unicode proc~wrap_json_valid_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function json_file_valid_path_op ( path , me ) result ( found ) implicit none character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable class ( json_file ), intent ( in ) :: me !! the JSON file logical ( LK ) :: found !! if the variable was found type ( json_core ) :: core_copy !! a copy of `core` from `me` ! This is sort of a hack. Since `me` has to have `intent(in)` ! for the operator to work, we need to make a copy of `me%core` ! so we can call the low level routine (since it needs it to ! be `intent(inout)`) because it's technically possible for this ! function to raise an exception. This normally should never ! happen here unless the JSON structure is malformed. core_copy = me % core ! copy the settings (need them to know ! how to interpret the path) found = core_copy % valid_path ( me % p , path ) ! call the low-level routine call core_copy % destroy () ! just in case (but not really necessary) end function json_file_valid_path_op","tags":"","loc":"proc/json_file_valid_path_op.html"},{"title":"wrap_initialize_json_file_from_string – JSON-Fortran","text":"private function wrap_initialize_json_file_from_string(str, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) result(file_object) Alternate version of initialize_json_file_from_string , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: str string to load JSON data from logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: 1 : Default mode (see json_get_by_path_default ) 2 : as RFC 6901 “ JSON Pointer” paths\n (see json_get_by_path_rfc6901 ) 3 : JSONPath “bracket-notation”\n see json_get_by_path_jsonpath_bracket ) character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys If True [default] then no special checks\n are done to check for duplicate keys. If False, then after parsing, if any duplicate\n keys are found, an error is thrown. A call to json_value_validate will also check for\n duplicates. logical(kind=LK), intent(in), optional :: escape_solidus If True then the solidus “ / ” is always escaped\n “ \\/ ” when serializing JSON If False [default], then it is not escaped. Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : 1 : an exception will be raised if\n try to retrieve a null as a real. 2 : a null retrieved as a real\n will return a NaN. [default] 3 : a null retrieved as a real\n will return 0.0. integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: 1 : as strings (e.g., “NaN”,\n “Infinity”, “-Infinity”) [default] 2 : as JSON null values logical(kind=LK), intent(in), optional :: use_quiet_nan If true [default], null_to_real_mode=2 and string_to_real will use ieee_quiet_nan for NaN values. If false, ieee_signaling_nan will be used. logical(kind=LK), intent(in), optional :: strict_integer_type_checking If false, when parsing JSON , if an integer numeric value\n cannot be converted to an integer ( integer(IK) ),\n then an attempt is then make to convert it\n to a real ( real(RK) ). If true, an exception will be raised if the integer\n value cannot be read. (default is true) logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Return Value type( json_file ) Calls proc~~wrap_initialize_json_file_from_string~~CallsGraph proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~to_unicode to_unicode proc~wrap_initialize_json_file_from_string->interface~to_unicode proc~initialize_json_file_from_string initialize_json_file_from_string proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~deserialize json_file%deserialize proc~initialize_json_file_from_string->none~deserialize none~initialize json_file%initialize proc~initialize_json_file_from_string->none~initialize proc~json_file_load_from_string json_file%json_file_load_from_string none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~initialize_json_core_in_file json_file%initialize_json_core_in_file none~initialize->proc~initialize_json_core_in_file proc~set_json_core_in_file json_file%set_json_core_in_file none~initialize->proc~set_json_core_in_file proc~json_initialize json_core%json_initialize proc~initialize_json_core_in_file->proc~json_initialize none~deserialize~2 json_core%deserialize proc~json_file_load_from_string->none~deserialize~2 proc~json_file_destroy json_file%json_file_destroy proc~json_file_load_from_string->proc~json_file_destroy proc~wrap_json_file_load_from_string->interface~to_unicode proc~wrap_json_file_load_from_string->none~deserialize proc~json_parse_string json_core%json_parse_string none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~destroy~3 json_core%destroy proc~json_file_destroy->none~destroy~3 none~throw_exception json_core%throw_exception proc~json_initialize->none~throw_exception proc~integer_to_string integer_to_string proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_parse_string->proc~json_initialize proc~json_parse_string->none~throw_exception proc~annotate_invalid_json json_core%annotate_invalid_json proc~json_parse_string->proc~annotate_invalid_json proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_parse_end json_core%json_parse_end proc~json_parse_string->proc~json_parse_end proc~json_prepare_parser json_core%json_prepare_parser proc~json_parse_string->proc~json_prepare_parser proc~json_value_create json_value_create proc~json_parse_string->proc~json_value_create proc~parse_value json_core%parse_value proc~json_parse_string->proc~parse_value proc~wrap_json_parse_string->interface~to_unicode proc~wrap_json_parse_string->none~deserialize~2 proc~annotate_invalid_json->proc~integer_to_string proc~get_current_line_from_file_sequential json_core%get_current_line_from_file_sequential proc~annotate_invalid_json->proc~get_current_line_from_file_sequential proc~get_current_line_from_file_stream json_core%get_current_line_from_file_stream proc~annotate_invalid_json->proc~get_current_line_from_file_stream proc~json_traverse json_core%json_traverse proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_parse_end->none~throw_exception proc~pop_char json_core%pop_char proc~json_parse_end->proc~pop_char proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~parse_value->none~throw_exception proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_for_chars json_core%parse_for_chars proc~parse_value->proc~parse_for_chars proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~parse_string json_core%parse_string proc~parse_value->proc~parse_string proc~parse_value->proc~pop_char proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~to_array json_core%to_array proc~parse_value->proc~to_array proc~to_logical json_core%to_logical proc~parse_value->proc~to_logical proc~to_null json_core%to_null proc~parse_value->proc~to_null proc~to_object json_core%to_object proc~parse_value->proc~to_object proc~to_string json_core%to_string proc~parse_value->proc~to_string proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_traverse->none~throw_exception proc~parse_array->none~destroy~3 proc~parse_array->none~throw_exception proc~parse_array->proc~json_value_create proc~parse_array->proc~parse_value proc~parse_array->proc~pop_char none~add~4 json_core%add proc~parse_array->none~add~4 proc~parse_for_chars->none~throw_exception proc~parse_for_chars->proc~pop_char proc~parse_number->proc~json_clear_exceptions proc~parse_number->proc~pop_char proc~parse_number->proc~push_char proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real proc~parse_object->none~destroy~3 proc~parse_object->none~throw_exception proc~parse_object->proc~json_value_create proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~pop_char proc~parse_object->none~add~4 proc~parse_string->none~throw_exception proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~push_char->none~throw_exception proc~push_char->proc~integer_to_string proc~to_array->proc~destroy_json_data proc~to_logical->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_initialize_json_file_from_string~~CalledByGraph proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file json_file interface~json_file->proc~wrap_initialize_json_file_from_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function wrap_initialize_json_file_from_string ( str ,& #include \"json_initialize_dummy_arguments.inc\" ) result ( file_object ) implicit none type ( json_file ) :: file_object character ( kind = CDK , len =* ), intent ( in ) :: str !! string to load JSON data from #include \"json_initialize_arguments.inc\" file_object = initialize_json_file_from_string (& to_unicode ( str ),& #include \"json_initialize_dummy_arguments.inc\" ) end function wrap_initialize_json_file_from_string","tags":"","loc":"proc/wrap_initialize_json_file_from_string.html"},{"title":"wrap_initialize_json_file_from_string_v2 – JSON-Fortran","text":"private function wrap_initialize_json_file_from_string_v2(str, json_core_object) result(file_object) Alternate version of initialize_json_file_from_string_v2 , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: str string to load JSON data from type( json_core ), intent(in) :: json_core_object Return Value type( json_file ) Calls proc~~wrap_initialize_json_file_from_string_v2~~CallsGraph proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~to_unicode to_unicode proc~wrap_initialize_json_file_from_string_v2->interface~to_unicode proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~deserialize json_file%deserialize proc~initialize_json_file_from_string_v2->none~deserialize proc~json_file_load_from_string json_file%json_file_load_from_string none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string none~deserialize~2 json_core%deserialize proc~json_file_load_from_string->none~deserialize~2 proc~json_file_destroy json_file%json_file_destroy proc~json_file_load_from_string->proc~json_file_destroy proc~wrap_json_file_load_from_string->interface~to_unicode proc~wrap_json_file_load_from_string->none~deserialize proc~json_parse_string json_core%json_parse_string none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~destroy~3 json_core%destroy proc~json_file_destroy->none~destroy~3 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy none~throw_exception json_core%throw_exception proc~json_parse_string->none~throw_exception proc~annotate_invalid_json json_core%annotate_invalid_json proc~json_parse_string->proc~annotate_invalid_json proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_initialize json_core%json_initialize proc~json_parse_string->proc~json_initialize proc~json_parse_end json_core%json_parse_end proc~json_parse_string->proc~json_parse_end proc~json_prepare_parser json_core%json_prepare_parser proc~json_parse_string->proc~json_prepare_parser proc~json_value_create json_value_create proc~json_parse_string->proc~json_value_create proc~parse_value json_core%parse_value proc~json_parse_string->proc~parse_value proc~wrap_json_parse_string->interface~to_unicode proc~wrap_json_parse_string->none~deserialize~2 proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~get_current_line_from_file_sequential json_core%get_current_line_from_file_sequential proc~annotate_invalid_json->proc~get_current_line_from_file_sequential proc~get_current_line_from_file_stream json_core%get_current_line_from_file_stream proc~annotate_invalid_json->proc~get_current_line_from_file_stream proc~integer_to_string integer_to_string proc~annotate_invalid_json->proc~integer_to_string proc~json_traverse json_core%json_traverse proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_initialize->none~throw_exception proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions proc~json_parse_end->none~throw_exception proc~pop_char json_core%pop_char proc~json_parse_end->proc~pop_char proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~parse_value->none~throw_exception proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_for_chars json_core%parse_for_chars proc~parse_value->proc~parse_for_chars proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~parse_string json_core%parse_string proc~parse_value->proc~parse_string proc~parse_value->proc~pop_char proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~to_array json_core%to_array proc~parse_value->proc~to_array proc~to_logical json_core%to_logical proc~parse_value->proc~to_logical proc~to_null json_core%to_null proc~parse_value->proc~to_null proc~to_object json_core%to_object proc~parse_value->proc~to_object proc~to_string json_core%to_string proc~parse_value->proc~to_string proc~json_traverse->none~throw_exception proc~parse_array->none~destroy~3 proc~parse_array->none~throw_exception proc~parse_array->proc~json_value_create proc~parse_array->proc~parse_value proc~parse_array->proc~pop_char none~add~4 json_core%add proc~parse_array->none~add~4 proc~parse_for_chars->none~throw_exception proc~parse_for_chars->proc~pop_char proc~parse_number->proc~json_clear_exceptions proc~parse_number->proc~pop_char proc~parse_number->proc~push_char proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real proc~parse_object->none~destroy~3 proc~parse_object->none~throw_exception proc~parse_object->proc~json_value_create proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~pop_char proc~parse_object->none~add~4 proc~parse_string->none~throw_exception proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~push_char->none~throw_exception proc~push_char->proc~integer_to_string proc~to_array->proc~destroy_json_data proc~to_logical->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_initialize_json_file_from_string_v2~~CalledByGraph proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file json_file interface~json_file->proc~wrap_initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function wrap_initialize_json_file_from_string_v2 ( str , json_core_object ) & result ( file_object ) implicit none type ( json_file ) :: file_object character ( kind = CDK , len =* ), intent ( in ) :: str !! string to load JSON data from type ( json_core ), intent ( in ) :: json_core_object file_object = initialize_json_file_from_string_v2 ( to_unicode ( str ), json_core_object ) end function wrap_initialize_json_file_from_string_v2","tags":"","loc":"proc/wrap_initialize_json_file_from_string_v2.html"},{"title":"wrap_json_file_valid_path – JSON-Fortran","text":"private function wrap_json_file_valid_path(me, path) result(found) Alternate version of json_file_valid_path , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable Return Value logical(kind=LK) if the variable was found Calls proc~~wrap_json_file_valid_path~~CallsGraph proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path interface~to_unicode to_unicode proc~wrap_json_file_valid_path->interface~to_unicode none~valid_path json_file%valid_path proc~wrap_json_file_valid_path->none~valid_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~valid_path->proc~wrap_json_file_valid_path proc~json_file_valid_path json_file%json_file_valid_path none~valid_path->proc~json_file_valid_path none~valid_path~2 json_core%valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_valid_path json_core%json_valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path none~get~2 json_core%get proc~json_valid_path->none~get~2 proc~wrap_json_valid_path->interface~to_unicode proc~wrap_json_valid_path->none~valid_path~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_valid_path~~CalledByGraph proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path json_file%valid_path proc~wrap_json_file_valid_path->none~valid_path none~valid_path->proc~wrap_json_file_valid_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function wrap_json_file_valid_path ( me , path ) result ( found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ) :: found !! if the variable was found found = me % valid_path ( to_unicode ( path )) end function wrap_json_file_valid_path","tags":"","loc":"proc/wrap_json_file_valid_path.html"},{"title":"wrap_json_file_valid_path_op – JSON-Fortran","text":"private function wrap_json_file_valid_path_op(path, me) result(found) Alternate version of json_file_valid_path_op , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: path the path to the variable class( json_file ), intent(in) :: me the JSON file Return Value logical(kind=LK) if the variable was found Calls proc~~wrap_json_file_valid_path_op~~CallsGraph proc~wrap_json_file_valid_path_op json_file%wrap_json_file_valid_path_op interface~to_unicode to_unicode proc~wrap_json_file_valid_path_op->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function wrap_json_file_valid_path_op ( path , me ) result ( found ) implicit none character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable class ( json_file ), intent ( in ) :: me !! the JSON file logical ( LK ) :: found !! if the variable was found found = to_unicode ( path ) . in . me end function wrap_json_file_valid_path_op","tags":"","loc":"proc/wrap_json_file_valid_path_op.html"},{"title":"assign_json_file – JSON-Fortran","text":"private subroutine assign_json_file(me, f) Assignment operator for json_core = json_core .\nThis will duplicate the json_core and also\nperform a deep copy of the json_value data structure. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(out) :: me type( json_file ), intent(in) :: f Calls proc~~assign_json_file~~CallsGraph proc~assign_json_file json_file%assign_json_file proc~json_clone json_core%json_clone proc~assign_json_file->proc~json_clone proc~json_value_clone_func json_core%json_value_clone_func proc~json_clone->proc~json_value_clone_func proc~json_value_clone_func->proc~json_value_clone_func Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine assign_json_file ( me , f ) implicit none class ( json_file ), intent ( out ) :: me type ( json_file ), intent ( in ) :: f me % core = f % core ! no pointers here so OK to copy call me % core % clone ( f % p , me % p ) end subroutine assign_json_file","tags":"","loc":"proc/assign_json_file.html"},{"title":"assign_json_file_to_string – JSON-Fortran","text":"private subroutine assign_json_file_to_string(str, me) Assignment operator for character = json_core .\n This is just a wrapper for the json_value_to_string routine. Note If an exception is raised or the file contains no data,\n this will return an empty string. Type Bound json_file Arguments Type Intent Optional Attributes Name character(kind=CK, len=:), intent(out), allocatable :: str class( json_file ), intent(in) :: me Calls proc~~assign_json_file_to_string~~CallsGraph proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~json_failed json_core%json_failed proc~assign_json_file_to_string->proc~json_failed proc~json_value_to_string json_core%json_value_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_value_print json_core%json_value_print proc~json_value_to_string->proc~json_value_print proc~json_value_print->proc~json_failed proc~json_value_print->proc~json_value_print none~throw_exception json_core%throw_exception proc~json_value_print->none~throw_exception proc~escape_string escape_string proc~json_value_print->proc~escape_string proc~integer_to_string integer_to_string proc~json_value_print->proc~integer_to_string proc~json_is_vector json_core%json_is_vector proc~json_value_print->proc~json_is_vector proc~real_to_string real_to_string proc~json_value_print->proc~real_to_string proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_is_vector->none~throw_exception none~info~2 json_core%info proc~json_is_vector->none~info~2 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception proc~convert->none~info~2 none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~throw_exception proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_string_info->proc~json_clear_exceptions proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine assign_json_file_to_string ( str , me ) implicit none character ( kind = CK , len = :), allocatable , intent ( out ) :: str class ( json_file ), intent ( in ) :: me type ( json_core ) :: core_copy !! a copy of `core` from `me` if ( me % core % failed () . or . . not . associated ( me % p )) then str = CK_ '' else ! This is sort of a hack. Since `me` has to have `intent(in)` ! for the assignment to work, we need to make a copy of `me%core` ! so we can call the low level routine (since it needs it to ! be `intent(inout)`) because it's possible for this ! function to raise an exception. core_copy = me % core ! copy the parser settings call core_copy % serialize ( me % p , str ) if ( me % core % failed ()) str = CK_ '' end if end subroutine assign_json_file_to_string","tags":"","loc":"proc/assign_json_file_to_string.html"},{"title":"assign_string_to_json_file – JSON-Fortran","text":"private subroutine assign_string_to_json_file(me, str) Assignment operator for json_core = character.\nThis is just a wrapper for the json_file_load_from_string routine. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: str Calls proc~~assign_string_to_json_file~~CallsGraph proc~assign_string_to_json_file json_file%assign_string_to_json_file none~deserialize json_file%deserialize proc~assign_string_to_json_file->none~deserialize proc~json_clear_exceptions json_core%json_clear_exceptions proc~assign_string_to_json_file->proc~json_clear_exceptions proc~json_failed json_core%json_failed proc~assign_string_to_json_file->proc~json_failed proc~json_file_destroy json_file%json_file_destroy proc~assign_string_to_json_file->proc~json_file_destroy proc~json_file_load_from_string json_file%json_file_load_from_string none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string none~destroy~3 json_core%destroy proc~json_file_destroy->none~destroy~3 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_file_load_from_string->proc~json_file_destroy none~deserialize~2 json_core%deserialize proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_file_load_from_string->none~deserialize interface~to_unicode to_unicode proc~wrap_json_file_load_from_string->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_parse_string json_core%json_parse_string none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data none~throw_exception json_core%throw_exception proc~json_parse_string->none~throw_exception proc~annotate_invalid_json json_core%annotate_invalid_json proc~json_parse_string->proc~annotate_invalid_json proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_initialize json_core%json_initialize proc~json_parse_string->proc~json_initialize proc~json_parse_end json_core%json_parse_end proc~json_parse_string->proc~json_parse_end proc~json_prepare_parser json_core%json_prepare_parser proc~json_parse_string->proc~json_prepare_parser proc~json_value_create json_value_create proc~json_parse_string->proc~json_value_create proc~parse_value json_core%parse_value proc~json_parse_string->proc~parse_value proc~wrap_json_parse_string->interface~to_unicode proc~wrap_json_parse_string->none~deserialize~2 proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~get_current_line_from_file_sequential json_core%get_current_line_from_file_sequential proc~annotate_invalid_json->proc~get_current_line_from_file_sequential proc~get_current_line_from_file_stream json_core%get_current_line_from_file_stream proc~annotate_invalid_json->proc~get_current_line_from_file_stream proc~integer_to_string integer_to_string proc~annotate_invalid_json->proc~integer_to_string proc~json_traverse json_core%json_traverse proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_initialize->proc~json_clear_exceptions proc~json_initialize->none~throw_exception proc~json_initialize->proc~integer_to_string proc~json_parse_end->none~throw_exception proc~pop_char json_core%pop_char proc~json_parse_end->proc~pop_char proc~parse_value->none~throw_exception proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_for_chars json_core%parse_for_chars proc~parse_value->proc~parse_for_chars proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~parse_string json_core%parse_string proc~parse_value->proc~parse_string proc~parse_value->proc~pop_char proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~to_array json_core%to_array proc~parse_value->proc~to_array proc~to_logical json_core%to_logical proc~parse_value->proc~to_logical proc~to_null json_core%to_null proc~parse_value->proc~to_null proc~to_object json_core%to_object proc~parse_value->proc~to_object proc~to_string json_core%to_string proc~parse_value->proc~to_string proc~json_traverse->none~throw_exception proc~parse_array->none~destroy~3 proc~parse_array->none~throw_exception proc~parse_array->proc~json_value_create proc~parse_array->proc~parse_value proc~parse_array->proc~pop_char none~add~4 json_core%add proc~parse_array->none~add~4 proc~parse_for_chars->none~throw_exception proc~parse_for_chars->proc~pop_char proc~parse_number->proc~json_clear_exceptions proc~parse_number->proc~pop_char proc~parse_number->proc~push_char proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real proc~parse_object->none~destroy~3 proc~parse_object->none~throw_exception proc~parse_object->proc~json_value_create proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~pop_char proc~parse_object->none~add~4 proc~parse_string->none~throw_exception proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~push_char->none~throw_exception proc~push_char->proc~integer_to_string proc~to_array->proc~destroy_json_data proc~to_logical->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~assign_string_to_json_file~~CalledByGraph proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine assign_string_to_json_file ( me , str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: str if ( associated ( me % p )) call me % destroy () if ( me % core % failed ()) call me % core % clear_exceptions () call me % deserialize ( str ) end subroutine assign_string_to_json_file","tags":"","loc":"proc/assign_string_to_json_file.html"},{"title":"finalize_json_file – JSON-Fortran","text":"private subroutine finalize_json_file(me) Finalizer for json_file class. Just a wrapper for json_file_destroy . Arguments Type Intent Optional Attributes Name type( json_file ), intent(inout) :: me Calls proc~~finalize_json_file~~CallsGraph proc~finalize_json_file finalize_json_file proc~json_file_destroy json_file%json_file_destroy proc~finalize_json_file->proc~json_file_destroy none~destroy~3 json_core%destroy proc~json_file_destroy->none~destroy~3 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine finalize_json_file ( me ) implicit none type ( json_file ), intent ( inout ) :: me call me % destroy ( destroy_core = . true .) end subroutine finalize_json_file","tags":"","loc":"proc/finalize_json_file.html"},{"title":"get_json_core_in_file – JSON-Fortran","text":"private subroutine get_json_core_in_file(me, core) Get a copy of the json_core in this json_file . Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(in) :: me type( json_core ), intent(out) :: core Source Code subroutine get_json_core_in_file ( me , core ) implicit none class ( json_file ), intent ( in ) :: me type ( json_core ), intent ( out ) :: core core = me % core end subroutine get_json_core_in_file","tags":"","loc":"proc/get_json_core_in_file.html"},{"title":"initialize_json_core_in_file – JSON-Fortran","text":"private subroutine initialize_json_core_in_file(me, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) Initialize the json_core for this json_file .\n This is just a wrapper for json_initialize . Note This does not destroy the data in the file. Note initialize_json_core , json_initialize , initialize_json_core_in_file , initialize_json_file , initialize_json_file_v2 , initialize_json_file_from_string ,\n and initialize_json_file_from_string_v2 all have a similar interface. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: 1 : Default mode (see json_get_by_path_default ) 2 : as RFC 6901 “ JSON Pointer” paths\n (see json_get_by_path_rfc6901 ) 3 : JSONPath “bracket-notation”\n see json_get_by_path_jsonpath_bracket ) character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys If True [default] then no special checks\n are done to check for duplicate keys. If False, then after parsing, if any duplicate\n keys are found, an error is thrown. A call to json_value_validate will also check for\n duplicates. logical(kind=LK), intent(in), optional :: escape_solidus If True then the solidus “ / ” is always escaped\n “ \\/ ” when serializing JSON If False [default], then it is not escaped. Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : 1 : an exception will be raised if\n try to retrieve a null as a real. 2 : a null retrieved as a real\n will return a NaN. [default] 3 : a null retrieved as a real\n will return 0.0. integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: 1 : as strings (e.g., “NaN”,\n “Infinity”, “-Infinity”) [default] 2 : as JSON null values logical(kind=LK), intent(in), optional :: use_quiet_nan If true [default], null_to_real_mode=2 and string_to_real will use ieee_quiet_nan for NaN values. If false, ieee_signaling_nan will be used. logical(kind=LK), intent(in), optional :: strict_integer_type_checking If false, when parsing JSON , if an integer numeric value\n cannot be converted to an integer ( integer(IK) ),\n then an attempt is then make to convert it\n to a real ( real(RK) ). If true, an exception will be raised if the integer\n value cannot be read. (default is true) logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Calls proc~~initialize_json_core_in_file~~CallsGraph proc~initialize_json_core_in_file json_file%initialize_json_core_in_file proc~json_initialize json_core%json_initialize proc~initialize_json_core_in_file->proc~json_initialize none~throw_exception json_core%throw_exception proc~json_initialize->none~throw_exception proc~integer_to_string integer_to_string proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~initialize_json_core_in_file~~CalledByGraph proc~initialize_json_core_in_file json_file%initialize_json_core_in_file none~initialize json_file%initialize none~initialize->proc~initialize_json_core_in_file proc~initialize_json_file initialize_json_file proc~initialize_json_file->none~initialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~initialize proc~json_file_move_pointer json_file%json_file_move_pointer proc~json_file_move_pointer->none~initialize interface~json_file json_file interface~json_file->proc~initialize_json_file interface~json_file->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine initialize_json_core_in_file ( me ,& #include \"json_initialize_dummy_arguments.inc\" ) implicit none class ( json_file ), intent ( inout ) :: me #include \"json_initialize_arguments.inc\" call me % core % initialize (& #include \"json_initialize_dummy_arguments.inc\" ) end subroutine initialize_json_core_in_file","tags":"","loc":"proc/initialize_json_core_in_file.html"},{"title":"json_file_add – JSON-Fortran","text":"private subroutine json_file_add(me, p, destroy_original) Add a json_value pointer as the root object to a JSON file. Note This is mostly equivalent to: f = [[ json_file ]]( p ) But without the finalization calls. And: if ( destroy_original ) call [[ json_file ]]% destroy () call [[ json_file ]]% add ( '$' , p ) Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me type( json_value ), intent(in), pointer :: p pointer to the variable to add logical(kind=LK), intent(in), optional :: destroy_original if the file currently contains\nan associated pointer, it is\ndestroyed. [Default is True] Calls proc~~json_file_add~~CallsGraph proc~json_file_add json_file%json_file_add proc~json_file_destroy json_file%json_file_destroy proc~json_file_add->proc~json_file_destroy none~destroy~3 json_core%destroy proc~json_file_destroy->none~destroy~3 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_add ( me , p , destroy_original ) implicit none class ( json_file ), intent ( inout ) :: me type ( json_value ), pointer , intent ( in ) :: p !! pointer to the variable to add logical ( LK ), intent ( in ), optional :: destroy_original !! if the file currently contains !! an associated pointer, it is !! destroyed. [Default is True] logical ( LK ) :: destroy !! if `me%p` is to be destroyed if ( present ( destroy_original )) then destroy = destroy_original else destroy = . true . ! default end if if ( destroy ) call me % destroy () me % p => p end subroutine json_file_add","tags":"","loc":"proc/json_file_add.html"},{"title":"json_file_add_integer – JSON-Fortran","text":"private subroutine json_file_add_integer(me, path, val, found, was_created) Add an integer value to a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_file_add_integer~~CallsGraph proc~json_file_add_integer json_file%json_file_add_integer none~add_by_path~2 json_core%add_by_path proc~json_file_add_integer->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_integer->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->none~create_object proc~wrap_json_value_create_object->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_add_integer~~CalledByGraph proc~json_file_add_integer json_file%json_file_add_integer proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_add_integer ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , val , found , was_created ) end subroutine json_file_add_integer","tags":"","loc":"proc/json_file_add_integer.html"},{"title":"json_file_add_integer_vec – JSON-Fortran","text":"private subroutine json_file_add_integer_vec(me, path, vec, found, was_created) Add an integer vector to a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_file_add_integer_vec~~CallsGraph proc~json_file_add_integer_vec json_file%json_file_add_integer_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_integer_vec->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_integer_vec->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->none~create_object proc~wrap_json_value_create_object->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_add_integer_vec~~CalledByGraph proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_add_integer_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , vec , found , was_created ) end subroutine json_file_add_integer_vec","tags":"","loc":"proc/json_file_add_integer_vec.html"},{"title":"json_file_add_logical – JSON-Fortran","text":"private subroutine json_file_add_logical(me, path, val, found, was_created) Add a logical(LK) value to a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_file_add_logical~~CallsGraph proc~json_file_add_logical json_file%json_file_add_logical none~add_by_path~2 json_core%add_by_path proc~json_file_add_logical->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_logical->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->none~create_object proc~wrap_json_value_create_object->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_add_logical~~CalledByGraph proc~json_file_add_logical json_file%json_file_add_logical proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_add_logical ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , val , found , was_created ) end subroutine json_file_add_logical","tags":"","loc":"proc/json_file_add_logical.html"},{"title":"json_file_add_logical_vec – JSON-Fortran","text":"private subroutine json_file_add_logical_vec(me, path, vec, found, was_created) Add a logical(LK) vector to a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_file_add_logical_vec~~CallsGraph proc~json_file_add_logical_vec json_file%json_file_add_logical_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_logical_vec->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_logical_vec->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->none~create_object proc~wrap_json_value_create_object->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_add_logical_vec~~CalledByGraph proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_add_logical_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , vec , found , was_created ) end subroutine json_file_add_logical_vec","tags":"","loc":"proc/json_file_add_logical_vec.html"},{"title":"json_file_add_object – JSON-Fortran","text":"private subroutine json_file_add_object(me, path, p, found, was_created) Add a json_value pointer to an object to a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(in), pointer :: p pointer to the variable to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_file_add_object~~CallsGraph proc~json_file_add_object json_file%json_file_add_object none~add_by_path~2 json_core%add_by_path proc~json_file_add_object->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_object->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->none~create_object proc~wrap_json_value_create_object->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_add_object~~CalledByGraph proc~json_file_add_object json_file%json_file_add_object proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_add_object ( me , path , p , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable type ( json_value ), pointer , intent ( in ) :: p !! pointer to the variable to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , p , found , was_created ) end subroutine json_file_add_object","tags":"","loc":"proc/json_file_add_object.html"},{"title":"json_file_add_real – JSON-Fortran","text":"private subroutine json_file_add_real(me, path, val, found, was_created) Add a real(RK) variable value to a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_file_add_real~~CallsGraph proc~json_file_add_real json_file%json_file_add_real none~add_by_path~2 json_core%add_by_path proc~json_file_add_real->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_real->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->none~create_object proc~wrap_json_value_create_object->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_add_real~~CalledByGraph proc~json_file_add_real json_file%json_file_add_real proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_add_real ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , val , found , was_created ) end subroutine json_file_add_real","tags":"","loc":"proc/json_file_add_real.html"},{"title":"json_file_add_real32 – JSON-Fortran","text":"private subroutine json_file_add_real32(me, path, val, found, was_created) Alternate version of json_file_add_real where val is real32 . Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_file_add_real32~~CallsGraph proc~json_file_add_real32 json_file%json_file_add_real32 none~add_by_path~2 json_core%add_by_path proc~json_file_add_real32->none~add_by_path~2 proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_add_real32~~CalledByGraph proc~json_file_add_real32 json_file%json_file_add_real32 proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_add_real32 ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % core % add_by_path ( me % p , path , val , found , was_created ) end subroutine json_file_add_real32","tags":"","loc":"proc/json_file_add_real32.html"},{"title":"json_file_add_real32_vec – JSON-Fortran","text":"private subroutine json_file_add_real32_vec(me, path, vec, found, was_created) Alternate version of json_file_add_real_vec where vec is real32 . Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_file_add_real32_vec~~CallsGraph proc~json_file_add_real32_vec json_file%json_file_add_real32_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_add_real32_vec~~CalledByGraph proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_add_real32_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % core % add_by_path ( me % p , path , vec , found , was_created ) end subroutine json_file_add_real32_vec","tags":"","loc":"proc/json_file_add_real32_vec.html"},{"title":"json_file_add_real_vec – JSON-Fortran","text":"private subroutine json_file_add_real_vec(me, path, vec, found, was_created) Add a real(RK) vector to a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_file_add_real_vec~~CallsGraph proc~json_file_add_real_vec json_file%json_file_add_real_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_real_vec->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_real_vec->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->none~create_object proc~wrap_json_value_create_object->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_add_real_vec~~CalledByGraph proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_add_real_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , vec , found , was_created ) end subroutine json_file_add_real_vec","tags":"","loc":"proc/json_file_add_real_vec.html"},{"title":"json_file_add_string – JSON-Fortran","text":"private subroutine json_file_add_string(me, path, val, found, was_created, trim_str, adjustl_str) Add a character string to a json file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) Calls proc~~json_file_add_string~~CallsGraph proc~json_file_add_string json_file%json_file_add_string none~add_by_path~2 json_core%add_by_path proc~json_file_add_string->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_string->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->none~create_object proc~wrap_json_value_create_object->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_add_string~~CalledByGraph proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_add_string ( me , path , val , found , was_created , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (note that ADJUSTL is done before TRIM) if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , val , found , was_created , trim_str , adjustl_str ) end subroutine json_file_add_string","tags":"","loc":"proc/json_file_add_string.html"},{"title":"json_file_add_string_path_ascii – JSON-Fortran","text":"private subroutine json_file_add_string_path_ascii(me, path, val, found, was_created, trim_str, adjustl_str) Wrapper for json_file_add_string where “path” is kind=CDK). Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) Calls proc~~json_file_add_string_path_ascii~~CallsGraph proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii interface~to_unicode to_unicode proc~json_file_add_string_path_ascii->interface~to_unicode none~create_object json_core%create_object proc~json_file_add_string_path_ascii->none~create_object proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_file_add_string->none~create_object none~add_by_path~2 json_core%add_by_path proc~json_file_add_string->none~add_by_path~2 proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_add_string_path_ascii ( me , path , val , found ,& was_created , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (note that ADJUSTL is done before TRIM) if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % json_file_add_string ( to_unicode ( path ), val , found ,& was_created , trim_str , adjustl_str ) end subroutine json_file_add_string_path_ascii","tags":"","loc":"proc/json_file_add_string_path_ascii.html"},{"title":"json_file_add_string_value_ascii – JSON-Fortran","text":"private subroutine json_file_add_string_value_ascii(me, path, val, found, was_created, trim_str, adjustl_str) Wrapper for json_file_add_string where “val” is kind=CDK). Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) Calls proc~~json_file_add_string_value_ascii~~CallsGraph proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii interface~to_unicode to_unicode proc~json_file_add_string_value_ascii->interface~to_unicode none~create_object json_core%create_object proc~json_file_add_string_value_ascii->none~create_object proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_file_add_string->none~create_object none~add_by_path~2 json_core%add_by_path proc~json_file_add_string->none~add_by_path~2 proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_add_string_value_ascii ( me , path , val , found ,& was_created , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (note that ADJUSTL is done before TRIM) if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % json_file_add_string ( path , to_unicode ( val ), found ,& was_created , trim_str , adjustl_str ) end subroutine json_file_add_string_value_ascii","tags":"","loc":"proc/json_file_add_string_value_ascii.html"},{"title":"json_file_add_string_vec – JSON-Fortran","text":"private subroutine json_file_add_string_vec(me, path, vec, found, was_created, ilen, trim_str, adjustl_str) Add a string vector to a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element\n(note that ADJUSTL is done before TRIM) Calls proc~~json_file_add_string_vec~~CallsGraph proc~json_file_add_string_vec json_file%json_file_add_string_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_string_vec->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_string_vec->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->none~create_object proc~wrap_json_value_create_object->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_add_string_vec~~CalledByGraph proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_add_string_vec ( me , path , vec , found ,& was_created , ilen , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created integer ( IK ), dimension (:), intent ( in ), optional :: ilen !! the string lengths of each !! element in `value`. If not present, !! the full `len(value)` string is added !! for each element. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element !! (note that ADJUSTL is done before TRIM) if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , vec , found , was_created , ilen , trim_str , adjustl_str ) end subroutine json_file_add_string_vec","tags":"","loc":"proc/json_file_add_string_vec.html"},{"title":"json_file_add_string_vec_path_ascii – JSON-Fortran","text":"private subroutine json_file_add_string_vec_path_ascii(me, path, vec, found, was_created, ilen, trim_str, adjustl_str) Alternate version of json_file_add_string_vec , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element\n(note that ADJUSTL is done before TRIM) Calls proc~~json_file_add_string_vec_path_ascii~~CallsGraph proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii interface~to_unicode to_unicode proc~json_file_add_string_vec_path_ascii->interface~to_unicode proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_string_vec->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_string_vec->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_add_string_vec_path_ascii ( me , path , vec , found ,& was_created , ilen , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created integer ( IK ), dimension (:), intent ( in ), optional :: ilen !! the string lengths of each !! element in `value`. If not present, !! the full `len(value)` string is added !! for each element. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element !! (note that ADJUSTL is done before TRIM) call me % json_file_add_string_vec ( to_unicode ( path ), vec , found ,& was_created , ilen , trim_str , adjustl_str ) end subroutine json_file_add_string_vec_path_ascii","tags":"","loc":"proc/json_file_add_string_vec_path_ascii.html"},{"title":"json_file_add_string_vec_vec_ascii – JSON-Fortran","text":"private subroutine json_file_add_string_vec_vec_ascii(me, path, vec, found, was_created, ilen, trim_str, adjustl_str) Alternate version of json_file_add_string_vec , where “vec” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element\n(note that ADJUSTL is done before TRIM) Calls proc~~json_file_add_string_vec_vec_ascii~~CallsGraph proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii interface~to_unicode to_unicode proc~json_file_add_string_vec_vec_ascii->interface~to_unicode proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_string_vec->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_string_vec->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_add_string_vec_vec_ascii ( me , path , vec , found ,& was_created , ilen , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created integer ( IK ), dimension (:), intent ( in ), optional :: ilen !! the string lengths of each !! element in `value`. If not present, !! the full `len(value)` string is added !! for each element. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element !! (note that ADJUSTL is done before TRIM) call me % json_file_add_string_vec ( path , to_unicode ( vec ), found ,& was_created , ilen , trim_str , adjustl_str ) end subroutine json_file_add_string_vec_vec_ascii","tags":"","loc":"proc/json_file_add_string_vec_vec_ascii.html"},{"title":"json_file_check_for_errors – JSON-Fortran","text":"private subroutine json_file_check_for_errors(me, status_ok, error_msg) Retrieve error status and message from the class. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me logical(kind=LK), intent(out), optional :: status_ok true if there were no errors character(kind=CK, len=:), intent(out), optional, allocatable :: error_msg the error message\n(if there were errors) Calls proc~~json_file_check_for_errors~~CallsGraph proc~json_file_check_for_errors json_file%json_file_check_for_errors proc~json_check_for_errors json_core%json_check_for_errors proc~json_file_check_for_errors->proc~json_check_for_errors Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_check_for_errors ( me , status_ok , error_msg ) implicit none class ( json_file ), intent ( inout ) :: me logical ( LK ), intent ( out ), optional :: status_ok !! true if there were no errors character ( kind = CK , len = :), allocatable , intent ( out ), optional :: error_msg !! the error message !! (if there were errors) #if defined __GFORTRAN__ character ( kind = CK , len = :), allocatable :: tmp !! workaround for gfortran bugs call me % core % check_for_errors ( status_ok , tmp ) if ( present ( error_msg )) error_msg = tmp #else call me % core % check_for_errors ( status_ok , error_msg ) #endif end subroutine json_file_check_for_errors","tags":"","loc":"proc/json_file_check_for_errors.html"},{"title":"json_file_clear_exceptions – JSON-Fortran","text":"private pure subroutine json_file_clear_exceptions(me) Clear exceptions in the class. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me Calls proc~~json_file_clear_exceptions~~CallsGraph proc~json_file_clear_exceptions json_file%json_file_clear_exceptions proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_file_clear_exceptions->proc~json_clear_exceptions Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure subroutine json_file_clear_exceptions ( me ) implicit none class ( json_file ), intent ( inout ) :: me call me % core % clear_exceptions () end subroutine json_file_clear_exceptions","tags":"","loc":"proc/json_file_clear_exceptions.html"},{"title":"json_file_destroy – JSON-Fortran","text":"private subroutine json_file_destroy(me, destroy_core) Destroy the json_value data in a json_file .\n This may be done when the variable is no longer needed,\n or will be reused to open a different file.\n Otherwise a memory leak will occur. Optionally, also destroy the json_core instance (this\n is not necessary to prevent memory leaks, since a json_core does not use pointers). See also json_file_nullify History 12/9/2013 : Created 4/26/2016 : Added optional destroy_core argument Note This routine will be called automatically when the variable\n goes out of scope. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me logical, intent(in), optional :: destroy_core to also destroy the json_core .\ndefault is to leave it as is. Calls proc~~json_file_destroy~~CallsGraph proc~json_file_destroy json_file%json_file_destroy none~destroy~3 json_core%destroy proc~json_file_destroy->none~destroy~3 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_destroy~~CalledByGraph proc~json_file_destroy json_file%json_file_destroy proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->proc~json_file_destroy none~deserialize json_file%deserialize proc~assign_string_to_json_file->none~deserialize proc~finalize_json_file finalize_json_file proc~finalize_json_file->proc~json_file_destroy proc~json_file_add json_file%json_file_add proc~json_file_add->proc~json_file_destroy proc~json_file_load json_file%json_file_load proc~json_file_load->proc~json_file_destroy proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->proc~json_file_destroy none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_destroy ( me , destroy_core ) implicit none class ( json_file ), intent ( inout ) :: me logical , intent ( in ), optional :: destroy_core !! to also destroy the [[json_core(type)]]. !! default is to leave it as is. if ( associated ( me % p )) call me % core % destroy ( me % p ) if ( present ( destroy_core )) then if ( destroy_core ) call me % core % destroy () end if end subroutine json_file_destroy","tags":"","loc":"proc/json_file_destroy.html"},{"title":"json_file_get_alloc_string_vec – JSON-Fortran","text":"private subroutine json_file_get_alloc_string_vec(me, path, vec, ilen, found, default, default_ilen) Get an (allocatable length) string vector from a JSON file.\nThis is just a wrapper for json_get_alloc_string_vec_by_path . Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec value vector integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default integer(kind=IK), intent(in), optional, dimension(:) :: default_ilen the actual\nlength of default Calls proc~~json_file_get_alloc_string_vec~~CallsGraph proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get~2 json_core%get proc~json_file_get_alloc_string_vec->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_get_alloc_string_vec~~CalledByGraph proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get json_file%get none~get->proc~json_file_get_alloc_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_get_alloc_string_vec ( me , path , vec , ilen , found , default , default_ilen ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len = :), dimension (:), allocatable , intent ( out ) :: vec !! value vector integer ( IK ), dimension (:), allocatable , intent ( out ) :: ilen !! the actual length !! of each character !! string in the array logical ( LK ), intent ( out ), optional :: found character ( kind = CK , len =* ), dimension (:), intent ( in ), optional :: default integer ( IK ), dimension (:), intent ( in ), optional :: default_ilen !! the actual !! length of `default` call me % core % get ( me % p , path , vec , ilen , found , default , default_ilen ) end subroutine json_file_get_alloc_string_vec","tags":"","loc":"proc/json_file_get_alloc_string_vec.html"},{"title":"json_file_get_integer – JSON-Fortran","text":"private subroutine json_file_get_integer(me, path, val, found, default) Get an integer value from a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found integer(kind=IK), intent(in), optional :: default Calls proc~~json_file_get_integer~~CallsGraph proc~json_file_get_integer json_file%json_file_get_integer none~get~2 json_core%get proc~json_file_get_integer->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_get_integer~~CalledByGraph proc~json_file_get_integer json_file%json_file_get_integer none~get json_file%get none~get->proc~json_file_get_integer proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_get_integer ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found integer ( IK ), intent ( in ), optional :: default call me % core % get ( me % p , path , val , found , default ) end subroutine json_file_get_integer","tags":"","loc":"proc/json_file_get_integer.html"},{"title":"json_file_get_integer_vec – JSON-Fortran","text":"private subroutine json_file_get_integer_vec(me, path, vec, found, default) Get an integer vector from a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found integer(kind=IK), intent(in), optional, dimension(:) :: default Calls proc~~json_file_get_integer_vec~~CallsGraph proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get~2 json_core%get proc~json_file_get_integer_vec->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_get_integer_vec~~CalledByGraph proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get json_file%get none~get->proc~json_file_get_integer_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_get_integer_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found integer ( IK ), dimension (:), intent ( in ), optional :: default call me % core % get ( me % p , path , vec , found , default ) end subroutine json_file_get_integer_vec","tags":"","loc":"proc/json_file_get_integer_vec.html"},{"title":"json_file_get_logical – JSON-Fortran","text":"private subroutine json_file_get_logical(me, path, val, found, default) Get a logical(LK) value from a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found logical(kind=LK), intent(in), optional :: default Calls proc~~json_file_get_logical~~CallsGraph proc~json_file_get_logical json_file%json_file_get_logical none~get~2 json_core%get proc~json_file_get_logical->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_get_logical~~CalledByGraph proc~json_file_get_logical json_file%json_file_get_logical none~get json_file%get none~get->proc~json_file_get_logical proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_get_logical ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found logical ( LK ), intent ( in ), optional :: default call me % core % get ( me % p , path , val , found , default ) end subroutine json_file_get_logical","tags":"","loc":"proc/json_file_get_logical.html"},{"title":"json_file_get_logical_vec – JSON-Fortran","text":"private subroutine json_file_get_logical_vec(me, path, vec, found, default) Get a logical(LK) vector from a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found logical(kind=LK), intent(in), optional, dimension(:) :: default Calls proc~~json_file_get_logical_vec~~CallsGraph proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get~2 json_core%get proc~json_file_get_logical_vec->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_get_logical_vec~~CalledByGraph proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get json_file%get none~get->proc~json_file_get_logical_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_get_logical_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found logical ( LK ), dimension (:), intent ( in ), optional :: default call me % core % get ( me % p , path , vec , found , default ) end subroutine json_file_get_logical_vec","tags":"","loc":"proc/json_file_get_logical_vec.html"},{"title":"json_file_get_object – JSON-Fortran","text":"private subroutine json_file_get_object(me, path, p, found) Get a json_value pointer to an object from a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(out), pointer :: p pointer to the variable logical(kind=LK), intent(out), optional :: found if it was really found Calls proc~~json_file_get_object~~CallsGraph proc~json_file_get_object json_file%json_file_get_object none~get~2 json_core%get proc~json_file_get_object->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_get_object~~CalledByGraph proc~json_file_get_object json_file%json_file_get_object none~get json_file%get none~get->proc~json_file_get_object proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_get_object ( me , path , p , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable type ( json_value ), pointer , intent ( out ) :: p !! pointer to the variable logical ( LK ), intent ( out ), optional :: found !! if it was really found call me % core % get ( me % p , path , p , found ) end subroutine json_file_get_object","tags":"","loc":"proc/json_file_get_object.html"},{"title":"json_file_get_real – JSON-Fortran","text":"private subroutine json_file_get_real(me, path, val, found, default) Get a real(RK) variable value from a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found real(kind=RK), intent(in), optional :: default Calls proc~~json_file_get_real~~CallsGraph proc~json_file_get_real json_file%json_file_get_real none~get~2 json_core%get proc~json_file_get_real->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_get_real~~CalledByGraph proc~json_file_get_real json_file%json_file_get_real none~get json_file%get none~get->proc~json_file_get_real proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_get_real ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( RK ), intent ( in ), optional :: default call me % core % get ( me % p , path , val , found , default ) end subroutine json_file_get_real","tags":"","loc":"proc/json_file_get_real.html"},{"title":"json_file_get_real32 – JSON-Fortran","text":"private subroutine json_file_get_real32(me, path, val, found, default) Alternate version of json_file_get_real where val is real32 . Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found real(kind=real32), intent(in), optional :: default Calls proc~~json_file_get_real32~~CallsGraph proc~json_file_get_real32 json_file%json_file_get_real32 none~get~2 json_core%get proc~json_file_get_real32->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_get_real32~~CalledByGraph proc~json_file_get_real32 json_file%json_file_get_real32 none~get json_file%get none~get->proc~json_file_get_real32 proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_get_real32 ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( real32 ), intent ( in ), optional :: default call me % core % get ( me % p , path , val , found , default ) end subroutine json_file_get_real32","tags":"","loc":"proc/json_file_get_real32.html"},{"title":"json_file_get_real32_vec – JSON-Fortran","text":"private subroutine json_file_get_real32_vec(me, path, vec, found, default) Alternate version of json_file_get_real_vec where vec is real32 . Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found real(kind=real32), intent(in), optional, dimension(:) :: default Calls proc~~json_file_get_real32_vec~~CallsGraph proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get~2 json_core%get proc~json_file_get_real32_vec->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_get_real32_vec~~CalledByGraph proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get json_file%get none~get->proc~json_file_get_real32_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_get_real32_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( real32 ), dimension (:), intent ( in ), optional :: default call me % core % get ( me % p , path , vec , found , default ) end subroutine json_file_get_real32_vec","tags":"","loc":"proc/json_file_get_real32_vec.html"},{"title":"json_file_get_real_vec – JSON-Fortran","text":"private subroutine json_file_get_real_vec(me, path, vec, found, default) Get a real(RK) vector from a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found real(kind=RK), intent(in), optional, dimension(:) :: default Calls proc~~json_file_get_real_vec~~CallsGraph proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get~2 json_core%get proc~json_file_get_real_vec->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_get_real_vec~~CalledByGraph proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get json_file%get none~get->proc~json_file_get_real_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_get_real_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( RK ), dimension (:), intent ( in ), optional :: default call me % core % get ( me % p , path , vec , found , default ) end subroutine json_file_get_real_vec","tags":"","loc":"proc/json_file_get_real_vec.html"},{"title":"json_file_get_root – JSON-Fortran","text":"private subroutine json_file_get_root(me, p) Get a json_value pointer to the JSON file root. Note This is equivalent to calling [[json_file]]%get('$',p) Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me type( json_value ), intent(out), pointer :: p pointer to the variable Called by proc~~json_file_get_root~~CalledByGraph proc~json_file_get_root json_file%json_file_get_root none~get json_file%get none~get->proc~json_file_get_root proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_get_root ( me , p ) implicit none class ( json_file ), intent ( inout ) :: me type ( json_value ), pointer , intent ( out ) :: p !! pointer to the variable p => me % p end subroutine json_file_get_root","tags":"","loc":"proc/json_file_get_root.html"},{"title":"json_file_get_string – JSON-Fortran","text":"private subroutine json_file_get_string(me, path, val, found, default) Get a character string from a json file.\nThe output val is an allocatable character string. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=:), intent(out), allocatable :: val value logical(kind=LK), intent(out), optional :: found if it was really found character(kind=CK, len=*), intent(in), optional :: default Calls proc~~json_file_get_string~~CallsGraph proc~json_file_get_string json_file%json_file_get_string none~get~2 json_core%get proc~json_file_get_string->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_get_string~~CalledByGraph proc~json_file_get_string json_file%json_file_get_string none~get json_file%get none~get->proc~json_file_get_string proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_get_string ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len = :), allocatable , intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found character ( kind = CK , len =* ), intent ( in ), optional :: default call me % core % get ( me % p , path , val , found , default ) end subroutine json_file_get_string","tags":"","loc":"proc/json_file_get_string.html"},{"title":"json_file_get_string_vec – JSON-Fortran","text":"private subroutine json_file_get_string_vec(me, path, vec, found, default) Get a string vector from a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec value vector logical(kind=LK), intent(out), optional :: found if it was really found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default Calls proc~~json_file_get_string_vec~~CallsGraph proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get~2 json_core%get proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_get_string_vec~~CalledByGraph proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get json_file%get none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_get_string_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), dimension (:), allocatable , intent ( out ) :: vec !! value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found character ( kind = CK , len =* ), dimension (:), intent ( in ), optional :: default call me % core % get ( me % p , path , vec , found , default ) end subroutine json_file_get_string_vec","tags":"","loc":"proc/json_file_get_string_vec.html"},{"title":"json_file_load – JSON-Fortran","text":"private subroutine json_file_load(me, filename, unit, destroy_pointer) Load the JSON data from a file. Example program main use json_module implicit none type ( json_file ) :: f call f % load ( 'my_file.json' ) !... call f % destroy () end program main Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: filename the filename to open integer(kind=IK), intent(in), optional :: unit the unit number to use\n(if not present, a newunit\nis used) logical(kind=LK), intent(in), optional :: destroy_pointer destroy the pointer before\nloading (default is True) Calls proc~~json_file_load~~CallsGraph proc~json_file_load json_file%json_file_load none~load~2 json_core%load proc~json_file_load->none~load~2 proc~json_file_destroy json_file%json_file_destroy proc~json_file_load->proc~json_file_destroy proc~json_parse_file json_core%json_parse_file none~load~2->proc~json_parse_file none~destroy~3 json_core%destroy proc~json_file_destroy->none~destroy~3 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy none~throw_exception json_core%throw_exception proc~json_parse_file->none~throw_exception proc~annotate_invalid_json json_core%annotate_invalid_json proc~json_parse_file->proc~annotate_invalid_json proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_file->proc~json_check_all_for_duplicate_keys proc~json_initialize json_core%json_initialize proc~json_parse_file->proc~json_initialize proc~json_parse_end json_core%json_parse_end proc~json_parse_file->proc~json_parse_end proc~json_prepare_parser json_core%json_prepare_parser proc~json_parse_file->proc~json_prepare_parser proc~json_value_create json_value_create proc~json_parse_file->proc~json_value_create proc~parse_value json_core%parse_value proc~json_parse_file->proc~parse_value proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~get_current_line_from_file_sequential json_core%get_current_line_from_file_sequential proc~annotate_invalid_json->proc~get_current_line_from_file_sequential proc~get_current_line_from_file_stream json_core%get_current_line_from_file_stream proc~annotate_invalid_json->proc~get_current_line_from_file_stream proc~integer_to_string integer_to_string proc~annotate_invalid_json->proc~integer_to_string proc~json_traverse json_core%json_traverse proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_initialize->none~throw_exception proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions proc~json_parse_end->none~throw_exception proc~pop_char json_core%pop_char proc~json_parse_end->proc~pop_char proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~parse_value->none~throw_exception proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_for_chars json_core%parse_for_chars proc~parse_value->proc~parse_for_chars proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~parse_string json_core%parse_string proc~parse_value->proc~parse_string proc~parse_value->proc~pop_char proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~to_array json_core%to_array proc~parse_value->proc~to_array proc~to_logical json_core%to_logical proc~parse_value->proc~to_logical proc~to_null json_core%to_null proc~parse_value->proc~to_null proc~to_object json_core%to_object proc~parse_value->proc~to_object proc~to_string json_core%to_string proc~parse_value->proc~to_string proc~json_traverse->none~throw_exception proc~parse_array->none~destroy~3 proc~parse_array->none~throw_exception proc~parse_array->proc~json_value_create proc~parse_array->proc~parse_value proc~parse_array->proc~pop_char none~add~4 json_core%add proc~parse_array->none~add~4 proc~parse_for_chars->none~throw_exception proc~parse_for_chars->proc~pop_char proc~parse_number->proc~json_clear_exceptions proc~parse_number->proc~pop_char proc~parse_number->proc~push_char proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real proc~parse_object->none~destroy~3 proc~parse_object->none~throw_exception proc~parse_object->proc~json_value_create proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~pop_char proc~parse_object->none~add~4 proc~parse_string->none~throw_exception proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~push_char->none~throw_exception proc~push_char->proc~integer_to_string proc~to_array->proc~destroy_json_data proc~to_logical->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_load ( me , filename , unit , destroy_pointer ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: filename !! the filename to open integer ( IK ), intent ( in ), optional :: unit !! the unit number to use !! (if not present, a newunit !! is used) logical ( LK ), intent ( in ), optional :: destroy_pointer !! destroy the pointer before !! loading (default is True) if ( present ( destroy_pointer )) then if ( destroy_pointer ) call me % destroy () else ! by default it is destroyed call me % destroy () end if call me % core % load ( file = filename , p = me % p , unit = unit ) end subroutine json_file_load","tags":"","loc":"proc/json_file_load.html"},{"title":"json_file_load_from_string – JSON-Fortran","text":"private subroutine json_file_load_from_string(me, str, destroy_pointer) Load the JSON data from a string. Example Load JSON from a string: type ( json_file ) :: f call f % deserialize ( '{ \"name\": \"Leonidas\" }' ) Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: str string to load JSON data from logical(kind=LK), intent(in), optional :: destroy_pointer destroy the pointer before\nloading (default is True) Calls proc~~json_file_load_from_string~~CallsGraph proc~json_file_load_from_string json_file%json_file_load_from_string none~deserialize~2 json_core%deserialize proc~json_file_load_from_string->none~deserialize~2 proc~json_file_destroy json_file%json_file_destroy proc~json_file_load_from_string->proc~json_file_destroy proc~json_parse_string json_core%json_parse_string none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~destroy~3 json_core%destroy proc~json_file_destroy->none~destroy~3 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy none~throw_exception json_core%throw_exception proc~json_parse_string->none~throw_exception proc~annotate_invalid_json json_core%annotate_invalid_json proc~json_parse_string->proc~annotate_invalid_json proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_initialize json_core%json_initialize proc~json_parse_string->proc~json_initialize proc~json_parse_end json_core%json_parse_end proc~json_parse_string->proc~json_parse_end proc~json_prepare_parser json_core%json_prepare_parser proc~json_parse_string->proc~json_prepare_parser proc~json_value_create json_value_create proc~json_parse_string->proc~json_value_create proc~parse_value json_core%parse_value proc~json_parse_string->proc~parse_value proc~wrap_json_parse_string->none~deserialize~2 interface~to_unicode to_unicode proc~wrap_json_parse_string->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~get_current_line_from_file_sequential json_core%get_current_line_from_file_sequential proc~annotate_invalid_json->proc~get_current_line_from_file_sequential proc~get_current_line_from_file_stream json_core%get_current_line_from_file_stream proc~annotate_invalid_json->proc~get_current_line_from_file_stream proc~integer_to_string integer_to_string proc~annotate_invalid_json->proc~integer_to_string proc~json_traverse json_core%json_traverse proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_initialize->none~throw_exception proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions proc~json_parse_end->none~throw_exception proc~pop_char json_core%pop_char proc~json_parse_end->proc~pop_char proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~parse_value->none~throw_exception proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_for_chars json_core%parse_for_chars proc~parse_value->proc~parse_for_chars proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~parse_string json_core%parse_string proc~parse_value->proc~parse_string proc~parse_value->proc~pop_char proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~to_array json_core%to_array proc~parse_value->proc~to_array proc~to_logical json_core%to_logical proc~parse_value->proc~to_logical proc~to_null json_core%to_null proc~parse_value->proc~to_null proc~to_object json_core%to_object proc~parse_value->proc~to_object proc~to_string json_core%to_string proc~parse_value->proc~to_string proc~json_traverse->none~throw_exception proc~parse_array->none~destroy~3 proc~parse_array->none~throw_exception proc~parse_array->proc~json_value_create proc~parse_array->proc~parse_value proc~parse_array->proc~pop_char none~add~4 json_core%add proc~parse_array->none~add~4 proc~parse_for_chars->none~throw_exception proc~parse_for_chars->proc~pop_char proc~parse_number->proc~json_clear_exceptions proc~parse_number->proc~pop_char proc~parse_number->proc~push_char proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real proc~parse_object->none~destroy~3 proc~parse_object->none~throw_exception proc~parse_object->proc~json_value_create proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~pop_char proc~parse_object->none~add~4 proc~parse_string->none~throw_exception proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~push_char->none~throw_exception proc~push_char->proc~integer_to_string proc~to_array->proc~destroy_json_data proc~to_logical->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_load_from_string~~CalledByGraph proc~json_file_load_from_string json_file%json_file_load_from_string none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_load_from_string ( me , str , destroy_pointer ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: str !! string to load JSON data from logical ( LK ), intent ( in ), optional :: destroy_pointer !! destroy the pointer before !! loading (default is True) if ( present ( destroy_pointer )) then if ( destroy_pointer ) call me % destroy () else ! by default it is destroyed call me % destroy () end if call me % core % deserialize ( me % p , str ) end subroutine json_file_load_from_string","tags":"","loc":"proc/json_file_load_from_string.html"},{"title":"json_file_move_pointer – JSON-Fortran","text":"private subroutine json_file_move_pointer(to, from) Move the json_value pointer from one json_file to another.\n The “from” pointer is then nullified, but not destroyed. Note If “from%p” is not associated, then an error is thrown. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: to class( json_file ), intent(inout) :: from Calls proc~~json_file_move_pointer~~CallsGraph proc~json_file_move_pointer json_file%json_file_move_pointer none~initialize json_file%initialize proc~json_file_move_pointer->none~initialize none~throw_exception json_core%throw_exception proc~json_file_move_pointer->none~throw_exception proc~json_file_failed json_file%json_file_failed proc~json_file_move_pointer->proc~json_file_failed proc~initialize_json_core_in_file json_file%initialize_json_core_in_file none~initialize->proc~initialize_json_core_in_file proc~set_json_core_in_file json_file%set_json_core_in_file none~initialize->proc~set_json_core_in_file proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_failed json_core%json_failed proc~json_file_failed->proc~json_failed proc~json_initialize json_core%json_initialize proc~initialize_json_core_in_file->proc~json_initialize proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_initialize->none~throw_exception proc~integer_to_string integer_to_string proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_move_pointer ( to , from ) implicit none class ( json_file ), intent ( inout ) :: to class ( json_file ), intent ( inout ) :: from if ( associated ( from % p )) then if ( from % failed ()) then !Don't get the data if the FROM file has an !active exception, since it may not be valid. call to % core % throw_exception ( 'Error in json_file_move_pointer: ' // & 'error exception in FROM file.' ) else call to % initialize () !initialize and clear any exceptions that may be present to % p => from % p nullify ( from % p ) end if else call to % core % throw_exception ( 'Error in json_file_move_pointer: ' // & 'pointer is not associated.' ) end if end subroutine json_file_move_pointer","tags":"","loc":"proc/json_file_move_pointer.html"},{"title":"json_file_nullify – JSON-Fortran","text":"private subroutine json_file_nullify(me) Nullify the json_value pointer in a json_file ,\n but do not destroy it. This should normally only be done if the pointer is the target of\n another pointer outside the class that is still intended to be in\n scope after the json_file has gone out of scope.\n Otherwise, this would result in a memory leak. See also json_file_destroy History 6/30/2019 : Created Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me Source Code subroutine json_file_nullify ( me ) implicit none class ( json_file ), intent ( inout ) :: me nullify ( me % p ) end subroutine json_file_nullify","tags":"","loc":"proc/json_file_nullify.html"},{"title":"json_file_print_error_message – JSON-Fortran","text":"private subroutine json_file_print_error_message(me, io_unit) This is a wrapper for json_print_error_message . Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me integer, intent(in), optional :: io_unit Calls proc~~json_file_print_error_message~~CallsGraph proc~json_file_print_error_message json_file%json_file_print_error_message proc~json_print_error_message json_core%json_print_error_message proc~json_file_print_error_message->proc~json_print_error_message proc~json_check_for_errors json_core%json_check_for_errors proc~json_print_error_message->proc~json_check_for_errors proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_print_error_message->proc~json_clear_exceptions Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_print_error_message ( me , io_unit ) implicit none class ( json_file ), intent ( inout ) :: me integer , intent ( in ), optional :: io_unit call me % core % print_error_message ( io_unit ) end subroutine json_file_print_error_message","tags":"","loc":"proc/json_file_print_error_message.html"},{"title":"json_file_print_to_console – JSON-Fortran","text":"private subroutine json_file_print_to_console(me) Print the JSON file to the console. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me Source Code subroutine json_file_print_to_console ( me ) implicit none class ( json_file ), intent ( inout ) :: me call me % core % print ( me % p , iunit = int ( output_unit , IK )) end subroutine json_file_print_to_console","tags":"","loc":"proc/json_file_print_to_console.html"},{"title":"json_file_print_to_filename – JSON-Fortran","text":"private subroutine json_file_print_to_filename(me, filename) Print the JSON structure to the specified filename.\n The file is opened, printed, and then closed. Example Example loading a JSON file, changing a value, and then printing\n result to a new file: type ( json_file ) :: f logical :: found call f % load ( 'my_file.json' ) !open the original file call f % update ( 'version' , 4 , found ) !change the value of a variable call f % print ( 'my_file_2.json' ) !save file as new name Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: filename filename to print to Source Code subroutine json_file_print_to_filename ( me , filename ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: filename !! filename to print to call me % core % print ( me % p , filename ) end subroutine json_file_print_to_filename","tags":"","loc":"proc/json_file_print_to_filename.html"},{"title":"json_file_print_to_string – JSON-Fortran","text":"private subroutine json_file_print_to_string(me, str) Print the JSON file to a string. Example Open a JSON file, and then print the contents to a string: type ( json_file ) :: f character ( kind = CK , len = :), allocatable :: str call f % load ( 'my_file.json' ) call f % serialize ( str ) Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=:), intent(out), allocatable :: str string to print JSON data to Calls proc~~json_file_print_to_string~~CallsGraph proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_value_to_string json_core%json_value_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~json_value_print json_core%json_value_print proc~json_value_to_string->proc~json_value_print proc~json_value_print->proc~json_value_print none~throw_exception json_core%throw_exception proc~json_value_print->none~throw_exception proc~escape_string escape_string proc~json_value_print->proc~escape_string proc~integer_to_string integer_to_string proc~json_value_print->proc~integer_to_string proc~json_failed json_core%json_failed proc~json_value_print->proc~json_failed proc~json_is_vector json_core%json_is_vector proc~json_value_print->proc~json_is_vector proc~real_to_string real_to_string proc~json_value_print->proc~real_to_string proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_is_vector->none~throw_exception none~info~2 json_core%info proc~json_is_vector->none~info~2 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception proc~convert->none~info~2 none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~throw_exception proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_string_info->proc~json_clear_exceptions proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_print_to_string ( me , str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len = :), allocatable , intent ( out ) :: str !! string to print JSON data to call me % core % serialize ( me % p , str ) end subroutine json_file_print_to_string","tags":"","loc":"proc/json_file_print_to_string.html"},{"title":"json_file_print_to_unit – JSON-Fortran","text":"private subroutine json_file_print_to_unit(me, iunit) Prints the JSON file to the specified file unit number. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me integer(kind=IK), intent(in) :: iunit file unit number (must not be -1) Calls proc~~json_file_print_to_unit~~CallsGraph proc~json_file_print_to_unit json_file%json_file_print_to_unit none~throw_exception json_core%throw_exception proc~json_file_print_to_unit->none~throw_exception proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_print_to_unit ( me , iunit ) implicit none class ( json_file ), intent ( inout ) :: me integer ( IK ), intent ( in ) :: iunit !! file unit number (must not be -1) if ( iunit /= unit2str ) then call me % core % print ( me % p , iunit = iunit ) else call me % core % throw_exception ( 'Error in json_file_print_to_unit: iunit must not be -1.' ) end if end subroutine json_file_print_to_unit","tags":"","loc":"proc/json_file_print_to_unit.html"},{"title":"json_file_remove – JSON-Fortran","text":"private subroutine json_file_remove(me, path) Remove a variable from a JSON file. Note This is just a wrapper to remove_if_present . Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable Calls proc~~json_file_remove~~CallsGraph proc~json_file_remove json_file%json_file_remove none~remove_if_present json_core%remove_if_present proc~json_file_remove->none~remove_if_present proc~json_value_remove_if_present json_core%json_value_remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~get~2 json_core%get proc~json_value_remove_if_present->none~get~2 proc~json_value_remove json_core%json_value_remove proc~json_value_remove_if_present->proc~json_value_remove proc~wrap_json_value_remove_if_present->none~remove_if_present interface~to_unicode to_unicode proc~wrap_json_value_remove_if_present->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~json_value_replace->proc~json_value_remove none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_remove~~CalledByGraph proc~json_file_remove json_file%json_file_remove none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove proc~wrap_json_file_remove->none~remove Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_remove ( me , path ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable call me % core % remove_if_present ( me % p , path ) end subroutine json_file_remove","tags":"","loc":"proc/json_file_remove.html"},{"title":"json_file_rename – JSON-Fortran","text":"private subroutine json_file_rename(me, path, name, found) Rename a variable in a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if the variable was found Called by proc~~json_file_rename~~CalledByGraph proc~json_file_rename json_file%json_file_rename proc~json_file_rename_name_ascii json_file%json_file_rename_name_ascii proc~json_file_rename_name_ascii->proc~json_file_rename proc~json_file_rename_path_ascii json_file%json_file_rename_path_ascii proc~json_file_rename_path_ascii->proc~json_file_rename proc~wrap_json_file_rename json_file%wrap_json_file_rename proc~wrap_json_file_rename->proc~json_file_rename Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_rename ( me , path , name , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), intent ( in ) :: name !! the new name logical ( LK ), intent ( out ), optional :: found !! if the variable was found call me % core % rename ( me % p , path , name , found ) end subroutine json_file_rename","tags":"","loc":"proc/json_file_rename.html"},{"title":"json_file_rename_name_ascii – JSON-Fortran","text":"private subroutine json_file_rename_name_ascii(me, path, name, found) Wrapper for json_file_rename where “name” is kind=CDK). Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if the variable was found Calls proc~~json_file_rename_name_ascii~~CallsGraph proc~json_file_rename_name_ascii json_file%json_file_rename_name_ascii interface~to_unicode to_unicode proc~json_file_rename_name_ascii->interface~to_unicode proc~json_file_rename json_file%json_file_rename proc~json_file_rename_name_ascii->proc~json_file_rename proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_rename_name_ascii ( me , path , name , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), intent ( in ) :: name !! the new name logical ( LK ), intent ( out ), optional :: found !! if the variable was found call me % json_file_rename ( path , to_unicode ( name ), found ) end subroutine json_file_rename_name_ascii","tags":"","loc":"proc/json_file_rename_name_ascii.html"},{"title":"json_file_rename_path_ascii – JSON-Fortran","text":"private subroutine json_file_rename_path_ascii(me, path, name, found) Wrapper for json_file_rename where “path” is kind=CDK). Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if the variable was found Calls proc~~json_file_rename_path_ascii~~CallsGraph proc~json_file_rename_path_ascii json_file%json_file_rename_path_ascii interface~to_unicode to_unicode proc~json_file_rename_path_ascii->interface~to_unicode proc~json_file_rename json_file%json_file_rename proc~json_file_rename_path_ascii->proc~json_file_rename proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_rename_path_ascii ( me , path , name , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), intent ( in ) :: name !! the new name logical ( LK ), intent ( out ), optional :: found !! if the variable was found call me % json_file_rename ( to_unicode ( path ), name , found ) end subroutine json_file_rename_path_ascii","tags":"","loc":"proc/json_file_rename_path_ascii.html"},{"title":"json_file_traverse – JSON-Fortran","text":"private subroutine json_file_traverse(me, traverse_callback) Traverse the JSON structure in the file.\nThis routine calls the user-specified json_traverse_callback_func for each element of the structure. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me procedure( json_traverse_callback_func ) :: traverse_callback Calls proc~~json_file_traverse~~CallsGraph proc~json_file_traverse json_file%json_file_traverse proc~json_traverse json_core%json_traverse proc~json_file_traverse->proc~json_traverse none~throw_exception json_core%throw_exception proc~json_traverse->none~throw_exception proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_traverse ( me , traverse_callback ) implicit none class ( json_file ), intent ( inout ) :: me procedure ( json_traverse_callback_func ) :: traverse_callback call me % core % traverse ( me % p , traverse_callback ) end subroutine json_file_traverse","tags":"","loc":"proc/json_file_traverse.html"},{"title":"json_file_update_integer – JSON-Fortran","text":"private subroutine json_file_update_integer(me, path, val, found) Given the path string, if the variable is present in the file,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. See also json_update_integer Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path integer(kind=IK), intent(in) :: val logical(kind=LK), intent(out) :: found Calls proc~~json_file_update_integer~~CallsGraph proc~json_file_update_integer json_file%json_file_update_integer none~update~4 json_core%update proc~json_file_update_integer->none~update~4 proc~json_failed json_core%json_failed proc~json_file_update_integer->proc~json_failed proc~json_update_string_name_ascii json_core%json_update_string_name_ascii none~update~4->proc~json_update_string_name_ascii proc~json_update_string_val_ascii json_core%json_update_string_val_ascii none~update~4->proc~json_update_string_val_ascii proc~json_update_string_name_ascii->none~update~4 interface~to_unicode to_unicode proc~json_update_string_name_ascii->interface~to_unicode proc~json_update_string_val_ascii->none~update~4 proc~json_update_string_val_ascii->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_update_integer ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path integer ( IK ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found if (. not . me % core % failed ()) call me % core % update ( me % p , path , val , found ) end subroutine json_file_update_integer","tags":"","loc":"proc/json_file_update_integer.html"},{"title":"json_file_update_logical – JSON-Fortran","text":"private subroutine json_file_update_logical(me, path, val, found) Given the path string, if the variable is present in the file,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. See also json_update_logical Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path logical(kind=LK), intent(in) :: val logical(kind=LK), intent(out) :: found Calls proc~~json_file_update_logical~~CallsGraph proc~json_file_update_logical json_file%json_file_update_logical none~update~4 json_core%update proc~json_file_update_logical->none~update~4 proc~json_failed json_core%json_failed proc~json_file_update_logical->proc~json_failed proc~json_update_string_name_ascii json_core%json_update_string_name_ascii none~update~4->proc~json_update_string_name_ascii proc~json_update_string_val_ascii json_core%json_update_string_val_ascii none~update~4->proc~json_update_string_val_ascii proc~json_update_string_name_ascii->none~update~4 interface~to_unicode to_unicode proc~json_update_string_name_ascii->interface~to_unicode proc~json_update_string_val_ascii->none~update~4 proc~json_update_string_val_ascii->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_update_logical ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path logical ( LK ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found if (. not . me % core % failed ()) call me % core % update ( me % p , path , val , found ) end subroutine json_file_update_logical","tags":"","loc":"proc/json_file_update_logical.html"},{"title":"json_file_update_real – JSON-Fortran","text":"private subroutine json_file_update_real(me, path, val, found) Given the path string, if the variable is present in the file,\nand is a scalar, then update its value.\nIf it is not present, then create it and set its value. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path real(kind=RK), intent(in) :: val logical(kind=LK), intent(out) :: found Calls proc~~json_file_update_real~~CallsGraph proc~json_file_update_real json_file%json_file_update_real none~update~4 json_core%update proc~json_file_update_real->none~update~4 proc~json_failed json_core%json_failed proc~json_file_update_real->proc~json_failed proc~json_update_string_name_ascii json_core%json_update_string_name_ascii none~update~4->proc~json_update_string_name_ascii proc~json_update_string_val_ascii json_core%json_update_string_val_ascii none~update~4->proc~json_update_string_val_ascii proc~json_update_string_name_ascii->none~update~4 interface~to_unicode to_unicode proc~json_update_string_name_ascii->interface~to_unicode proc~json_update_string_val_ascii->none~update~4 proc~json_update_string_val_ascii->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_update_real ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path real ( RK ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found if (. not . me % core % failed ()) call me % core % update ( me % p , path , val , found ) end subroutine json_file_update_real","tags":"","loc":"proc/json_file_update_real.html"},{"title":"json_file_update_real32 – JSON-Fortran","text":"private subroutine json_file_update_real32(me, path, val, found) Alternate version of json_file_update_real where val is real32 . Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path real(kind=real32), intent(in) :: val logical(kind=LK), intent(out) :: found Calls proc~~json_file_update_real32~~CallsGraph proc~json_file_update_real32 json_file%json_file_update_real32 none~update~2 json_file%update proc~json_file_update_real32->none~update~2 proc~json_file_update_string_name_ascii json_file%json_file_update_string_name_ascii none~update~2->proc~json_file_update_string_name_ascii proc~json_file_update_string_val_ascii json_file%json_file_update_string_val_ascii none~update~2->proc~json_file_update_string_val_ascii proc~json_file_update_string_name_ascii->none~update~2 interface~to_unicode to_unicode proc~json_file_update_string_name_ascii->interface~to_unicode proc~json_file_update_string_val_ascii->none~update~2 proc~json_file_update_string_val_ascii->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_update_real32 ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path real ( real32 ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found call me % update ( path , real ( val , RK ), found ) end subroutine json_file_update_real32","tags":"","loc":"proc/json_file_update_real32.html"},{"title":"json_file_update_string – JSON-Fortran","text":"private subroutine json_file_update_string(me, path, val, found, trim_str, adjustl_str) Given the path string, if the variable is present in the file,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. See also json_update_string Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path character(kind=CK, len=*), intent(in) :: val logical(kind=LK), intent(out) :: found logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) Calls proc~~json_file_update_string~~CallsGraph proc~json_file_update_string json_file%json_file_update_string none~update~4 json_core%update proc~json_file_update_string->none~update~4 proc~json_failed json_core%json_failed proc~json_file_update_string->proc~json_failed proc~json_update_string_name_ascii json_core%json_update_string_name_ascii none~update~4->proc~json_update_string_name_ascii proc~json_update_string_val_ascii json_core%json_update_string_val_ascii none~update~4->proc~json_update_string_val_ascii proc~json_update_string_name_ascii->none~update~4 interface~to_unicode to_unicode proc~json_update_string_name_ascii->interface~to_unicode proc~json_update_string_val_ascii->none~update~4 proc~json_update_string_val_ascii->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_update_string ( me , path , val , found , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path character ( kind = CK , len =* ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (note that ADJUSTL is done before TRIM) if (. not . me % core % failed ()) call me % core % update ( me % p , path , val , found , trim_str , adjustl_str ) end subroutine json_file_update_string","tags":"","loc":"proc/json_file_update_string.html"},{"title":"json_file_update_string_name_ascii – JSON-Fortran","text":"private subroutine json_file_update_string_name_ascii(me, path, val, found, trim_str, adjustl_str) Alternate version of json_file_update_string , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=*), intent(in) :: val logical(kind=LK), intent(out) :: found logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) Calls proc~~json_file_update_string_name_ascii~~CallsGraph proc~json_file_update_string_name_ascii json_file%json_file_update_string_name_ascii interface~to_unicode to_unicode proc~json_file_update_string_name_ascii->interface~to_unicode none~update~2 json_file%update proc~json_file_update_string_name_ascii->none~update~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~update~2->proc~json_file_update_string_name_ascii proc~json_file_update_string_val_ascii json_file%json_file_update_string_val_ascii none~update~2->proc~json_file_update_string_val_ascii proc~json_file_update_string_val_ascii->interface~to_unicode proc~json_file_update_string_val_ascii->none~update~2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_update_string_name_ascii~~CalledByGraph proc~json_file_update_string_name_ascii json_file%json_file_update_string_name_ascii none~update~2 json_file%update proc~json_file_update_string_name_ascii->none~update~2 none~update~2->proc~json_file_update_string_name_ascii proc~json_file_update_string_val_ascii json_file%json_file_update_string_val_ascii none~update~2->proc~json_file_update_string_val_ascii proc~json_file_update_real32 json_file%json_file_update_real32 proc~json_file_update_real32->none~update~2 proc~json_file_update_string_val_ascii->none~update~2 proc~wrap_json_file_update_integer json_file%wrap_json_file_update_integer proc~wrap_json_file_update_integer->none~update~2 proc~wrap_json_file_update_logical json_file%wrap_json_file_update_logical proc~wrap_json_file_update_logical->none~update~2 proc~wrap_json_file_update_real json_file%wrap_json_file_update_real proc~wrap_json_file_update_real->none~update~2 proc~wrap_json_file_update_real32 json_file%wrap_json_file_update_real32 proc~wrap_json_file_update_real32->none~update~2 proc~wrap_json_file_update_string json_file%wrap_json_file_update_string proc~wrap_json_file_update_string->none~update~2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_update_string_name_ascii ( me , path , val , found , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path character ( kind = CK , len =* ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (note that ADJUSTL is done before TRIM) call me % update ( to_unicode ( path ), val , found , trim_str , adjustl_str ) end subroutine json_file_update_string_name_ascii","tags":"","loc":"proc/json_file_update_string_name_ascii.html"},{"title":"json_file_update_string_val_ascii – JSON-Fortran","text":"private subroutine json_file_update_string_val_ascii(me, path, val, found, trim_str, adjustl_str) Alternate version of json_file_update_string , where “val” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path character(kind=CDK, len=*), intent(in) :: val logical(kind=LK), intent(out) :: found logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) Calls proc~~json_file_update_string_val_ascii~~CallsGraph proc~json_file_update_string_val_ascii json_file%json_file_update_string_val_ascii interface~to_unicode to_unicode proc~json_file_update_string_val_ascii->interface~to_unicode none~update~2 json_file%update proc~json_file_update_string_val_ascii->none~update~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~update~2->proc~json_file_update_string_val_ascii proc~json_file_update_string_name_ascii json_file%json_file_update_string_name_ascii none~update~2->proc~json_file_update_string_name_ascii proc~json_file_update_string_name_ascii->interface~to_unicode proc~json_file_update_string_name_ascii->none~update~2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_update_string_val_ascii~~CalledByGraph proc~json_file_update_string_val_ascii json_file%json_file_update_string_val_ascii none~update~2 json_file%update proc~json_file_update_string_val_ascii->none~update~2 none~update~2->proc~json_file_update_string_val_ascii proc~json_file_update_string_name_ascii json_file%json_file_update_string_name_ascii none~update~2->proc~json_file_update_string_name_ascii proc~json_file_update_real32 json_file%json_file_update_real32 proc~json_file_update_real32->none~update~2 proc~json_file_update_string_name_ascii->none~update~2 proc~wrap_json_file_update_integer json_file%wrap_json_file_update_integer proc~wrap_json_file_update_integer->none~update~2 proc~wrap_json_file_update_logical json_file%wrap_json_file_update_logical proc~wrap_json_file_update_logical->none~update~2 proc~wrap_json_file_update_real json_file%wrap_json_file_update_real proc~wrap_json_file_update_real->none~update~2 proc~wrap_json_file_update_real32 json_file%wrap_json_file_update_real32 proc~wrap_json_file_update_real32->none~update~2 proc~wrap_json_file_update_string json_file%wrap_json_file_update_string proc~wrap_json_file_update_string->none~update~2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_update_string_val_ascii ( me , path , val , found , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path character ( kind = CDK , len =* ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (note that ADJUSTL is done before TRIM) call me % update ( path , to_unicode ( val ), found , trim_str , adjustl_str ) end subroutine json_file_update_string_val_ascii","tags":"","loc":"proc/json_file_update_string_val_ascii.html"},{"title":"json_file_variable_info – JSON-Fortran","text":"private subroutine json_file_variable_info(me, path, found, var_type, n_children, name) Returns information about a variable in a json_file . Note If found is present, no exceptions will be thrown if an\n error occurs. Otherwise, an exception will be thrown if the\n variable is not found. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path path to the variable logical(kind=LK), intent(out), optional :: found the variable exists in the structure integer(kind=IK), intent(out), optional :: var_type variable type integer(kind=IK), intent(out), optional :: n_children number of children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name Calls proc~~json_file_variable_info~~CallsGraph proc~json_file_variable_info json_file%json_file_variable_info none~info~2 json_core%info proc~json_file_variable_info->none~info~2 proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~throw_exception json_core%throw_exception proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~wrap_json_info_by_path->none~info~2 interface~to_unicode to_unicode proc~wrap_json_info_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_variable_info~~CalledByGraph proc~json_file_variable_info json_file%json_file_variable_info none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info proc~wrap_json_file_variable_info->none~info Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_variable_info ( me , path , found , var_type , n_children , name ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable logical ( LK ), intent ( out ), optional :: found !! the variable exists in the structure integer ( IK ), intent ( out ), optional :: var_type !! variable type integer ( IK ), intent ( out ), optional :: n_children !! number of children character ( kind = CK , len = :), allocatable , intent ( out ), optional :: name !! variable name call me % core % info ( me % p , path , found , var_type , n_children , name ) end subroutine json_file_variable_info","tags":"","loc":"proc/json_file_variable_info.html"},{"title":"json_file_variable_matrix_info – JSON-Fortran","text":"private subroutine json_file_variable_matrix_info(me, path, is_matrix, found, var_type, n_sets, set_size, name) Returns matrix information about a variable in a json_file . Note If found is present, no exceptions will be thrown if an\n error occurs. Otherwise, an exception will be thrown if the\n variable is not found. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, 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\nthe matrix (if all elements have\nthe same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name Calls proc~~json_file_variable_matrix_info~~CallsGraph proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info none~matrix_info~2 json_core%matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~get_child json_core%get_child proc~json_matrix_info->none~get_child none~info~2 json_core%info proc~json_matrix_info->none~info~2 none~throw_exception json_core%throw_exception proc~json_matrix_info->none~throw_exception proc~json_matrix_info_by_path->none~matrix_info~2 none~get~2 json_core%get proc~json_matrix_info_by_path->none~get~2 proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_matrix_info_by_path->proc~json_clear_exceptions proc~wrap_json_matrix_info_by_path->none~matrix_info~2 interface~to_unicode to_unicode proc~wrap_json_matrix_info_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~get_child proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~convert->none~info~2 proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_variable_matrix_info~~CalledByGraph proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info->none~matrix_info Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine 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 = CK , 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 % core % matrix_info ( me % p , path , is_matrix , found , var_type , n_sets , set_size , name ) end subroutine json_file_variable_matrix_info","tags":"","loc":"proc/json_file_variable_matrix_info.html"},{"title":"set_json_core_in_file – JSON-Fortran","text":"private subroutine set_json_core_in_file(me, core) Set the json_core for this json_file . Note This does not destroy the data in the file. Note This one is used if you want to initialize the file with\n an already-existing json_core (presumably, this was already\n initialized by a call to initialize_json_core or similar). Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me type( json_core ), intent(in) :: core Called by proc~~set_json_core_in_file~~CalledByGraph proc~set_json_core_in_file json_file%set_json_core_in_file none~initialize json_file%initialize none~initialize->proc~set_json_core_in_file proc~initialize_json_file initialize_json_file proc~initialize_json_file->none~initialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~initialize proc~json_file_move_pointer json_file%json_file_move_pointer proc~json_file_move_pointer->none~initialize interface~json_file json_file interface~json_file->proc~initialize_json_file interface~json_file->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine set_json_core_in_file ( me , core ) implicit none class ( json_file ), intent ( inout ) :: me type ( json_core ), intent ( in ) :: core me % core = core end subroutine set_json_core_in_file","tags":"","loc":"proc/set_json_core_in_file.html"},{"title":"wrap_assign_string_to_json_file – JSON-Fortran","text":"private subroutine wrap_assign_string_to_json_file(me, str) Alternate version of assign_string_to_json_file , where “str” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: str Calls proc~~wrap_assign_string_to_json_file~~CallsGraph proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file interface~to_unicode to_unicode proc~wrap_assign_string_to_json_file->interface~to_unicode proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~deserialize json_file%deserialize proc~assign_string_to_json_file->none~deserialize proc~json_clear_exceptions json_core%json_clear_exceptions proc~assign_string_to_json_file->proc~json_clear_exceptions proc~json_failed json_core%json_failed proc~assign_string_to_json_file->proc~json_failed proc~json_file_destroy json_file%json_file_destroy proc~assign_string_to_json_file->proc~json_file_destroy proc~json_file_load_from_string json_file%json_file_load_from_string none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string none~destroy~3 json_core%destroy proc~json_file_destroy->none~destroy~3 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_file_load_from_string->proc~json_file_destroy none~deserialize~2 json_core%deserialize proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_file_load_from_string->interface~to_unicode proc~wrap_json_file_load_from_string->none~deserialize proc~json_parse_string json_core%json_parse_string none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data none~throw_exception json_core%throw_exception proc~json_parse_string->none~throw_exception proc~annotate_invalid_json json_core%annotate_invalid_json proc~json_parse_string->proc~annotate_invalid_json proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_initialize json_core%json_initialize proc~json_parse_string->proc~json_initialize proc~json_parse_end json_core%json_parse_end proc~json_parse_string->proc~json_parse_end proc~json_prepare_parser json_core%json_prepare_parser proc~json_parse_string->proc~json_prepare_parser proc~json_value_create json_value_create proc~json_parse_string->proc~json_value_create proc~parse_value json_core%parse_value proc~json_parse_string->proc~parse_value proc~wrap_json_parse_string->interface~to_unicode proc~wrap_json_parse_string->none~deserialize~2 proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~get_current_line_from_file_sequential json_core%get_current_line_from_file_sequential proc~annotate_invalid_json->proc~get_current_line_from_file_sequential proc~get_current_line_from_file_stream json_core%get_current_line_from_file_stream proc~annotate_invalid_json->proc~get_current_line_from_file_stream proc~integer_to_string integer_to_string proc~annotate_invalid_json->proc~integer_to_string proc~json_traverse json_core%json_traverse proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_initialize->proc~json_clear_exceptions proc~json_initialize->none~throw_exception proc~json_initialize->proc~integer_to_string proc~json_parse_end->none~throw_exception proc~pop_char json_core%pop_char proc~json_parse_end->proc~pop_char proc~parse_value->none~throw_exception proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_for_chars json_core%parse_for_chars proc~parse_value->proc~parse_for_chars proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~parse_string json_core%parse_string proc~parse_value->proc~parse_string proc~parse_value->proc~pop_char proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~to_array json_core%to_array proc~parse_value->proc~to_array proc~to_logical json_core%to_logical proc~parse_value->proc~to_logical proc~to_null json_core%to_null proc~parse_value->proc~to_null proc~to_object json_core%to_object proc~parse_value->proc~to_object proc~to_string json_core%to_string proc~parse_value->proc~to_string proc~json_traverse->none~throw_exception proc~parse_array->none~destroy~3 proc~parse_array->none~throw_exception proc~parse_array->proc~json_value_create proc~parse_array->proc~parse_value proc~parse_array->proc~pop_char none~add~4 json_core%add proc~parse_array->none~add~4 proc~parse_for_chars->none~throw_exception proc~parse_for_chars->proc~pop_char proc~parse_number->proc~json_clear_exceptions proc~parse_number->proc~pop_char proc~parse_number->proc~push_char proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real proc~parse_object->none~destroy~3 proc~parse_object->none~throw_exception proc~parse_object->proc~json_value_create proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~pop_char proc~parse_object->none~add~4 proc~parse_string->none~throw_exception proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~push_char->none~throw_exception proc~push_char->proc~integer_to_string proc~to_array->proc~destroy_json_data proc~to_logical->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_assign_string_to_json_file ( me , str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: str call me % assign_string_to_json_file ( to_unicode ( str )) end subroutine wrap_assign_string_to_json_file","tags":"","loc":"proc/wrap_assign_string_to_json_file.html"},{"title":"wrap_json_file_add_integer – JSON-Fortran","text":"private subroutine wrap_json_file_add_integer(me, path, val, found, was_created) Alternate version of json_file_add_integer , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_file_add_integer~~CallsGraph proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer interface~to_unicode to_unicode proc~wrap_json_file_add_integer->interface~to_unicode proc~json_file_add_integer json_file%json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_integer->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_integer->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_add_integer ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_integer ( to_unicode ( path ), val , found , was_created ) end subroutine wrap_json_file_add_integer","tags":"","loc":"proc/wrap_json_file_add_integer.html"},{"title":"wrap_json_file_add_integer_vec – JSON-Fortran","text":"private subroutine wrap_json_file_add_integer_vec(me, path, vec, found, was_created) Alternate version of json_file_add_integer_vec , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_file_add_integer_vec~~CallsGraph proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec interface~to_unicode to_unicode proc~wrap_json_file_add_integer_vec->interface~to_unicode proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_integer_vec->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_integer_vec->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_add_integer_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_integer_vec ( to_unicode ( path ), vec , found , was_created ) end subroutine wrap_json_file_add_integer_vec","tags":"","loc":"proc/wrap_json_file_add_integer_vec.html"},{"title":"wrap_json_file_add_logical – JSON-Fortran","text":"private subroutine wrap_json_file_add_logical(me, path, val, found, was_created) Alternate version of json_file_add_logical , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_file_add_logical~~CallsGraph proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical interface~to_unicode to_unicode proc~wrap_json_file_add_logical->interface~to_unicode proc~json_file_add_logical json_file%json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_logical->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_logical->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_add_logical ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_logical ( to_unicode ( path ), val , found , was_created ) end subroutine wrap_json_file_add_logical","tags":"","loc":"proc/wrap_json_file_add_logical.html"},{"title":"wrap_json_file_add_logical_vec – JSON-Fortran","text":"private subroutine wrap_json_file_add_logical_vec(me, path, vec, found, was_created) Alternate version of json_file_add_logical_vec , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_file_add_logical_vec~~CallsGraph proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec interface~to_unicode to_unicode proc~wrap_json_file_add_logical_vec->interface~to_unicode proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_logical_vec->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_logical_vec->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_add_logical_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_logical_vec ( to_unicode ( path ), vec , found , was_created ) end subroutine wrap_json_file_add_logical_vec","tags":"","loc":"proc/wrap_json_file_add_logical_vec.html"},{"title":"wrap_json_file_add_object – JSON-Fortran","text":"private subroutine wrap_json_file_add_object(me, path, p, found, was_created) Alternate version of json_file_add_object , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(in), pointer :: p pointer to the variable to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_file_add_object~~CallsGraph proc~wrap_json_file_add_object json_file%wrap_json_file_add_object interface~to_unicode to_unicode proc~wrap_json_file_add_object->interface~to_unicode proc~json_file_add_object json_file%json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_object->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_object->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_add_object ( me , path , p , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable type ( json_value ), pointer , intent ( in ) :: p !! pointer to the variable to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_object ( to_unicode ( path ), p , found , was_created ) end subroutine wrap_json_file_add_object","tags":"","loc":"proc/wrap_json_file_add_object.html"},{"title":"wrap_json_file_add_real – JSON-Fortran","text":"private subroutine wrap_json_file_add_real(me, path, val, found, was_created) Alternate version of json_file_add_real , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_file_add_real~~CallsGraph proc~wrap_json_file_add_real json_file%wrap_json_file_add_real interface~to_unicode to_unicode proc~wrap_json_file_add_real->interface~to_unicode proc~json_file_add_real json_file%json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_real->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_real->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_add_real ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_real ( to_unicode ( path ), val , found , was_created ) end subroutine wrap_json_file_add_real","tags":"","loc":"proc/wrap_json_file_add_real.html"},{"title":"wrap_json_file_add_real32 – JSON-Fortran","text":"private subroutine wrap_json_file_add_real32(me, path, val, found, was_created) Alternate version of json_file_add_real32 , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_file_add_real32~~CallsGraph proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 interface~to_unicode to_unicode proc~wrap_json_file_add_real32->interface~to_unicode proc~json_file_add_real32 json_file%json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_real32->none~add_by_path~2 proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_add_real32 ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_real32 ( to_unicode ( path ), val , found , was_created ) end subroutine wrap_json_file_add_real32","tags":"","loc":"proc/wrap_json_file_add_real32.html"},{"title":"wrap_json_file_add_real32_vec – JSON-Fortran","text":"private subroutine wrap_json_file_add_real32_vec(me, path, vec, found, was_created) Alternate version of json_file_add_real32_vec , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_file_add_real32_vec~~CallsGraph proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec interface~to_unicode to_unicode proc~wrap_json_file_add_real32_vec->interface~to_unicode proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_add_real32_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_real32_vec ( to_unicode ( path ), vec , found , was_created ) end subroutine wrap_json_file_add_real32_vec","tags":"","loc":"proc/wrap_json_file_add_real32_vec.html"},{"title":"wrap_json_file_add_real_vec – JSON-Fortran","text":"private subroutine wrap_json_file_add_real_vec(me, path, vec, found, was_created) Alternate version of json_file_add_real_vec , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_file_add_real_vec~~CallsGraph proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec interface~to_unicode to_unicode proc~wrap_json_file_add_real_vec->interface~to_unicode proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_real_vec->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_real_vec->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_add_real_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_real_vec ( to_unicode ( path ), vec , found , was_created ) end subroutine wrap_json_file_add_real_vec","tags":"","loc":"proc/wrap_json_file_add_real_vec.html"},{"title":"wrap_json_file_add_string – JSON-Fortran","text":"private subroutine wrap_json_file_add_string(me, path, val, found, was_created, trim_str, adjustl_str) Alternate version of json_file_add_string , where “path” and “val” are kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) Calls proc~~wrap_json_file_add_string~~CallsGraph proc~wrap_json_file_add_string json_file%wrap_json_file_add_string interface~to_unicode to_unicode proc~wrap_json_file_add_string->interface~to_unicode proc~json_file_add_string json_file%json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_string->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_string->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_add_string ( me , path , val , found , was_created , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (note that ADJUSTL is done before TRIM) call me % json_file_add_string ( to_unicode ( path ), to_unicode ( val ), found ,& was_created , trim_str , adjustl_str ) end subroutine wrap_json_file_add_string","tags":"","loc":"proc/wrap_json_file_add_string.html"},{"title":"wrap_json_file_add_string_vec – JSON-Fortran","text":"private subroutine wrap_json_file_add_string_vec(me, path, vec, found, was_created, ilen, trim_str, adjustl_str) Alternate version of json_file_add_string_vec , where “path” and “vec” are kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element\n(note that ADJUSTL is done before TRIM) Calls proc~~wrap_json_file_add_string_vec~~CallsGraph proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec interface~to_unicode to_unicode proc~wrap_json_file_add_string_vec->interface~to_unicode proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_string_vec->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_string_vec->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_add_string_vec ( me , path , vec , found ,& was_created , ilen , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created integer ( IK ), dimension (:), intent ( in ), optional :: ilen !! the string lengths of each !! element in `value`. If not present, !! the full `len(value)` string is added !! for each element. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element !! (note that ADJUSTL is done before TRIM) call me % json_file_add_string_vec ( to_unicode ( path ), to_unicode ( vec ), found ,& was_created , ilen , trim_str , adjustl_str ) end subroutine wrap_json_file_add_string_vec","tags":"","loc":"proc/wrap_json_file_add_string_vec.html"},{"title":"wrap_json_file_get_alloc_string_vec – JSON-Fortran","text":"private subroutine wrap_json_file_get_alloc_string_vec(me, path, vec, ilen, found, default, default_ilen) Alternate version of json_file_get_alloc_string_vec , where “path” is kind=CDK.\nThis is just a wrapper for wrap_json_get_alloc_string_vec_by_path . Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec value vector integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default integer(kind=IK), intent(in), optional, dimension(:) :: default_ilen the actual\nlength of default Calls proc~~wrap_json_file_get_alloc_string_vec~~CallsGraph proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec interface~to_unicode to_unicode proc~wrap_json_file_get_alloc_string_vec->interface~to_unicode none~get json_file%get proc~wrap_json_file_get_alloc_string_vec->none~get proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get->proc~json_file_get_alloc_string_vec proc~json_file_get_integer json_file%json_file_get_integer none~get->proc~json_file_get_integer proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get->proc~json_file_get_integer_vec proc~json_file_get_logical json_file%json_file_get_logical none~get->proc~json_file_get_logical proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get->proc~json_file_get_logical_vec proc~json_file_get_object json_file%json_file_get_object none~get->proc~json_file_get_object proc~json_file_get_real json_file%json_file_get_real none~get->proc~json_file_get_real proc~json_file_get_real32 json_file%json_file_get_real32 none~get->proc~json_file_get_real32 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get->proc~json_file_get_real32_vec proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get->proc~json_file_get_real_vec proc~json_file_get_root json_file%json_file_get_root none~get->proc~json_file_get_root proc~json_file_get_string json_file%json_file_get_string none~get->proc~json_file_get_string proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get~2 json_core%get proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object->none~get~2 proc~json_file_get_real->none~get~2 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec->none~get~2 proc~wrap_json_file_get_integer->interface~to_unicode proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->interface~to_unicode proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->interface~to_unicode proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->interface~to_unicode proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->interface~to_unicode proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->interface~to_unicode proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->interface~to_unicode proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->interface~to_unicode proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->interface~to_unicode proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->interface~to_unicode proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->interface~to_unicode proc~wrap_json_file_get_string_vec->none~get proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_get_alloc_string_vec~~CalledByGraph proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get json_file%get proc~wrap_json_file_get_alloc_string_vec->none~get none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_get_alloc_string_vec ( me , path , vec , ilen , found , default , default_ilen ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len = :), dimension (:), allocatable , intent ( out ) :: vec !! value vector integer ( IK ), dimension (:), allocatable , intent ( out ) :: ilen !! the actual length !! of each character !! string in the array logical ( LK ), intent ( out ), optional :: found character ( kind = CK , len =* ), dimension (:), intent ( in ), optional :: default integer ( IK ), dimension (:), intent ( in ), optional :: default_ilen !! the actual !! length of `default` call me % get ( to_unicode ( path ), vec , ilen , found , default , default_ilen ) end subroutine wrap_json_file_get_alloc_string_vec","tags":"","loc":"proc/wrap_json_file_get_alloc_string_vec.html"},{"title":"wrap_json_file_get_integer – JSON-Fortran","text":"private subroutine wrap_json_file_get_integer(me, path, val, found, default) Alternate version of json_file_get_integer , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found integer(kind=IK), intent(in), optional :: default Calls proc~~wrap_json_file_get_integer~~CallsGraph proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer interface~to_unicode to_unicode proc~wrap_json_file_get_integer->interface~to_unicode none~get json_file%get proc~wrap_json_file_get_integer->none~get proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get->proc~wrap_json_file_get_integer proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get->proc~json_file_get_alloc_string_vec proc~json_file_get_integer json_file%json_file_get_integer none~get->proc~json_file_get_integer proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get->proc~json_file_get_integer_vec proc~json_file_get_logical json_file%json_file_get_logical none~get->proc~json_file_get_logical proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get->proc~json_file_get_logical_vec proc~json_file_get_object json_file%json_file_get_object none~get->proc~json_file_get_object proc~json_file_get_real json_file%json_file_get_real none~get->proc~json_file_get_real proc~json_file_get_real32 json_file%json_file_get_real32 none~get->proc~json_file_get_real32 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get->proc~json_file_get_real32_vec proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get->proc~json_file_get_real_vec proc~json_file_get_root json_file%json_file_get_root none~get->proc~json_file_get_root proc~json_file_get_string json_file%json_file_get_string none~get->proc~json_file_get_string proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get~2 json_core%get proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object->none~get~2 proc~json_file_get_real->none~get~2 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec->none~get~2 proc~wrap_json_file_get_alloc_string_vec->interface~to_unicode proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer_vec->interface~to_unicode proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->interface~to_unicode proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->interface~to_unicode proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->interface~to_unicode proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->interface~to_unicode proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->interface~to_unicode proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->interface~to_unicode proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->interface~to_unicode proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->interface~to_unicode proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->interface~to_unicode proc~wrap_json_file_get_string_vec->none~get proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_get_integer~~CalledByGraph proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get json_file%get proc~wrap_json_file_get_integer->none~get none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_get_integer ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found integer ( IK ), intent ( in ), optional :: default call me % get ( to_unicode ( path ), val , found , default ) end subroutine wrap_json_file_get_integer","tags":"","loc":"proc/wrap_json_file_get_integer.html"},{"title":"wrap_json_file_get_integer_vec – JSON-Fortran","text":"private subroutine wrap_json_file_get_integer_vec(me, path, vec, found, default) Alternate version of json_file_get_integer_vec , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found integer(kind=IK), intent(in), optional, dimension(:) :: default Calls proc~~wrap_json_file_get_integer_vec~~CallsGraph proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec interface~to_unicode to_unicode proc~wrap_json_file_get_integer_vec->interface~to_unicode none~get json_file%get proc~wrap_json_file_get_integer_vec->none~get proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get->proc~wrap_json_file_get_integer_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get->proc~json_file_get_alloc_string_vec proc~json_file_get_integer json_file%json_file_get_integer none~get->proc~json_file_get_integer proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get->proc~json_file_get_integer_vec proc~json_file_get_logical json_file%json_file_get_logical none~get->proc~json_file_get_logical proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get->proc~json_file_get_logical_vec proc~json_file_get_object json_file%json_file_get_object none~get->proc~json_file_get_object proc~json_file_get_real json_file%json_file_get_real none~get->proc~json_file_get_real proc~json_file_get_real32 json_file%json_file_get_real32 none~get->proc~json_file_get_real32 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get->proc~json_file_get_real32_vec proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get->proc~json_file_get_real_vec proc~json_file_get_root json_file%json_file_get_root none~get->proc~json_file_get_root proc~json_file_get_string json_file%json_file_get_string none~get->proc~json_file_get_string proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get~2 json_core%get proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object->none~get~2 proc~json_file_get_real->none~get~2 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec->none~get~2 proc~wrap_json_file_get_alloc_string_vec->interface~to_unicode proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->interface~to_unicode proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_logical->interface~to_unicode proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->interface~to_unicode proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->interface~to_unicode proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->interface~to_unicode proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->interface~to_unicode proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->interface~to_unicode proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->interface~to_unicode proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->interface~to_unicode proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->interface~to_unicode proc~wrap_json_file_get_string_vec->none~get proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_get_integer_vec~~CalledByGraph proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get json_file%get proc~wrap_json_file_get_integer_vec->none~get none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_get_integer_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found integer ( IK ), dimension (:), intent ( in ), optional :: default call me % get ( to_unicode ( path ), vec , found , default ) end subroutine wrap_json_file_get_integer_vec","tags":"","loc":"proc/wrap_json_file_get_integer_vec.html"},{"title":"wrap_json_file_get_logical – JSON-Fortran","text":"private subroutine wrap_json_file_get_logical(me, path, val, found, default) Alternate version of json_file_get_logical , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found logical(kind=LK), intent(in), optional :: default Calls proc~~wrap_json_file_get_logical~~CallsGraph proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical interface~to_unicode to_unicode proc~wrap_json_file_get_logical->interface~to_unicode none~get json_file%get proc~wrap_json_file_get_logical->none~get proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get->proc~wrap_json_file_get_logical proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get->proc~json_file_get_alloc_string_vec proc~json_file_get_integer json_file%json_file_get_integer none~get->proc~json_file_get_integer proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get->proc~json_file_get_integer_vec proc~json_file_get_logical json_file%json_file_get_logical none~get->proc~json_file_get_logical proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get->proc~json_file_get_logical_vec proc~json_file_get_object json_file%json_file_get_object none~get->proc~json_file_get_object proc~json_file_get_real json_file%json_file_get_real none~get->proc~json_file_get_real proc~json_file_get_real32 json_file%json_file_get_real32 none~get->proc~json_file_get_real32 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get->proc~json_file_get_real32_vec proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get->proc~json_file_get_real_vec proc~json_file_get_root json_file%json_file_get_root none~get->proc~json_file_get_root proc~json_file_get_string json_file%json_file_get_string none~get->proc~json_file_get_string proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get~2 json_core%get proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object->none~get~2 proc~json_file_get_real->none~get~2 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec->none~get~2 proc~wrap_json_file_get_alloc_string_vec->interface~to_unicode proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->interface~to_unicode proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->interface~to_unicode proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical_vec->interface~to_unicode proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->interface~to_unicode proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->interface~to_unicode proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->interface~to_unicode proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->interface~to_unicode proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->interface~to_unicode proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->interface~to_unicode proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->interface~to_unicode proc~wrap_json_file_get_string_vec->none~get proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_get_logical~~CalledByGraph proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get json_file%get proc~wrap_json_file_get_logical->none~get none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_get_logical ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found logical ( LK ), intent ( in ), optional :: default call me % get ( to_unicode ( path ), val , found , default ) end subroutine wrap_json_file_get_logical","tags":"","loc":"proc/wrap_json_file_get_logical.html"},{"title":"wrap_json_file_get_logical_vec – JSON-Fortran","text":"private subroutine wrap_json_file_get_logical_vec(me, path, vec, found, default) Alternate version of json_file_get_logical_vec , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found logical(kind=LK), intent(in), optional, dimension(:) :: default Calls proc~~wrap_json_file_get_logical_vec~~CallsGraph proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec interface~to_unicode to_unicode proc~wrap_json_file_get_logical_vec->interface~to_unicode none~get json_file%get proc~wrap_json_file_get_logical_vec->none~get proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get->proc~wrap_json_file_get_logical_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get->proc~json_file_get_alloc_string_vec proc~json_file_get_integer json_file%json_file_get_integer none~get->proc~json_file_get_integer proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get->proc~json_file_get_integer_vec proc~json_file_get_logical json_file%json_file_get_logical none~get->proc~json_file_get_logical proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get->proc~json_file_get_logical_vec proc~json_file_get_object json_file%json_file_get_object none~get->proc~json_file_get_object proc~json_file_get_real json_file%json_file_get_real none~get->proc~json_file_get_real proc~json_file_get_real32 json_file%json_file_get_real32 none~get->proc~json_file_get_real32 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get->proc~json_file_get_real32_vec proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get->proc~json_file_get_real_vec proc~json_file_get_root json_file%json_file_get_root none~get->proc~json_file_get_root proc~json_file_get_string json_file%json_file_get_string none~get->proc~json_file_get_string proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get~2 json_core%get proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object->none~get~2 proc~json_file_get_real->none~get~2 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec->none~get~2 proc~wrap_json_file_get_alloc_string_vec->interface~to_unicode proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->interface~to_unicode proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->interface~to_unicode proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->interface~to_unicode proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_object->interface~to_unicode proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->interface~to_unicode proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->interface~to_unicode proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->interface~to_unicode proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->interface~to_unicode proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->interface~to_unicode proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->interface~to_unicode proc~wrap_json_file_get_string_vec->none~get proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_get_logical_vec~~CalledByGraph proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get json_file%get proc~wrap_json_file_get_logical_vec->none~get none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_get_logical_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found logical ( LK ), dimension (:), intent ( in ), optional :: default call me % get ( to_unicode ( path ), vec , found , default ) end subroutine wrap_json_file_get_logical_vec","tags":"","loc":"proc/wrap_json_file_get_logical_vec.html"},{"title":"wrap_json_file_get_object – JSON-Fortran","text":"private subroutine wrap_json_file_get_object(me, path, p, found) Alternate version of json_file_get_object , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(out), pointer :: p pointer to the variable logical(kind=LK), intent(out), optional :: found if it was really found Calls proc~~wrap_json_file_get_object~~CallsGraph proc~wrap_json_file_get_object json_file%wrap_json_file_get_object interface~to_unicode to_unicode proc~wrap_json_file_get_object->interface~to_unicode none~get json_file%get proc~wrap_json_file_get_object->none~get proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get->proc~wrap_json_file_get_object proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get->proc~json_file_get_alloc_string_vec proc~json_file_get_integer json_file%json_file_get_integer none~get->proc~json_file_get_integer proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get->proc~json_file_get_integer_vec proc~json_file_get_logical json_file%json_file_get_logical none~get->proc~json_file_get_logical proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get->proc~json_file_get_logical_vec proc~json_file_get_object json_file%json_file_get_object none~get->proc~json_file_get_object proc~json_file_get_real json_file%json_file_get_real none~get->proc~json_file_get_real proc~json_file_get_real32 json_file%json_file_get_real32 none~get->proc~json_file_get_real32 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get->proc~json_file_get_real32_vec proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get->proc~json_file_get_real_vec proc~json_file_get_root json_file%json_file_get_root none~get->proc~json_file_get_root proc~json_file_get_string json_file%json_file_get_string none~get->proc~json_file_get_string proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get~2 json_core%get proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object->none~get~2 proc~json_file_get_real->none~get~2 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec->none~get~2 proc~wrap_json_file_get_alloc_string_vec->interface~to_unicode proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->interface~to_unicode proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->interface~to_unicode proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->interface~to_unicode proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->interface~to_unicode proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_real->interface~to_unicode proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->interface~to_unicode proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->interface~to_unicode proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->interface~to_unicode proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->interface~to_unicode proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->interface~to_unicode proc~wrap_json_file_get_string_vec->none~get proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_get_object~~CalledByGraph proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get json_file%get proc~wrap_json_file_get_object->none~get none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_get_object ( me , path , p , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable type ( json_value ), pointer , intent ( out ) :: p !! pointer to the variable logical ( LK ), intent ( out ), optional :: found !! if it was really found call me % get ( to_unicode ( path ), p , found ) end subroutine wrap_json_file_get_object","tags":"","loc":"proc/wrap_json_file_get_object.html"},{"title":"wrap_json_file_get_real – JSON-Fortran","text":"private subroutine wrap_json_file_get_real(me, path, val, found, default) Alternate version of json_file_get_real , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found real(kind=RK), intent(in), optional :: default Calls proc~~wrap_json_file_get_real~~CallsGraph proc~wrap_json_file_get_real json_file%wrap_json_file_get_real interface~to_unicode to_unicode proc~wrap_json_file_get_real->interface~to_unicode none~get json_file%get proc~wrap_json_file_get_real->none~get proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get->proc~wrap_json_file_get_real proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get->proc~json_file_get_alloc_string_vec proc~json_file_get_integer json_file%json_file_get_integer none~get->proc~json_file_get_integer proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get->proc~json_file_get_integer_vec proc~json_file_get_logical json_file%json_file_get_logical none~get->proc~json_file_get_logical proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get->proc~json_file_get_logical_vec proc~json_file_get_object json_file%json_file_get_object none~get->proc~json_file_get_object proc~json_file_get_real json_file%json_file_get_real none~get->proc~json_file_get_real proc~json_file_get_real32 json_file%json_file_get_real32 none~get->proc~json_file_get_real32 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get->proc~json_file_get_real32_vec proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get->proc~json_file_get_real_vec proc~json_file_get_root json_file%json_file_get_root none~get->proc~json_file_get_root proc~json_file_get_string json_file%json_file_get_string none~get->proc~json_file_get_string proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get~2 json_core%get proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object->none~get~2 proc~json_file_get_real->none~get~2 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec->none~get~2 proc~wrap_json_file_get_alloc_string_vec->interface~to_unicode proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->interface~to_unicode proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->interface~to_unicode proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->interface~to_unicode proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->interface~to_unicode proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->interface~to_unicode proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real32->interface~to_unicode proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->interface~to_unicode proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->interface~to_unicode proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->interface~to_unicode proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->interface~to_unicode proc~wrap_json_file_get_string_vec->none~get proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_get_real~~CalledByGraph proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get json_file%get proc~wrap_json_file_get_real->none~get none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_get_real ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( RK ), intent ( in ), optional :: default call me % get ( to_unicode ( path ), val , found , default ) end subroutine wrap_json_file_get_real","tags":"","loc":"proc/wrap_json_file_get_real.html"},{"title":"wrap_json_file_get_real32 – JSON-Fortran","text":"private subroutine wrap_json_file_get_real32(me, path, val, found, default) Alternate version of json_file_get_real32 , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found real(kind=real32), intent(in), optional :: default Calls proc~~wrap_json_file_get_real32~~CallsGraph proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 interface~to_unicode to_unicode proc~wrap_json_file_get_real32->interface~to_unicode none~get json_file%get proc~wrap_json_file_get_real32->none~get proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get->proc~wrap_json_file_get_real32 proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get->proc~json_file_get_alloc_string_vec proc~json_file_get_integer json_file%json_file_get_integer none~get->proc~json_file_get_integer proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get->proc~json_file_get_integer_vec proc~json_file_get_logical json_file%json_file_get_logical none~get->proc~json_file_get_logical proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get->proc~json_file_get_logical_vec proc~json_file_get_object json_file%json_file_get_object none~get->proc~json_file_get_object proc~json_file_get_real json_file%json_file_get_real none~get->proc~json_file_get_real proc~json_file_get_real32 json_file%json_file_get_real32 none~get->proc~json_file_get_real32 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get->proc~json_file_get_real32_vec proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get->proc~json_file_get_real_vec proc~json_file_get_root json_file%json_file_get_root none~get->proc~json_file_get_root proc~json_file_get_string json_file%json_file_get_string none~get->proc~json_file_get_string proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get~2 json_core%get proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object->none~get~2 proc~json_file_get_real->none~get~2 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec->none~get~2 proc~wrap_json_file_get_alloc_string_vec->interface~to_unicode proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->interface~to_unicode proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->interface~to_unicode proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->interface~to_unicode proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->interface~to_unicode proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->interface~to_unicode proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->interface~to_unicode proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32_vec->interface~to_unicode proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->interface~to_unicode proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->interface~to_unicode proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->interface~to_unicode proc~wrap_json_file_get_string_vec->none~get proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_get_real32~~CalledByGraph proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get json_file%get proc~wrap_json_file_get_real32->none~get none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_get_real32 ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( real32 ), intent ( in ), optional :: default call me % get ( to_unicode ( path ), val , found , default ) end subroutine wrap_json_file_get_real32","tags":"","loc":"proc/wrap_json_file_get_real32.html"},{"title":"wrap_json_file_get_real32_vec – JSON-Fortran","text":"private subroutine wrap_json_file_get_real32_vec(me, path, vec, found, default) Alternate version of json_file_get_real32_vec , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found real(kind=real32), intent(in), optional, dimension(:) :: default Calls proc~~wrap_json_file_get_real32_vec~~CallsGraph proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec interface~to_unicode to_unicode proc~wrap_json_file_get_real32_vec->interface~to_unicode none~get json_file%get proc~wrap_json_file_get_real32_vec->none~get proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get->proc~wrap_json_file_get_real32_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get->proc~json_file_get_alloc_string_vec proc~json_file_get_integer json_file%json_file_get_integer none~get->proc~json_file_get_integer proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get->proc~json_file_get_integer_vec proc~json_file_get_logical json_file%json_file_get_logical none~get->proc~json_file_get_logical proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get->proc~json_file_get_logical_vec proc~json_file_get_object json_file%json_file_get_object none~get->proc~json_file_get_object proc~json_file_get_real json_file%json_file_get_real none~get->proc~json_file_get_real proc~json_file_get_real32 json_file%json_file_get_real32 none~get->proc~json_file_get_real32 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get->proc~json_file_get_real32_vec proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get->proc~json_file_get_real_vec proc~json_file_get_root json_file%json_file_get_root none~get->proc~json_file_get_root proc~json_file_get_string json_file%json_file_get_string none~get->proc~json_file_get_string proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get~2 json_core%get proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object->none~get~2 proc~json_file_get_real->none~get~2 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec->none~get~2 proc~wrap_json_file_get_alloc_string_vec->interface~to_unicode proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->interface~to_unicode proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->interface~to_unicode proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->interface~to_unicode proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->interface~to_unicode proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->interface~to_unicode proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->interface~to_unicode proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->interface~to_unicode proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real_vec->interface~to_unicode proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->interface~to_unicode proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->interface~to_unicode proc~wrap_json_file_get_string_vec->none~get proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_get_real32_vec~~CalledByGraph proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get json_file%get proc~wrap_json_file_get_real32_vec->none~get none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_get_real32_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( real32 ), dimension (:), intent ( in ), optional :: default call me % get ( to_unicode ( path ), vec , found , default ) end subroutine wrap_json_file_get_real32_vec","tags":"","loc":"proc/wrap_json_file_get_real32_vec.html"},{"title":"wrap_json_file_get_real_vec – JSON-Fortran","text":"private subroutine wrap_json_file_get_real_vec(me, path, vec, found, default) Alternate version of json_file_get_real_vec , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found real(kind=RK), intent(in), optional, dimension(:) :: default Calls proc~~wrap_json_file_get_real_vec~~CallsGraph proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec interface~to_unicode to_unicode proc~wrap_json_file_get_real_vec->interface~to_unicode none~get json_file%get proc~wrap_json_file_get_real_vec->none~get proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get->proc~wrap_json_file_get_real_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get->proc~json_file_get_alloc_string_vec proc~json_file_get_integer json_file%json_file_get_integer none~get->proc~json_file_get_integer proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get->proc~json_file_get_integer_vec proc~json_file_get_logical json_file%json_file_get_logical none~get->proc~json_file_get_logical proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get->proc~json_file_get_logical_vec proc~json_file_get_object json_file%json_file_get_object none~get->proc~json_file_get_object proc~json_file_get_real json_file%json_file_get_real none~get->proc~json_file_get_real proc~json_file_get_real32 json_file%json_file_get_real32 none~get->proc~json_file_get_real32 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get->proc~json_file_get_real32_vec proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get->proc~json_file_get_real_vec proc~json_file_get_root json_file%json_file_get_root none~get->proc~json_file_get_root proc~json_file_get_string json_file%json_file_get_string none~get->proc~json_file_get_string proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get~2 json_core%get proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object->none~get~2 proc~json_file_get_real->none~get~2 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec->none~get~2 proc~wrap_json_file_get_alloc_string_vec->interface~to_unicode proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->interface~to_unicode proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->interface~to_unicode proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->interface~to_unicode proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->interface~to_unicode proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->interface~to_unicode proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->interface~to_unicode proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->interface~to_unicode proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->interface~to_unicode proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_string->interface~to_unicode proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->interface~to_unicode proc~wrap_json_file_get_string_vec->none~get proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_get_real_vec~~CalledByGraph proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get json_file%get proc~wrap_json_file_get_real_vec->none~get none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_get_real_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( RK ), dimension (:), intent ( in ), optional :: default call me % get ( to_unicode ( path ), vec , found , default ) end subroutine wrap_json_file_get_real_vec","tags":"","loc":"proc/wrap_json_file_get_real_vec.html"},{"title":"wrap_json_file_get_string – JSON-Fortran","text":"private subroutine wrap_json_file_get_string(me, path, val, found, default) Alternate version of json_file_get_string , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=:), intent(out), allocatable :: val value logical(kind=LK), intent(out), optional :: found if it was really found character(kind=CK, len=*), intent(in), optional :: default Calls proc~~wrap_json_file_get_string~~CallsGraph proc~wrap_json_file_get_string json_file%wrap_json_file_get_string interface~to_unicode to_unicode proc~wrap_json_file_get_string->interface~to_unicode none~get json_file%get proc~wrap_json_file_get_string->none~get proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get->proc~wrap_json_file_get_string proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get->proc~json_file_get_alloc_string_vec proc~json_file_get_integer json_file%json_file_get_integer none~get->proc~json_file_get_integer proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get->proc~json_file_get_integer_vec proc~json_file_get_logical json_file%json_file_get_logical none~get->proc~json_file_get_logical proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get->proc~json_file_get_logical_vec proc~json_file_get_object json_file%json_file_get_object none~get->proc~json_file_get_object proc~json_file_get_real json_file%json_file_get_real none~get->proc~json_file_get_real proc~json_file_get_real32 json_file%json_file_get_real32 none~get->proc~json_file_get_real32 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get->proc~json_file_get_real32_vec proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get->proc~json_file_get_real_vec proc~json_file_get_root json_file%json_file_get_root none~get->proc~json_file_get_root proc~json_file_get_string json_file%json_file_get_string none~get->proc~json_file_get_string proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get~2 json_core%get proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object->none~get~2 proc~json_file_get_real->none~get~2 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec->none~get~2 proc~wrap_json_file_get_alloc_string_vec->interface~to_unicode proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->interface~to_unicode proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->interface~to_unicode proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->interface~to_unicode proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->interface~to_unicode proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->interface~to_unicode proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->interface~to_unicode proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->interface~to_unicode proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->interface~to_unicode proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->interface~to_unicode proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string_vec->interface~to_unicode proc~wrap_json_file_get_string_vec->none~get proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_get_string~~CalledByGraph proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get json_file%get proc~wrap_json_file_get_string->none~get none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_get_string ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len = :), allocatable , intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found character ( kind = CK , len =* ), intent ( in ), optional :: default call me % get ( to_unicode ( path ), val , found , default ) end subroutine wrap_json_file_get_string","tags":"","loc":"proc/wrap_json_file_get_string.html"},{"title":"wrap_json_file_get_string_vec – JSON-Fortran","text":"private subroutine wrap_json_file_get_string_vec(me, path, vec, found, default) Alternate version of json_file_get_string_vec , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec value vector logical(kind=LK), intent(out), optional :: found if it was really found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default Calls proc~~wrap_json_file_get_string_vec~~CallsGraph proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec interface~to_unicode to_unicode proc~wrap_json_file_get_string_vec->interface~to_unicode none~get json_file%get proc~wrap_json_file_get_string_vec->none~get proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get->proc~wrap_json_file_get_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get->proc~json_file_get_alloc_string_vec proc~json_file_get_integer json_file%json_file_get_integer none~get->proc~json_file_get_integer proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get->proc~json_file_get_integer_vec proc~json_file_get_logical json_file%json_file_get_logical none~get->proc~json_file_get_logical proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get->proc~json_file_get_logical_vec proc~json_file_get_object json_file%json_file_get_object none~get->proc~json_file_get_object proc~json_file_get_real json_file%json_file_get_real none~get->proc~json_file_get_real proc~json_file_get_real32 json_file%json_file_get_real32 none~get->proc~json_file_get_real32 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get->proc~json_file_get_real32_vec proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get->proc~json_file_get_real_vec proc~json_file_get_root json_file%json_file_get_root none~get->proc~json_file_get_root proc~json_file_get_string json_file%json_file_get_string none~get->proc~json_file_get_string proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string none~get~2 json_core%get proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object->none~get~2 proc~json_file_get_real->none~get~2 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec->none~get~2 proc~wrap_json_file_get_alloc_string_vec->interface~to_unicode proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->interface~to_unicode proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->interface~to_unicode proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->interface~to_unicode proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->interface~to_unicode proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->interface~to_unicode proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->interface~to_unicode proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->interface~to_unicode proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->interface~to_unicode proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->interface~to_unicode proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->interface~to_unicode proc~wrap_json_file_get_string->none~get proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_get_string_vec~~CalledByGraph proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get json_file%get proc~wrap_json_file_get_string_vec->none~get none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_get_string_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), dimension (:), allocatable , intent ( out ) :: vec !! value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found character ( kind = CK , len =* ), dimension (:), intent ( in ), optional :: default call me % get ( to_unicode ( path ), vec , found , default ) end subroutine wrap_json_file_get_string_vec","tags":"","loc":"proc/wrap_json_file_get_string_vec.html"},{"title":"wrap_json_file_load_from_string – JSON-Fortran","text":"private subroutine wrap_json_file_load_from_string(me, str) Alternate version of json_file_load_from_string , where “str” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: str Calls proc~~wrap_json_file_load_from_string~~CallsGraph proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string interface~to_unicode to_unicode proc~wrap_json_file_load_from_string->interface~to_unicode none~deserialize json_file%deserialize proc~wrap_json_file_load_from_string->none~deserialize proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~deserialize->proc~wrap_json_file_load_from_string proc~json_file_load_from_string json_file%json_file_load_from_string none~deserialize->proc~json_file_load_from_string none~deserialize~2 json_core%deserialize proc~json_file_load_from_string->none~deserialize~2 proc~json_file_destroy json_file%json_file_destroy proc~json_file_load_from_string->proc~json_file_destroy proc~json_parse_string json_core%json_parse_string none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~destroy~3 json_core%destroy proc~json_file_destroy->none~destroy~3 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy none~throw_exception json_core%throw_exception proc~json_parse_string->none~throw_exception proc~annotate_invalid_json json_core%annotate_invalid_json proc~json_parse_string->proc~annotate_invalid_json proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_initialize json_core%json_initialize proc~json_parse_string->proc~json_initialize proc~json_parse_end json_core%json_parse_end proc~json_parse_string->proc~json_parse_end proc~json_prepare_parser json_core%json_prepare_parser proc~json_parse_string->proc~json_prepare_parser proc~json_value_create json_value_create proc~json_parse_string->proc~json_value_create proc~parse_value json_core%parse_value proc~json_parse_string->proc~parse_value proc~wrap_json_parse_string->interface~to_unicode proc~wrap_json_parse_string->none~deserialize~2 proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~get_current_line_from_file_sequential json_core%get_current_line_from_file_sequential proc~annotate_invalid_json->proc~get_current_line_from_file_sequential proc~get_current_line_from_file_stream json_core%get_current_line_from_file_stream proc~annotate_invalid_json->proc~get_current_line_from_file_stream proc~integer_to_string integer_to_string proc~annotate_invalid_json->proc~integer_to_string proc~json_traverse json_core%json_traverse proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_initialize->none~throw_exception proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions proc~json_parse_end->none~throw_exception proc~pop_char json_core%pop_char proc~json_parse_end->proc~pop_char proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~parse_value->none~throw_exception proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_for_chars json_core%parse_for_chars proc~parse_value->proc~parse_for_chars proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~parse_string json_core%parse_string proc~parse_value->proc~parse_string proc~parse_value->proc~pop_char proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~to_array json_core%to_array proc~parse_value->proc~to_array proc~to_logical json_core%to_logical proc~parse_value->proc~to_logical proc~to_null json_core%to_null proc~parse_value->proc~to_null proc~to_object json_core%to_object proc~parse_value->proc~to_object proc~to_string json_core%to_string proc~parse_value->proc~to_string proc~json_traverse->none~throw_exception proc~parse_array->none~destroy~3 proc~parse_array->none~throw_exception proc~parse_array->proc~json_value_create proc~parse_array->proc~parse_value proc~parse_array->proc~pop_char none~add~4 json_core%add proc~parse_array->none~add~4 proc~parse_for_chars->none~throw_exception proc~parse_for_chars->proc~pop_char proc~parse_number->proc~json_clear_exceptions proc~parse_number->proc~pop_char proc~parse_number->proc~push_char proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real proc~parse_object->none~destroy~3 proc~parse_object->none~throw_exception proc~parse_object->proc~json_value_create proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~pop_char proc~parse_object->none~add~4 proc~parse_string->none~throw_exception proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~push_char->none~throw_exception proc~push_char->proc~integer_to_string proc~to_array->proc~destroy_json_data proc~to_logical->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_load_from_string~~CalledByGraph proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize json_file%deserialize proc~wrap_json_file_load_from_string->none~deserialize none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_load_from_string ( me , str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: str call me % deserialize ( to_unicode ( str )) end subroutine wrap_json_file_load_from_string","tags":"","loc":"proc/wrap_json_file_load_from_string.html"},{"title":"wrap_json_file_remove – JSON-Fortran","text":"private subroutine wrap_json_file_remove(me, path) Alternate version of json_file_remove , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable Calls proc~~wrap_json_file_remove~~CallsGraph proc~wrap_json_file_remove json_file%wrap_json_file_remove interface~to_unicode to_unicode proc~wrap_json_file_remove->interface~to_unicode none~remove json_file%remove proc~wrap_json_file_remove->none~remove proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~remove->proc~wrap_json_file_remove proc~json_file_remove json_file%json_file_remove none~remove->proc~json_file_remove none~remove_if_present json_core%remove_if_present proc~json_file_remove->none~remove_if_present proc~json_value_remove_if_present json_core%json_value_remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~get~2 json_core%get proc~json_value_remove_if_present->none~get~2 proc~json_value_remove json_core%json_value_remove proc~json_value_remove_if_present->proc~json_value_remove proc~wrap_json_value_remove_if_present->interface~to_unicode proc~wrap_json_value_remove_if_present->none~remove_if_present proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~json_value_replace->proc~json_value_remove none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_remove~~CalledByGraph proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove json_file%remove proc~wrap_json_file_remove->none~remove none~remove->proc~wrap_json_file_remove Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_remove ( me , path ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable call me % remove ( to_unicode ( path )) end subroutine wrap_json_file_remove","tags":"","loc":"proc/wrap_json_file_remove.html"},{"title":"wrap_json_file_rename – JSON-Fortran","text":"private subroutine wrap_json_file_rename(me, path, name, found) Alternate version of json_file_rename , where “path” and “name” are kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if the variable was found Calls proc~~wrap_json_file_rename~~CallsGraph proc~wrap_json_file_rename json_file%wrap_json_file_rename interface~to_unicode to_unicode proc~wrap_json_file_rename->interface~to_unicode proc~json_file_rename json_file%json_file_rename proc~wrap_json_file_rename->proc~json_file_rename proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_rename ( me , path , name , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), intent ( in ) :: name !! the new name logical ( LK ), intent ( out ), optional :: found !! if the variable was found call me % json_file_rename ( to_unicode ( path ), to_unicode ( name ), found ) end subroutine wrap_json_file_rename","tags":"","loc":"proc/wrap_json_file_rename.html"},{"title":"wrap_json_file_update_integer – JSON-Fortran","text":"private subroutine wrap_json_file_update_integer(me, path, val, found) Alternate version of json_file_update_integer , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path integer(kind=IK), intent(in) :: val logical(kind=LK), intent(out) :: found Calls proc~~wrap_json_file_update_integer~~CallsGraph proc~wrap_json_file_update_integer json_file%wrap_json_file_update_integer interface~to_unicode to_unicode proc~wrap_json_file_update_integer->interface~to_unicode none~update~2 json_file%update proc~wrap_json_file_update_integer->none~update~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_file_update_string_name_ascii json_file%json_file_update_string_name_ascii none~update~2->proc~json_file_update_string_name_ascii proc~json_file_update_string_val_ascii json_file%json_file_update_string_val_ascii none~update~2->proc~json_file_update_string_val_ascii proc~json_file_update_string_name_ascii->interface~to_unicode proc~json_file_update_string_name_ascii->none~update~2 proc~json_file_update_string_val_ascii->interface~to_unicode proc~json_file_update_string_val_ascii->none~update~2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_update_integer ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path integer ( IK ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found call me % update ( to_unicode ( path ), val , found ) end subroutine wrap_json_file_update_integer","tags":"","loc":"proc/wrap_json_file_update_integer.html"},{"title":"wrap_json_file_update_logical – JSON-Fortran","text":"private subroutine wrap_json_file_update_logical(me, path, val, found) Alternate version of json_file_update_logical , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path logical(kind=LK), intent(in) :: val logical(kind=LK), intent(out) :: found Calls proc~~wrap_json_file_update_logical~~CallsGraph proc~wrap_json_file_update_logical json_file%wrap_json_file_update_logical interface~to_unicode to_unicode proc~wrap_json_file_update_logical->interface~to_unicode none~update~2 json_file%update proc~wrap_json_file_update_logical->none~update~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_file_update_string_name_ascii json_file%json_file_update_string_name_ascii none~update~2->proc~json_file_update_string_name_ascii proc~json_file_update_string_val_ascii json_file%json_file_update_string_val_ascii none~update~2->proc~json_file_update_string_val_ascii proc~json_file_update_string_name_ascii->interface~to_unicode proc~json_file_update_string_name_ascii->none~update~2 proc~json_file_update_string_val_ascii->interface~to_unicode proc~json_file_update_string_val_ascii->none~update~2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_update_logical ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path logical ( LK ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found call me % update ( to_unicode ( path ), val , found ) end subroutine wrap_json_file_update_logical","tags":"","loc":"proc/wrap_json_file_update_logical.html"},{"title":"wrap_json_file_update_real – JSON-Fortran","text":"private subroutine wrap_json_file_update_real(me, path, val, found) Alternate version of json_file_update_real , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path real(kind=RK), intent(in) :: val logical(kind=LK), intent(out) :: found Calls proc~~wrap_json_file_update_real~~CallsGraph proc~wrap_json_file_update_real json_file%wrap_json_file_update_real interface~to_unicode to_unicode proc~wrap_json_file_update_real->interface~to_unicode none~update~2 json_file%update proc~wrap_json_file_update_real->none~update~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_file_update_string_name_ascii json_file%json_file_update_string_name_ascii none~update~2->proc~json_file_update_string_name_ascii proc~json_file_update_string_val_ascii json_file%json_file_update_string_val_ascii none~update~2->proc~json_file_update_string_val_ascii proc~json_file_update_string_name_ascii->interface~to_unicode proc~json_file_update_string_name_ascii->none~update~2 proc~json_file_update_string_val_ascii->interface~to_unicode proc~json_file_update_string_val_ascii->none~update~2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_update_real ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path real ( RK ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found call me % update ( to_unicode ( path ), val , found ) end subroutine wrap_json_file_update_real","tags":"","loc":"proc/wrap_json_file_update_real.html"},{"title":"wrap_json_file_update_real32 – JSON-Fortran","text":"private subroutine wrap_json_file_update_real32(me, path, val, found) Alternate version of json_file_update_real32 , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path real(kind=real32), intent(in) :: val logical(kind=LK), intent(out) :: found Calls proc~~wrap_json_file_update_real32~~CallsGraph proc~wrap_json_file_update_real32 json_file%wrap_json_file_update_real32 interface~to_unicode to_unicode proc~wrap_json_file_update_real32->interface~to_unicode none~update~2 json_file%update proc~wrap_json_file_update_real32->none~update~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_file_update_string_name_ascii json_file%json_file_update_string_name_ascii none~update~2->proc~json_file_update_string_name_ascii proc~json_file_update_string_val_ascii json_file%json_file_update_string_val_ascii none~update~2->proc~json_file_update_string_val_ascii proc~json_file_update_string_name_ascii->interface~to_unicode proc~json_file_update_string_name_ascii->none~update~2 proc~json_file_update_string_val_ascii->interface~to_unicode proc~json_file_update_string_val_ascii->none~update~2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_update_real32 ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path real ( real32 ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found call me % update ( to_unicode ( path ), val , found ) end subroutine wrap_json_file_update_real32","tags":"","loc":"proc/wrap_json_file_update_real32.html"},{"title":"wrap_json_file_update_string – JSON-Fortran","text":"private subroutine wrap_json_file_update_string(me, path, val, found, trim_str, adjustl_str) Alternate version of json_file_update_string , where “path” and “val” are kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CDK, len=*), intent(in) :: val logical(kind=LK), intent(out) :: found logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) Calls proc~~wrap_json_file_update_string~~CallsGraph proc~wrap_json_file_update_string json_file%wrap_json_file_update_string interface~to_unicode to_unicode proc~wrap_json_file_update_string->interface~to_unicode none~update~2 json_file%update proc~wrap_json_file_update_string->none~update~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_file_update_string_name_ascii json_file%json_file_update_string_name_ascii none~update~2->proc~json_file_update_string_name_ascii proc~json_file_update_string_val_ascii json_file%json_file_update_string_val_ascii none~update~2->proc~json_file_update_string_val_ascii proc~json_file_update_string_name_ascii->interface~to_unicode proc~json_file_update_string_name_ascii->none~update~2 proc~json_file_update_string_val_ascii->interface~to_unicode proc~json_file_update_string_val_ascii->none~update~2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_update_string ( me , path , val , found , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path character ( kind = CDK , len =* ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (note that ADJUSTL is done before TRIM) call me % update ( to_unicode ( path ), to_unicode ( val ), found , trim_str , adjustl_str ) end subroutine wrap_json_file_update_string","tags":"","loc":"proc/wrap_json_file_update_string.html"},{"title":"wrap_json_file_variable_info – JSON-Fortran","text":"private subroutine wrap_json_file_variable_info(me, path, found, var_type, n_children, name) Alternate version of json_file_variable_info , where “path” is kind=CDK. Note If found is present, no exceptions will be thrown if an\n error occurs. Otherwise, an exception will be thrown if the\n variable is not found. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(out), optional :: var_type integer(kind=IK), intent(out), optional :: n_children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name Calls proc~~wrap_json_file_variable_info~~CallsGraph proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info interface~to_unicode to_unicode proc~wrap_json_file_variable_info->interface~to_unicode none~info json_file%info proc~wrap_json_file_variable_info->none~info proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~info->proc~wrap_json_file_variable_info proc~json_file_variable_info json_file%json_file_variable_info none~info->proc~json_file_variable_info none~info~2 json_core%info proc~json_file_variable_info->none~info~2 proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~throw_exception json_core%throw_exception proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_variable_info~~CalledByGraph proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info json_file%info proc~wrap_json_file_variable_info->none~info none~info->proc~wrap_json_file_variable_info Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_variable_info ( me , path , found , var_type , n_children , name ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path logical ( LK ), intent ( out ), optional :: found integer ( IK ), intent ( out ), optional :: var_type integer ( IK ), intent ( out ), optional :: n_children character ( kind = CK , len = :), allocatable , intent ( out ), optional :: name !! variable name call me % info ( to_unicode ( path ), found , var_type , n_children , name ) end subroutine wrap_json_file_variable_info","tags":"","loc":"proc/wrap_json_file_variable_info.html"},{"title":"wrap_json_file_variable_matrix_info – JSON-Fortran","text":"private subroutine wrap_json_file_variable_matrix_info(me, path, is_matrix, found, var_type, n_sets, set_size, name) Alternate version of json_file_variable_matrix_info , where “path” is kind=CDK. Note If found is present, no exceptions will be thrown if an\n error occurs. Otherwise, an exception will be thrown if the\n variable is not found. Type Bound json_file Arguments 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\nthe matrix (if all elements have\nthe same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name Calls proc~~wrap_json_file_variable_matrix_info~~CallsGraph proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info interface~to_unicode to_unicode proc~wrap_json_file_variable_matrix_info->interface~to_unicode none~matrix_info json_file%matrix_info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info none~matrix_info->proc~json_file_variable_matrix_info none~matrix_info~2 json_core%matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~get_child json_core%get_child proc~json_matrix_info->none~get_child none~info~2 json_core%info proc~json_matrix_info->none~info~2 none~throw_exception json_core%throw_exception proc~json_matrix_info->none~throw_exception proc~json_matrix_info_by_path->none~matrix_info~2 none~get~2 json_core%get proc~json_matrix_info_by_path->none~get~2 proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_matrix_info_by_path->proc~json_clear_exceptions proc~wrap_json_matrix_info_by_path->interface~to_unicode proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~get_child proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~convert->none~info~2 proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_variable_matrix_info~~CalledByGraph proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info json_file%matrix_info proc~wrap_json_file_variable_matrix_info->none~matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code 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","tags":"","loc":"proc/wrap_json_file_variable_matrix_info.html"},{"title":"json_file – JSON-Fortran","text":"public interface json_file Structure constructor to initialize a json_file object with an existing json_value object or a JSON string, and either the json_core settings or a json_core instance. Example ... type ( json_file ) :: my_file type ( json_value ), pointer :: json_object type ( json_core ) :: json_core_object ... ! Construct a json_object: !could do this: my_file = json_file ( json_object ) !or: my_file = json_file ( json_object , verbose = . true .) !or: my_file = json_file ( '{\"x\": [1]}' , verbose = . true .) !or: my_file = json_file ( json_object , json_core_object ) !or: my_file = json_file ( '{\"x\": [1]}' , json_core_object ) Calls interface~~json_file~~CallsGraph interface~json_file json_file proc~initialize_json_file initialize_json_file interface~json_file->proc~initialize_json_file proc~initialize_json_file_from_string initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 interface~json_file->proc~initialize_json_file_from_string_v2 proc~initialize_json_file_v2 initialize_json_file_v2 interface~json_file->proc~initialize_json_file_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 none~initialize json_file%initialize proc~initialize_json_file->none~initialize none~deserialize json_file%deserialize proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string->none~initialize proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string interface~to_unicode to_unicode proc~wrap_initialize_json_file_from_string->interface~to_unicode proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string_v2->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_file_load_from_string json_file%json_file_load_from_string none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~initialize_json_core_in_file json_file%initialize_json_core_in_file none~initialize->proc~initialize_json_core_in_file proc~set_json_core_in_file json_file%set_json_core_in_file none~initialize->proc~set_json_core_in_file proc~json_initialize json_core%json_initialize proc~initialize_json_core_in_file->proc~json_initialize none~deserialize~2 json_core%deserialize proc~json_file_load_from_string->none~deserialize~2 proc~json_file_destroy json_file%json_file_destroy proc~json_file_load_from_string->proc~json_file_destroy proc~wrap_json_file_load_from_string->interface~to_unicode proc~wrap_json_file_load_from_string->none~deserialize proc~json_parse_string json_core%json_parse_string none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~destroy~3 json_core%destroy proc~json_file_destroy->none~destroy~3 none~throw_exception json_core%throw_exception proc~json_initialize->none~throw_exception proc~integer_to_string integer_to_string proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_parse_string->proc~json_initialize proc~json_parse_string->none~throw_exception proc~annotate_invalid_json json_core%annotate_invalid_json proc~json_parse_string->proc~annotate_invalid_json proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_parse_end json_core%json_parse_end proc~json_parse_string->proc~json_parse_end proc~json_prepare_parser json_core%json_prepare_parser proc~json_parse_string->proc~json_prepare_parser proc~json_value_create json_value_create proc~json_parse_string->proc~json_value_create proc~parse_value json_core%parse_value proc~json_parse_string->proc~parse_value proc~wrap_json_parse_string->interface~to_unicode proc~wrap_json_parse_string->none~deserialize~2 proc~annotate_invalid_json->proc~integer_to_string proc~get_current_line_from_file_sequential json_core%get_current_line_from_file_sequential proc~annotate_invalid_json->proc~get_current_line_from_file_sequential proc~get_current_line_from_file_stream json_core%get_current_line_from_file_stream proc~annotate_invalid_json->proc~get_current_line_from_file_stream proc~json_traverse json_core%json_traverse proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_parse_end->none~throw_exception proc~pop_char json_core%pop_char proc~json_parse_end->proc~pop_char proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~parse_value->none~throw_exception proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_for_chars json_core%parse_for_chars proc~parse_value->proc~parse_for_chars proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~parse_string json_core%parse_string proc~parse_value->proc~parse_string proc~parse_value->proc~pop_char proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~to_array json_core%to_array proc~parse_value->proc~to_array proc~to_logical json_core%to_logical proc~parse_value->proc~to_logical proc~to_null json_core%to_null proc~parse_value->proc~to_null proc~to_object json_core%to_object proc~parse_value->proc~to_object proc~to_string json_core%to_string proc~parse_value->proc~to_string proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_traverse->none~throw_exception proc~parse_array->none~destroy~3 proc~parse_array->none~throw_exception proc~parse_array->proc~json_value_create proc~parse_array->proc~parse_value proc~parse_array->proc~pop_char none~add~4 json_core%add proc~parse_array->none~add~4 proc~parse_for_chars->none~throw_exception proc~parse_for_chars->proc~pop_char proc~parse_number->proc~json_clear_exceptions proc~parse_number->proc~pop_char proc~parse_number->proc~push_char proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real proc~parse_object->none~destroy~3 proc~parse_object->none~throw_exception proc~parse_object->proc~json_value_create proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~pop_char proc~parse_object->none~add~4 proc~parse_string->none~throw_exception proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~push_char->none~throw_exception proc~push_char->proc~integer_to_string proc~to_array->proc~destroy_json_data proc~to_logical->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Module Procedures private function initialize_json_file (p, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma, nullify_pointer) result(file_object) Author Izaak Beekman Date 07/23/2015 Cast a json_value object as a json_file object.\n It also calls the initialize() method. Read more… Arguments Type Intent Optional Attributes Name type( json_value ), optional, pointer :: p json_value object to cast\nas a json_file object. This\nwill be nullified. logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) logical(kind=LK), intent(in), optional :: nullify_pointer if True, then p will be nullified\nif present. (default is True). Normally,\nthis should be done, because the json_file will destroy\nthe pointer when the class goes out of scope (causing p to be\na dangling pointer). However, if the intent is to use p in\na json_file and then call nullify and continue\nto use p , then this should be set to False. Return Value type( json_file ) private function initialize_json_file_v2 (json_value_object, json_core_object) result(file_object) Author Jacob Williams Date 4/26/2016 Cast a json_value pointer and a json_core object\nas a json_file object. Arguments Type Intent Optional Attributes Name type( json_value ), intent(in), pointer :: json_value_object type( json_core ), intent(in) :: json_core_object Return Value type( json_file ) private function initialize_json_file_from_string (str, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) result(file_object) Author Jacob Williams Date 01/19/2019 Cast a JSON string as a json_file object.\n It also calls the initialize() method. Read more… Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str string to load JSON data from logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Return Value type( json_file ) private function wrap_initialize_json_file_from_string (str, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) result(file_object) Alternate version of initialize_json_file_from_string , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: str string to load JSON data from logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Return Value type( json_file ) private function initialize_json_file_from_string_v2 (str, json_core_object) result(file_object) Author Jacob Williams Date 1/19/2019 Cast a JSON string and a json_core object\nas a json_file object. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str string to load JSON data from type( json_core ), intent(in) :: json_core_object Return Value type( json_file ) private function wrap_initialize_json_file_from_string_v2 (str, json_core_object) result(file_object) Alternate version of initialize_json_file_from_string_v2 , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: str string to load JSON data from type( json_core ), intent(in) :: json_core_object Return Value type( json_file )","tags":"","loc":"interface/json_file.html"},{"title":"json_fortran_version – JSON-Fortran","text":"public function json_fortran_version() result(ver) Returns the JSON -Fortran version string. Arguments None Return Value character(len=:), allocatable JSON -Fortran version string Source Code function json_fortran_version () result ( ver ) implicit none character ( len = :), allocatable :: ver !! JSON-Fortran version string ver = version end function json_fortran_version","tags":"","loc":"proc/json_fortran_version.html"},{"title":"decode_rfc6901 – JSON-Fortran","text":"public pure function decode_rfc6901(str) result(str_out) Decode a string from the “ JSON Pointer” RFC 6901 format. It replaces ~1 with / and ~0 with ~ . Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str Return Value character(kind=CK, len=:), allocatable Calls proc~~decode_rfc6901~~CallsGraph proc~decode_rfc6901 decode_rfc6901 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~decode_rfc6901~~CalledByGraph proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 none~get_child json_core%get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure function decode_rfc6901 ( str ) result ( str_out ) implicit none character ( kind = CK , len =* ), intent ( in ) :: str character ( kind = CK , len = :), allocatable :: str_out str_out = str call replace_string ( str_out , tilde // CK_ '1' , slash ) call replace_string ( str_out , tilde // CK_ '0' , tilde ) end function decode_rfc6901","tags":"","loc":"proc/decode_rfc6901.html"},{"title":"default_comp_ucs4 – JSON-Fortran","text":"private pure elemental function default_comp_ucs4(def_str, ucs4_str) result(res) CDK == CK operator. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: def_str character(kind=CK, len=*), intent(in) :: ucs4_str Return Value logical(kind=LK) Calls proc~~default_comp_ucs4~~CallsGraph proc~default_comp_ucs4 default_comp_ucs4 interface~to_unicode to_unicode proc~default_comp_ucs4->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~default_comp_ucs4~~CalledByGraph proc~default_comp_ucs4 default_comp_ucs4 interface~operator(==) operator(==) interface~operator(==)->proc~default_comp_ucs4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure elemental function default_comp_ucs4 ( def_str , ucs4_str ) result ( res ) implicit none character ( kind = CDK , len =* ), intent ( in ) :: def_str character ( kind = CK , len =* ), intent ( in ) :: ucs4_str logical ( LK ) :: res res = ( to_unicode ( def_str ) == ucs4_str ) end function default_comp_ucs4","tags":"","loc":"proc/default_comp_ucs4.html"},{"title":"default_join_ucs4 – JSON-Fortran","text":"private pure function default_join_ucs4(def_str, ucs4_str) result(res) CDK // CK operator. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: def_str character(kind=CK, len=*), intent(in) :: ucs4_str Return Value character(kind=CK, len=len=(len(def_str)+len(ucs4_str))) Calls proc~~default_join_ucs4~~CallsGraph proc~default_join_ucs4 default_join_ucs4 interface~to_unicode to_unicode proc~default_join_ucs4->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~default_join_ucs4~~CalledByGraph proc~default_join_ucs4 default_join_ucs4 interface~operator(SLASHSLASH) operator(//) interface~operator(SLASHSLASH)->proc~default_join_ucs4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure function default_join_ucs4 ( def_str , ucs4_str ) result ( res ) implicit none character ( kind = CDK , len =* ), intent ( in ) :: def_str character ( kind = CK , len =* ), intent ( in ) :: ucs4_str character ( kind = CK , len = ( len ( def_str ) + len ( ucs4_str ))) :: res res = to_unicode ( def_str ) // ucs4_str end function default_join_ucs4","tags":"","loc":"proc/default_join_ucs4.html"},{"title":"default_neq_ucs4 – JSON-Fortran","text":"private pure elemental function default_neq_ucs4(def_str, ucs4_str) result(res) CDK /= CK operator. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: def_str character(kind=CK, len=*), intent(in) :: ucs4_str Return Value logical(kind=LK) Calls proc~~default_neq_ucs4~~CallsGraph proc~default_neq_ucs4 default_neq_ucs4 interface~to_unicode to_unicode proc~default_neq_ucs4->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~default_neq_ucs4~~CalledByGraph proc~default_neq_ucs4 default_neq_ucs4 interface~operator(SLASH=) operator(/=) interface~operator(SLASH=)->proc~default_neq_ucs4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure elemental function default_neq_ucs4 ( def_str , ucs4_str ) result ( res ) implicit none character ( kind = CDK , len =* ), intent ( in ) :: def_str character ( kind = CK , len =* ), intent ( in ) :: ucs4_str logical ( LK ) :: res res = ( to_unicode ( def_str ) /= ucs4_str ) end function default_neq_ucs4","tags":"","loc":"proc/default_neq_ucs4.html"},{"title":"encode_rfc6901 – JSON-Fortran","text":"public pure function encode_rfc6901(str) result(str_out) Encode a string into the “ JSON Pointer” RFC 6901 format. It replaces ~ with ~0 and / with ~1 . Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str Return Value character(kind=CK, len=:), allocatable Calls proc~~encode_rfc6901~~CallsGraph proc~encode_rfc6901 encode_rfc6901 proc~replace_string replace_string proc~encode_rfc6901->proc~replace_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~encode_rfc6901~~CalledByGraph proc~encode_rfc6901 encode_rfc6901 proc~json_get_path json_core%json_get_path proc~json_get_path->proc~encode_rfc6901 none~get_path json_core%get_path none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_path proc~wrap_json_get_path->none~get_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure function encode_rfc6901 ( str ) result ( str_out ) implicit none character ( kind = CK , len =* ), intent ( in ) :: str character ( kind = CK , len = :), allocatable :: str_out str_out = str call replace_string ( str_out , tilde , tilde // CK_ '0' ) call replace_string ( str_out , slash , tilde // CK_ '1' ) end function encode_rfc6901","tags":"","loc":"proc/encode_rfc6901.html"},{"title":"lowercase_string – JSON-Fortran","text":"public pure function lowercase_string(str) result(s_lower) Returns lowercase version of the CK string. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str input string Return Value character(kind=CK, len=len=(len(str))) lowercase version of the string Called by proc~~lowercase_string~~CalledByGraph proc~lowercase_string lowercase_string proc~name_strings_equal json_core%name_strings_equal proc~name_strings_equal->proc~lowercase_string proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->proc~name_strings_equal none~get_child json_core%get_child proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~name_equal json_core%name_equal proc~name_equal->proc~name_strings_equal proc~json_value_get_child_by_name json_core%json_value_get_child_by_name proc~json_value_get_child_by_name->proc~name_equal none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_matrix_info json_core%json_matrix_info proc~json_matrix_info->none~get_child none~info~2 json_core%info proc~json_matrix_info->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info~2 json_core%matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_matrix_info_by_path->none~get~2 proc~json_value_replace json_core%json_value_replace proc~json_value_replace->none~insert_after proc~wrap_json_matrix_info_by_path->none~matrix_info~2 none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~convert->proc~json_value_replace proc~convert->none~info~2 proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_member_by_path->none~info~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_by_path->none~info~2 proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~info~2 proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_by_path->none~info~2 proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~info~2 proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_file_variable_matrix_info->none~matrix_info none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure function lowercase_string ( str ) result ( s_lower ) implicit none character ( kind = CK , len =* ), intent ( in ) :: str !! input string character ( kind = CK , len = ( len ( str ))) :: s_lower !! lowercase version of the string integer :: i !! counter integer :: j !! index of uppercase character s_lower = str do i = 1 , len_trim ( str ) j = index ( upper , s_lower ( i : i )) if ( j > 0 ) s_lower ( i : i ) = lower ( j : j ) end do end function lowercase_string","tags":"","loc":"proc/lowercase_string.html"},{"title":"to_uni – JSON-Fortran","text":"private pure function to_uni(str) Convert string to unicode (CDK to CK). Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: str Return Value character(kind=CK, len=len) Called by proc~~to_uni~~CalledByGraph proc~to_uni to_uni interface~to_unicode to_unicode interface~to_unicode->proc~to_uni proc~default_comp_ucs4 default_comp_ucs4 proc~default_comp_ucs4->interface~to_unicode proc~default_join_ucs4 default_join_ucs4 proc~default_join_ucs4->interface~to_unicode proc~default_neq_ucs4 default_neq_ucs4 proc~default_neq_ucs4->interface~to_unicode proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->interface~to_unicode none~create_object json_core%create_object proc~json_file_add_string_path_ascii->none~create_object proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->interface~to_unicode proc~json_file_add_string_value_ascii->none~create_object proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->interface~to_unicode proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->interface~to_unicode proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_rename_name_ascii json_file%json_file_rename_name_ascii proc~json_file_rename_name_ascii->interface~to_unicode proc~json_file_rename_path_ascii json_file%json_file_rename_path_ascii proc~json_file_rename_path_ascii->interface~to_unicode proc~json_file_update_string_name_ascii json_file%json_file_update_string_name_ascii proc~json_file_update_string_name_ascii->interface~to_unicode none~update~2 json_file%update proc~json_file_update_string_name_ascii->none~update~2 proc~json_file_update_string_val_ascii json_file%json_file_update_string_val_ascii proc~json_file_update_string_val_ascii->interface~to_unicode proc~json_file_update_string_val_ascii->none~update~2 proc~json_rename_by_path_name_ascii json_core%json_rename_by_path_name_ascii proc~json_rename_by_path_name_ascii->interface~to_unicode proc~json_rename_by_path_path_ascii json_core%json_rename_by_path_path_ascii proc~json_rename_by_path_path_ascii->interface~to_unicode proc~json_update_string_name_ascii json_core%json_update_string_name_ascii proc~json_update_string_name_ascii->interface~to_unicode none~update~4 json_core%update proc~json_update_string_name_ascii->none~update~4 proc~json_update_string_val_ascii json_core%json_update_string_val_ascii proc~json_update_string_val_ascii->interface~to_unicode proc~json_update_string_val_ascii->none~update~4 proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii proc~json_value_add_string_name_ascii->interface~to_unicode none~add~4 json_core%add proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~ucs4_comp_default ucs4_comp_default proc~ucs4_comp_default->interface~to_unicode proc~ucs4_join_default ucs4_join_default proc~ucs4_join_default->interface~to_unicode proc~ucs4_neq_default ucs4_neq_default proc~ucs4_neq_default->interface~to_unicode proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->interface~to_unicode proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string->interface~to_unicode proc~initialize_json_file_from_string initialize_json_file_from_string proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string_v2->interface~to_unicode proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->interface~to_unicode proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->interface~to_unicode proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->interface~to_unicode proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->interface~to_unicode proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->interface~to_unicode proc~json_add_member_by_path json_core%json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->interface~to_unicode none~add_by_path~2 json_core%add_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->interface~to_unicode proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->interface~to_unicode proc~json_add_real_by_path json_core%json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->interface~to_unicode proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->interface~to_unicode proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->interface~to_unicode proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path proc~wrap_json_create_by_path->interface~to_unicode none~create json_core%create proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->interface~to_unicode proc~json_file_add_integer json_file%json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->interface~to_unicode proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->interface~to_unicode proc~json_file_add_logical json_file%json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->interface~to_unicode proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->interface~to_unicode proc~json_file_add_object json_file%json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->interface~to_unicode proc~json_file_add_real json_file%json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->interface~to_unicode proc~json_file_add_real32 json_file%json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->interface~to_unicode proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->interface~to_unicode proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->interface~to_unicode proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->interface~to_unicode proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_alloc_string_vec->interface~to_unicode none~get json_file%get proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer proc~wrap_json_file_get_integer->interface~to_unicode proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec proc~wrap_json_file_get_integer_vec->interface~to_unicode proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical proc~wrap_json_file_get_logical->interface~to_unicode proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec proc~wrap_json_file_get_logical_vec->interface~to_unicode proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object json_file%wrap_json_file_get_object proc~wrap_json_file_get_object->interface~to_unicode proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real json_file%wrap_json_file_get_real proc~wrap_json_file_get_real->interface~to_unicode proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 proc~wrap_json_file_get_real32->interface~to_unicode proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec proc~wrap_json_file_get_real32_vec->interface~to_unicode proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec proc~wrap_json_file_get_real_vec->interface~to_unicode proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string json_file%wrap_json_file_get_string proc~wrap_json_file_get_string->interface~to_unicode proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec proc~wrap_json_file_get_string_vec->interface~to_unicode proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string proc~wrap_json_file_load_from_string->interface~to_unicode none~deserialize json_file%deserialize proc~wrap_json_file_load_from_string->none~deserialize proc~wrap_json_file_remove json_file%wrap_json_file_remove proc~wrap_json_file_remove->interface~to_unicode none~remove json_file%remove proc~wrap_json_file_remove->none~remove proc~wrap_json_file_rename json_file%wrap_json_file_rename proc~wrap_json_file_rename->interface~to_unicode proc~wrap_json_file_update_integer json_file%wrap_json_file_update_integer proc~wrap_json_file_update_integer->interface~to_unicode proc~wrap_json_file_update_integer->none~update~2 proc~wrap_json_file_update_logical json_file%wrap_json_file_update_logical proc~wrap_json_file_update_logical->interface~to_unicode proc~wrap_json_file_update_logical->none~update~2 proc~wrap_json_file_update_real json_file%wrap_json_file_update_real proc~wrap_json_file_update_real->interface~to_unicode proc~wrap_json_file_update_real->none~update~2 proc~wrap_json_file_update_real32 json_file%wrap_json_file_update_real32 proc~wrap_json_file_update_real32->interface~to_unicode proc~wrap_json_file_update_real32->none~update~2 proc~wrap_json_file_update_string json_file%wrap_json_file_update_string proc~wrap_json_file_update_string->interface~to_unicode proc~wrap_json_file_update_string->none~update~2 proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path proc~wrap_json_file_valid_path->interface~to_unicode none~valid_path json_file%valid_path proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_valid_path_op json_file%wrap_json_file_valid_path_op proc~wrap_json_file_valid_path_op->interface~to_unicode proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info proc~wrap_json_file_variable_info->interface~to_unicode none~info json_file%info proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info->interface~to_unicode none~matrix_info json_file%matrix_info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode none~get~2 json_core%get proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path json_core%wrap_json_get_by_path proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_path json_core%wrap_json_get_path proc~wrap_json_get_path->interface~to_unicode none~get_path json_core%get_path proc~wrap_json_get_path->none~get_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_info_by_path json_core%wrap_json_info_by_path proc~wrap_json_info_by_path->interface~to_unicode none~info~2 json_core%info proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path proc~wrap_json_matrix_info_by_path->interface~to_unicode none~matrix_info~2 json_core%matrix_info proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_parse_string json_core%wrap_json_parse_string proc~wrap_json_parse_string->interface~to_unicode none~deserialize~2 json_core%deserialize proc~wrap_json_parse_string->none~deserialize~2 proc~wrap_json_rename_by_path json_core%wrap_json_rename_by_path proc~wrap_json_rename_by_path->interface~to_unicode proc~wrap_json_throw_exception json_core%wrap_json_throw_exception proc~wrap_json_throw_exception->interface~to_unicode none~throw_exception json_core%throw_exception proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_update_integer json_core%wrap_json_update_integer proc~wrap_json_update_integer->interface~to_unicode proc~wrap_json_update_integer->none~update~4 proc~wrap_json_update_logical json_core%wrap_json_update_logical proc~wrap_json_update_logical->interface~to_unicode proc~wrap_json_update_logical->none~update~4 proc~wrap_json_update_real json_core%wrap_json_update_real proc~wrap_json_update_real->interface~to_unicode proc~wrap_json_update_real->none~update~4 proc~wrap_json_update_real32 json_core%wrap_json_update_real32 proc~wrap_json_update_real32->interface~to_unicode proc~wrap_json_update_real32->none~update~4 proc~wrap_json_update_string json_core%wrap_json_update_string proc~wrap_json_update_string->interface~to_unicode proc~wrap_json_update_string->none~update~4 proc~wrap_json_valid_path json_core%wrap_json_valid_path proc~wrap_json_valid_path->interface~to_unicode none~valid_path~2 json_core%valid_path proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_add_integer json_core%wrap_json_value_add_integer proc~wrap_json_value_add_integer->interface~to_unicode proc~wrap_json_value_add_integer->none~add~4 proc~wrap_json_value_add_integer_vec json_core%wrap_json_value_add_integer_vec proc~wrap_json_value_add_integer_vec->interface~to_unicode proc~wrap_json_value_add_integer_vec->none~add~4 proc~wrap_json_value_add_logical json_core%wrap_json_value_add_logical proc~wrap_json_value_add_logical->interface~to_unicode proc~wrap_json_value_add_logical->none~add~4 proc~wrap_json_value_add_logical_vec json_core%wrap_json_value_add_logical_vec proc~wrap_json_value_add_logical_vec->interface~to_unicode proc~wrap_json_value_add_logical_vec->none~add~4 proc~wrap_json_value_add_null json_core%wrap_json_value_add_null proc~wrap_json_value_add_null->interface~to_unicode proc~wrap_json_value_add_null->none~add~4 proc~wrap_json_value_add_real json_core%wrap_json_value_add_real proc~wrap_json_value_add_real->interface~to_unicode proc~wrap_json_value_add_real->none~add~4 proc~wrap_json_value_add_real32 json_core%wrap_json_value_add_real32 proc~wrap_json_value_add_real32->interface~to_unicode proc~wrap_json_value_add_real32->none~add~4 proc~wrap_json_value_add_real32_vec json_core%wrap_json_value_add_real32_vec proc~wrap_json_value_add_real32_vec->interface~to_unicode proc~wrap_json_value_add_real32_vec->none~add~4 proc~wrap_json_value_add_real_vec json_core%wrap_json_value_add_real_vec proc~wrap_json_value_add_real_vec->interface~to_unicode proc~wrap_json_value_add_real_vec->none~add~4 proc~wrap_json_value_add_string json_core%wrap_json_value_add_string proc~wrap_json_value_add_string->interface~to_unicode proc~wrap_json_value_add_string->none~add~4 proc~wrap_json_value_add_string_vec json_core%wrap_json_value_add_string_vec proc~wrap_json_value_add_string_vec->interface~to_unicode proc~wrap_json_value_add_string_vec->none~add~4 proc~wrap_json_value_create_array json_core%wrap_json_value_create_array proc~wrap_json_value_create_array->interface~to_unicode none~create_array json_core%create_array proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_integer json_core%wrap_json_value_create_integer proc~wrap_json_value_create_integer->interface~to_unicode none~create_integer json_core%create_integer proc~wrap_json_value_create_integer->none~create_integer proc~wrap_json_value_create_logical json_core%wrap_json_value_create_logical proc~wrap_json_value_create_logical->interface~to_unicode none~create_logical json_core%create_logical proc~wrap_json_value_create_logical->none~create_logical proc~wrap_json_value_create_null json_core%wrap_json_value_create_null proc~wrap_json_value_create_null->interface~to_unicode none~create_null json_core%create_null proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object json_core%wrap_json_value_create_object proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~wrap_json_value_create_real json_core%wrap_json_value_create_real proc~wrap_json_value_create_real->interface~to_unicode none~create_real~2 json_core%create_real proc~wrap_json_value_create_real->none~create_real~2 proc~wrap_json_value_create_real32 json_core%wrap_json_value_create_real32 proc~wrap_json_value_create_real32->interface~to_unicode proc~wrap_json_value_create_real32->none~create_real~2 proc~wrap_json_value_create_string json_core%wrap_json_value_create_string proc~wrap_json_value_create_string->interface~to_unicode none~create_string json_core%create_string proc~wrap_json_value_create_string->none~create_string proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present proc~wrap_json_value_remove_if_present->interface~to_unicode none~remove_if_present json_core%remove_if_present proc~wrap_json_value_remove_if_present->none~remove_if_present proc~wrap_json_value_rename json_core%wrap_json_value_rename proc~wrap_json_value_rename->interface~to_unicode interface~json_file json_file interface~json_file->proc~wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string_v2 interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~initialize_json_file initialize_json_file interface~json_file->proc~initialize_json_file interface~operator(==) operator(==) interface~operator(==)->proc~default_comp_ucs4 interface~operator(==)->proc~ucs4_comp_default interface~operator(SLASH=) operator(/=) interface~operator(SLASH=)->proc~default_neq_ucs4 interface~operator(SLASH=)->proc~ucs4_neq_default interface~operator(SLASHSLASH) operator(//) interface~operator(SLASHSLASH)->proc~default_join_ucs4 interface~operator(SLASHSLASH)->proc~ucs4_join_default none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~add~4->proc~json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_val_ascii none~create->proc~wrap_json_create_by_path proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path none~create_array->proc~wrap_json_value_create_array none~create_integer->proc~wrap_json_value_create_integer none~create_logical->proc~wrap_json_value_create_logical none~create_null->proc~wrap_json_value_create_null none~create_object->proc~wrap_json_value_create_object none~create_real~2->proc~wrap_json_value_create_real32 proc~json_value_create_real32 json_core%json_value_create_real32 none~create_real~2->proc~json_value_create_real32 none~create_string->proc~wrap_json_value_create_string none~deserialize->proc~wrap_json_file_load_from_string proc~json_file_load_from_string json_file%json_file_load_from_string none~deserialize->proc~json_file_load_from_string none~deserialize~2->proc~wrap_json_parse_string proc~json_parse_string json_core%json_parse_string none~deserialize~2->proc~json_parse_string none~get->proc~wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_object none~get->proc~wrap_json_file_get_real none~get->proc~wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_string none~get->proc~wrap_json_file_get_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get->proc~json_file_get_alloc_string_vec proc~json_file_get_integer json_file%json_file_get_integer none~get->proc~json_file_get_integer proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get->proc~json_file_get_integer_vec proc~json_file_get_logical json_file%json_file_get_logical none~get->proc~json_file_get_logical proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get->proc~json_file_get_logical_vec proc~json_file_get_object json_file%json_file_get_object none~get->proc~json_file_get_object proc~json_file_get_real json_file%json_file_get_real none~get->proc~json_file_get_real proc~json_file_get_real32 json_file%json_file_get_real32 none~get->proc~json_file_get_real32 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get->proc~json_file_get_real32_vec proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get->proc~json_file_get_real_vec proc~json_file_get_string json_file%json_file_get_string none~get->proc~json_file_get_string proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get->proc~json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name none~get_path->proc~wrap_json_get_path proc~json_get_path json_core%json_get_path none~get_path->proc~json_get_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_by_path none~get~2->proc~wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path none~info->proc~wrap_json_file_variable_info proc~json_file_variable_info json_file%json_file_variable_info none~info->proc~json_file_variable_info none~info~2->proc~wrap_json_info_by_path proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info none~matrix_info->proc~json_file_variable_matrix_info none~matrix_info~2->proc~wrap_json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path none~remove->proc~wrap_json_file_remove proc~json_file_remove json_file%json_file_remove none~remove->proc~json_file_remove none~remove_if_present->proc~wrap_json_value_remove_if_present proc~json_value_remove_if_present json_core%json_value_remove_if_present none~remove_if_present->proc~json_value_remove_if_present none~throw_exception->proc~wrap_json_throw_exception none~update~2->proc~json_file_update_string_name_ascii none~update~2->proc~json_file_update_string_val_ascii none~update~4->proc~json_update_string_name_ascii none~update~4->proc~json_update_string_val_ascii none~valid_path->proc~wrap_json_file_valid_path proc~json_file_valid_path json_file%json_file_valid_path none~valid_path->proc~json_file_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_valid_path json_core%json_valid_path none~valid_path~2->proc~json_valid_path proc~assign_string_to_json_file->none~deserialize proc~convert json_core%convert proc~convert->none~create_array proc~convert->none~create_null proc~convert->none~create_object proc~convert->none~info~2 proc~convert->none~throw_exception proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~initialize_json_file_from_string->none~deserialize none~initialize json_file%initialize proc~initialize_json_file_from_string->none~initialize proc~initialize_json_file_from_string_v2->none~deserialize proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~create_integer proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->none~throw_exception proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~add~4 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~create_array proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~create_logical proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~throw_exception proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~add~4 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~create_array proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~throw_exception proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~create_real~2 proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~throw_exception proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~add~4 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~create_array proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~create_string proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~throw_exception proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child proc~json_check_children_for_duplicate_keys->none~get_path proc~json_check_children_for_duplicate_keys->none~throw_exception proc~json_count json_core%json_count proc~json_count->none~throw_exception proc~json_create_by_path->none~throw_exception proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer->none~create_object proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_integer_vec->none~create_object proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical->none~create_object proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_logical_vec->none~create_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_object->none~create_object proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real->none~create_object proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_real_vec->none~create_object proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string->none~create_object proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_add_string_vec->none~create_object proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object->none~get~2 proc~json_file_get_real->none~get~2 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec->none~get~2 proc~json_file_load_from_string->none~deserialize~2 proc~json_file_move_pointer json_file%json_file_move_pointer proc~json_file_move_pointer->none~throw_exception proc~json_file_move_pointer->none~initialize proc~json_file_print_to_unit json_file%json_file_print_to_unit proc~json_file_print_to_unit->none~throw_exception proc~json_file_remove->none~remove_if_present proc~json_file_update_integer json_file%json_file_update_integer proc~json_file_update_integer->none~update~4 proc~json_file_update_logical json_file%json_file_update_logical proc~json_file_update_logical->none~update~4 proc~json_file_update_real json_file%json_file_update_real proc~json_file_update_real->none~update~4 proc~json_file_update_real32 json_file%json_file_update_real32 proc~json_file_update_real32->none~update~2 proc~json_file_update_string json_file%json_file_update_string proc~json_file_update_string->none~update~4 proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_integer->none~throw_exception proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_next json_core%json_get_next proc~json_get_next->none~throw_exception proc~json_get_parent json_core%json_get_parent proc~json_get_parent->none~throw_exception proc~json_get_path->none~info~2 proc~json_get_path->none~throw_exception proc~json_get_previous json_core%json_get_previous proc~json_get_previous->none~throw_exception proc~json_get_real->none~throw_exception proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_string->none~throw_exception proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_tail json_core%json_get_tail proc~json_get_tail->none~throw_exception proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_initialize json_core%json_initialize proc~json_initialize->none~throw_exception proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_is_vector->none~throw_exception proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_matrix_info->none~throw_exception proc~json_matrix_info_by_path->none~get~2 proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_parse_end json_core%json_parse_end proc~json_parse_end->none~throw_exception proc~json_parse_file json_core%json_parse_file proc~json_parse_file->none~throw_exception proc~json_parse_file->proc~json_initialize proc~json_parse_file->proc~json_parse_end proc~parse_value json_core%parse_value proc~json_parse_file->proc~parse_value proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_file->proc~json_check_all_for_duplicate_keys proc~json_parse_string->none~throw_exception proc~json_parse_string->proc~json_initialize proc~json_parse_string->proc~json_parse_end proc~json_parse_string->proc~parse_value proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_print_to_filename json_core%json_print_to_filename proc~json_print_to_filename->none~throw_exception proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->none~throw_exception proc~json_value_print json_core%json_value_print proc~json_print_to_unit->proc~json_value_print proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_rename_by_path->none~throw_exception proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_traverse json_core%json_traverse proc~json_traverse->none~throw_exception proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_integer->none~throw_exception proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~throw_exception proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~throw_exception proc~json_update_real32 json_core%json_update_real32 proc~json_update_real32->none~update~4 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~throw_exception proc~json_valid_path->none~get~2 proc~json_value_add_integer json_core%json_value_add_integer proc~json_value_add_integer->none~add~4 proc~json_value_add_integer->none~create_integer proc~json_value_add_integer_vec json_core%json_value_add_integer_vec proc~json_value_add_integer_vec->none~add~4 proc~json_value_add_integer_vec->none~create_array proc~json_value_add_logical json_core%json_value_add_logical proc~json_value_add_logical->none~add~4 proc~json_value_add_logical->none~create_logical proc~json_value_add_logical_vec json_core%json_value_add_logical_vec proc~json_value_add_logical_vec->none~add~4 proc~json_value_add_logical_vec->none~create_array proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_add_member->none~throw_exception proc~json_value_add_null json_core%json_value_add_null proc~json_value_add_null->none~add~4 proc~json_value_add_null->none~create_null proc~json_value_add_real json_core%json_value_add_real proc~json_value_add_real->none~add~4 proc~json_value_add_real->none~create_real~2 proc~json_value_add_real32 json_core%json_value_add_real32 proc~json_value_add_real32->none~add~4 proc~json_value_add_real32_vec json_core%json_value_add_real32_vec proc~json_value_add_real32_vec->none~add~4 proc~json_value_add_real_vec json_core%json_value_add_real_vec proc~json_value_add_real_vec->none~add~4 proc~json_value_add_real_vec->none~create_array proc~json_value_add_string json_core%json_value_add_string proc~json_value_add_string->none~add~4 proc~json_value_add_string->none~create_string proc~json_value_add_string_vec json_core%json_value_add_string_vec proc~json_value_add_string_vec->none~add~4 proc~json_value_add_string_vec->none~create_array proc~json_value_create_real32->none~create_real~2 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_name->none~throw_exception proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_print->none~throw_exception proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~json_value_remove_if_present->none~get~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~json_value_swap json_core%json_value_swap proc~json_value_swap->none~throw_exception proc~json_value_is_child_of json_core%json_value_is_child_of proc~json_value_swap->proc~json_value_is_child_of proc~json_value_validate json_core%json_value_validate proc~json_value_validate->none~throw_exception proc~json_value_validate->proc~json_check_all_for_duplicate_keys proc~parse_array json_core%parse_array proc~parse_array->none~add~4 proc~parse_array->none~throw_exception proc~parse_array->proc~parse_value proc~parse_for_chars json_core%parse_for_chars proc~parse_for_chars->none~throw_exception proc~parse_object json_core%parse_object proc~parse_object->none~add~4 proc~parse_object->none~throw_exception proc~parse_object->proc~parse_object proc~parse_string json_core%parse_string proc~parse_object->proc~parse_string proc~parse_object->proc~parse_value proc~parse_string->none~throw_exception proc~parse_value->none~throw_exception proc~parse_value->proc~parse_array proc~parse_value->proc~parse_for_chars proc~parse_value->proc~parse_object proc~parse_value->proc~parse_string proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~push_char->none~throw_exception proc~string_to_dble json_core%string_to_dble proc~string_to_dble->none~throw_exception proc~string_to_int json_core%string_to_int proc~string_to_int->none~throw_exception none~insert_after->proc~json_value_insert_after_child_by_index none~load~2 json_core%load none~load~2->proc~json_parse_file none~string_info->proc~json_string_info proc~initialize_json_core initialize_json_core proc~initialize_json_core->proc~json_initialize proc~initialize_json_core_in_file json_file%initialize_json_core_in_file proc~initialize_json_core_in_file->proc~json_initialize proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_file_traverse json_file%json_file_traverse proc~json_file_traverse->proc~json_traverse proc~json_value_is_child_of->proc~json_traverse proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~parse_number->proc~push_char proc~parse_number->proc~string_to_dble proc~parse_number->proc~string_to_int interface~json_core json_core interface~json_core->proc~initialize_json_core none~initialize->proc~initialize_json_core_in_file proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~json_value_replace->none~insert_after proc~initialize_json_file->none~initialize Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure function to_uni ( str ) implicit none character ( kind = CDK , len =* ), intent ( in ) :: str character ( kind = CK , len = len ( str )) :: to_uni to_uni = str end function to_uni","tags":"","loc":"proc/to_uni.html"},{"title":"to_uni_vec – JSON-Fortran","text":"private pure function to_uni_vec(str) Convert array of strings to unicode (CDK to CK). Note JW: may be able to remove this by making to_uni PURE ELEMENTAL ? Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in), dimension(:) :: str Return Value character(kind=CK, len=len), dimension(size(str)) Called by proc~~to_uni_vec~~CalledByGraph proc~to_uni_vec to_uni_vec interface~to_unicode to_unicode interface~to_unicode->proc~to_uni_vec proc~default_comp_ucs4 default_comp_ucs4 proc~default_comp_ucs4->interface~to_unicode proc~default_join_ucs4 default_join_ucs4 proc~default_join_ucs4->interface~to_unicode proc~default_neq_ucs4 default_neq_ucs4 proc~default_neq_ucs4->interface~to_unicode proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->interface~to_unicode none~create_object json_core%create_object proc~json_file_add_string_path_ascii->none~create_object proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->interface~to_unicode proc~json_file_add_string_value_ascii->none~create_object proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->interface~to_unicode proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->interface~to_unicode proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_rename_name_ascii json_file%json_file_rename_name_ascii proc~json_file_rename_name_ascii->interface~to_unicode proc~json_file_rename_path_ascii json_file%json_file_rename_path_ascii proc~json_file_rename_path_ascii->interface~to_unicode proc~json_file_update_string_name_ascii json_file%json_file_update_string_name_ascii proc~json_file_update_string_name_ascii->interface~to_unicode none~update~2 json_file%update proc~json_file_update_string_name_ascii->none~update~2 proc~json_file_update_string_val_ascii json_file%json_file_update_string_val_ascii proc~json_file_update_string_val_ascii->interface~to_unicode proc~json_file_update_string_val_ascii->none~update~2 proc~json_rename_by_path_name_ascii json_core%json_rename_by_path_name_ascii proc~json_rename_by_path_name_ascii->interface~to_unicode proc~json_rename_by_path_path_ascii json_core%json_rename_by_path_path_ascii proc~json_rename_by_path_path_ascii->interface~to_unicode proc~json_update_string_name_ascii json_core%json_update_string_name_ascii proc~json_update_string_name_ascii->interface~to_unicode none~update~4 json_core%update proc~json_update_string_name_ascii->none~update~4 proc~json_update_string_val_ascii json_core%json_update_string_val_ascii proc~json_update_string_val_ascii->interface~to_unicode proc~json_update_string_val_ascii->none~update~4 proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii proc~json_value_add_string_name_ascii->interface~to_unicode none~add~4 json_core%add proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~ucs4_comp_default ucs4_comp_default proc~ucs4_comp_default->interface~to_unicode proc~ucs4_join_default ucs4_join_default proc~ucs4_join_default->interface~to_unicode proc~ucs4_neq_default ucs4_neq_default proc~ucs4_neq_default->interface~to_unicode proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->interface~to_unicode proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string->interface~to_unicode proc~initialize_json_file_from_string initialize_json_file_from_string proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string_v2->interface~to_unicode proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->interface~to_unicode proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->interface~to_unicode proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->interface~to_unicode proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->interface~to_unicode proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->interface~to_unicode proc~json_add_member_by_path json_core%json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->interface~to_unicode none~add_by_path~2 json_core%add_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->interface~to_unicode proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->interface~to_unicode proc~json_add_real_by_path json_core%json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->interface~to_unicode proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->interface~to_unicode proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->interface~to_unicode proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path proc~wrap_json_create_by_path->interface~to_unicode none~create json_core%create proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->interface~to_unicode proc~json_file_add_integer json_file%json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->interface~to_unicode proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->interface~to_unicode proc~json_file_add_logical json_file%json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->interface~to_unicode proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->interface~to_unicode proc~json_file_add_object json_file%json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->interface~to_unicode proc~json_file_add_real json_file%json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->interface~to_unicode proc~json_file_add_real32 json_file%json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->interface~to_unicode proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->interface~to_unicode proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->interface~to_unicode proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->interface~to_unicode proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_alloc_string_vec->interface~to_unicode none~get json_file%get proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer proc~wrap_json_file_get_integer->interface~to_unicode proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec proc~wrap_json_file_get_integer_vec->interface~to_unicode proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical proc~wrap_json_file_get_logical->interface~to_unicode proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec proc~wrap_json_file_get_logical_vec->interface~to_unicode proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object json_file%wrap_json_file_get_object proc~wrap_json_file_get_object->interface~to_unicode proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real json_file%wrap_json_file_get_real proc~wrap_json_file_get_real->interface~to_unicode proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 proc~wrap_json_file_get_real32->interface~to_unicode proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec proc~wrap_json_file_get_real32_vec->interface~to_unicode proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec proc~wrap_json_file_get_real_vec->interface~to_unicode proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string json_file%wrap_json_file_get_string proc~wrap_json_file_get_string->interface~to_unicode proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec proc~wrap_json_file_get_string_vec->interface~to_unicode proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string proc~wrap_json_file_load_from_string->interface~to_unicode none~deserialize json_file%deserialize proc~wrap_json_file_load_from_string->none~deserialize proc~wrap_json_file_remove json_file%wrap_json_file_remove proc~wrap_json_file_remove->interface~to_unicode none~remove json_file%remove proc~wrap_json_file_remove->none~remove proc~wrap_json_file_rename json_file%wrap_json_file_rename proc~wrap_json_file_rename->interface~to_unicode proc~wrap_json_file_update_integer json_file%wrap_json_file_update_integer proc~wrap_json_file_update_integer->interface~to_unicode proc~wrap_json_file_update_integer->none~update~2 proc~wrap_json_file_update_logical json_file%wrap_json_file_update_logical proc~wrap_json_file_update_logical->interface~to_unicode proc~wrap_json_file_update_logical->none~update~2 proc~wrap_json_file_update_real json_file%wrap_json_file_update_real proc~wrap_json_file_update_real->interface~to_unicode proc~wrap_json_file_update_real->none~update~2 proc~wrap_json_file_update_real32 json_file%wrap_json_file_update_real32 proc~wrap_json_file_update_real32->interface~to_unicode proc~wrap_json_file_update_real32->none~update~2 proc~wrap_json_file_update_string json_file%wrap_json_file_update_string proc~wrap_json_file_update_string->interface~to_unicode proc~wrap_json_file_update_string->none~update~2 proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path proc~wrap_json_file_valid_path->interface~to_unicode none~valid_path json_file%valid_path proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_valid_path_op json_file%wrap_json_file_valid_path_op proc~wrap_json_file_valid_path_op->interface~to_unicode proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info proc~wrap_json_file_variable_info->interface~to_unicode none~info json_file%info proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info->interface~to_unicode none~matrix_info json_file%matrix_info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode none~get~2 json_core%get proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path json_core%wrap_json_get_by_path proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_path json_core%wrap_json_get_path proc~wrap_json_get_path->interface~to_unicode none~get_path json_core%get_path proc~wrap_json_get_path->none~get_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_info_by_path json_core%wrap_json_info_by_path proc~wrap_json_info_by_path->interface~to_unicode none~info~2 json_core%info proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path proc~wrap_json_matrix_info_by_path->interface~to_unicode none~matrix_info~2 json_core%matrix_info proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_parse_string json_core%wrap_json_parse_string proc~wrap_json_parse_string->interface~to_unicode none~deserialize~2 json_core%deserialize proc~wrap_json_parse_string->none~deserialize~2 proc~wrap_json_rename_by_path json_core%wrap_json_rename_by_path proc~wrap_json_rename_by_path->interface~to_unicode proc~wrap_json_throw_exception json_core%wrap_json_throw_exception proc~wrap_json_throw_exception->interface~to_unicode none~throw_exception json_core%throw_exception proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_update_integer json_core%wrap_json_update_integer proc~wrap_json_update_integer->interface~to_unicode proc~wrap_json_update_integer->none~update~4 proc~wrap_json_update_logical json_core%wrap_json_update_logical proc~wrap_json_update_logical->interface~to_unicode proc~wrap_json_update_logical->none~update~4 proc~wrap_json_update_real json_core%wrap_json_update_real proc~wrap_json_update_real->interface~to_unicode proc~wrap_json_update_real->none~update~4 proc~wrap_json_update_real32 json_core%wrap_json_update_real32 proc~wrap_json_update_real32->interface~to_unicode proc~wrap_json_update_real32->none~update~4 proc~wrap_json_update_string json_core%wrap_json_update_string proc~wrap_json_update_string->interface~to_unicode proc~wrap_json_update_string->none~update~4 proc~wrap_json_valid_path json_core%wrap_json_valid_path proc~wrap_json_valid_path->interface~to_unicode none~valid_path~2 json_core%valid_path proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_add_integer json_core%wrap_json_value_add_integer proc~wrap_json_value_add_integer->interface~to_unicode proc~wrap_json_value_add_integer->none~add~4 proc~wrap_json_value_add_integer_vec json_core%wrap_json_value_add_integer_vec proc~wrap_json_value_add_integer_vec->interface~to_unicode proc~wrap_json_value_add_integer_vec->none~add~4 proc~wrap_json_value_add_logical json_core%wrap_json_value_add_logical proc~wrap_json_value_add_logical->interface~to_unicode proc~wrap_json_value_add_logical->none~add~4 proc~wrap_json_value_add_logical_vec json_core%wrap_json_value_add_logical_vec proc~wrap_json_value_add_logical_vec->interface~to_unicode proc~wrap_json_value_add_logical_vec->none~add~4 proc~wrap_json_value_add_null json_core%wrap_json_value_add_null proc~wrap_json_value_add_null->interface~to_unicode proc~wrap_json_value_add_null->none~add~4 proc~wrap_json_value_add_real json_core%wrap_json_value_add_real proc~wrap_json_value_add_real->interface~to_unicode proc~wrap_json_value_add_real->none~add~4 proc~wrap_json_value_add_real32 json_core%wrap_json_value_add_real32 proc~wrap_json_value_add_real32->interface~to_unicode proc~wrap_json_value_add_real32->none~add~4 proc~wrap_json_value_add_real32_vec json_core%wrap_json_value_add_real32_vec proc~wrap_json_value_add_real32_vec->interface~to_unicode proc~wrap_json_value_add_real32_vec->none~add~4 proc~wrap_json_value_add_real_vec json_core%wrap_json_value_add_real_vec proc~wrap_json_value_add_real_vec->interface~to_unicode proc~wrap_json_value_add_real_vec->none~add~4 proc~wrap_json_value_add_string json_core%wrap_json_value_add_string proc~wrap_json_value_add_string->interface~to_unicode proc~wrap_json_value_add_string->none~add~4 proc~wrap_json_value_add_string_vec json_core%wrap_json_value_add_string_vec proc~wrap_json_value_add_string_vec->interface~to_unicode proc~wrap_json_value_add_string_vec->none~add~4 proc~wrap_json_value_create_array json_core%wrap_json_value_create_array proc~wrap_json_value_create_array->interface~to_unicode none~create_array json_core%create_array proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_integer json_core%wrap_json_value_create_integer proc~wrap_json_value_create_integer->interface~to_unicode none~create_integer json_core%create_integer proc~wrap_json_value_create_integer->none~create_integer proc~wrap_json_value_create_logical json_core%wrap_json_value_create_logical proc~wrap_json_value_create_logical->interface~to_unicode none~create_logical json_core%create_logical proc~wrap_json_value_create_logical->none~create_logical proc~wrap_json_value_create_null json_core%wrap_json_value_create_null proc~wrap_json_value_create_null->interface~to_unicode none~create_null json_core%create_null proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object json_core%wrap_json_value_create_object proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~wrap_json_value_create_real json_core%wrap_json_value_create_real proc~wrap_json_value_create_real->interface~to_unicode none~create_real~2 json_core%create_real proc~wrap_json_value_create_real->none~create_real~2 proc~wrap_json_value_create_real32 json_core%wrap_json_value_create_real32 proc~wrap_json_value_create_real32->interface~to_unicode proc~wrap_json_value_create_real32->none~create_real~2 proc~wrap_json_value_create_string json_core%wrap_json_value_create_string proc~wrap_json_value_create_string->interface~to_unicode none~create_string json_core%create_string proc~wrap_json_value_create_string->none~create_string proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present proc~wrap_json_value_remove_if_present->interface~to_unicode none~remove_if_present json_core%remove_if_present proc~wrap_json_value_remove_if_present->none~remove_if_present proc~wrap_json_value_rename json_core%wrap_json_value_rename proc~wrap_json_value_rename->interface~to_unicode interface~json_file json_file interface~json_file->proc~wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string_v2 interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~initialize_json_file initialize_json_file interface~json_file->proc~initialize_json_file interface~operator(==) operator(==) interface~operator(==)->proc~default_comp_ucs4 interface~operator(==)->proc~ucs4_comp_default interface~operator(SLASH=) operator(/=) interface~operator(SLASH=)->proc~default_neq_ucs4 interface~operator(SLASH=)->proc~ucs4_neq_default interface~operator(SLASHSLASH) operator(//) interface~operator(SLASHSLASH)->proc~default_join_ucs4 interface~operator(SLASHSLASH)->proc~ucs4_join_default none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~add~4->proc~json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_val_ascii none~create->proc~wrap_json_create_by_path proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path none~create_array->proc~wrap_json_value_create_array none~create_integer->proc~wrap_json_value_create_integer none~create_logical->proc~wrap_json_value_create_logical none~create_null->proc~wrap_json_value_create_null none~create_object->proc~wrap_json_value_create_object none~create_real~2->proc~wrap_json_value_create_real32 proc~json_value_create_real32 json_core%json_value_create_real32 none~create_real~2->proc~json_value_create_real32 none~create_string->proc~wrap_json_value_create_string none~deserialize->proc~wrap_json_file_load_from_string proc~json_file_load_from_string json_file%json_file_load_from_string none~deserialize->proc~json_file_load_from_string none~deserialize~2->proc~wrap_json_parse_string proc~json_parse_string json_core%json_parse_string none~deserialize~2->proc~json_parse_string none~get->proc~wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_object none~get->proc~wrap_json_file_get_real none~get->proc~wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_string none~get->proc~wrap_json_file_get_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get->proc~json_file_get_alloc_string_vec proc~json_file_get_integer json_file%json_file_get_integer none~get->proc~json_file_get_integer proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get->proc~json_file_get_integer_vec proc~json_file_get_logical json_file%json_file_get_logical none~get->proc~json_file_get_logical proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get->proc~json_file_get_logical_vec proc~json_file_get_object json_file%json_file_get_object none~get->proc~json_file_get_object proc~json_file_get_real json_file%json_file_get_real none~get->proc~json_file_get_real proc~json_file_get_real32 json_file%json_file_get_real32 none~get->proc~json_file_get_real32 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get->proc~json_file_get_real32_vec proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get->proc~json_file_get_real_vec proc~json_file_get_string json_file%json_file_get_string none~get->proc~json_file_get_string proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get->proc~json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name none~get_path->proc~wrap_json_get_path proc~json_get_path json_core%json_get_path none~get_path->proc~json_get_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_by_path none~get~2->proc~wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path none~info->proc~wrap_json_file_variable_info proc~json_file_variable_info json_file%json_file_variable_info none~info->proc~json_file_variable_info none~info~2->proc~wrap_json_info_by_path proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info none~matrix_info->proc~json_file_variable_matrix_info none~matrix_info~2->proc~wrap_json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path none~remove->proc~wrap_json_file_remove proc~json_file_remove json_file%json_file_remove none~remove->proc~json_file_remove none~remove_if_present->proc~wrap_json_value_remove_if_present proc~json_value_remove_if_present json_core%json_value_remove_if_present none~remove_if_present->proc~json_value_remove_if_present none~throw_exception->proc~wrap_json_throw_exception none~update~2->proc~json_file_update_string_name_ascii none~update~2->proc~json_file_update_string_val_ascii none~update~4->proc~json_update_string_name_ascii none~update~4->proc~json_update_string_val_ascii none~valid_path->proc~wrap_json_file_valid_path proc~json_file_valid_path json_file%json_file_valid_path none~valid_path->proc~json_file_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_valid_path json_core%json_valid_path none~valid_path~2->proc~json_valid_path proc~assign_string_to_json_file->none~deserialize proc~convert json_core%convert proc~convert->none~create_array proc~convert->none~create_null proc~convert->none~create_object proc~convert->none~info~2 proc~convert->none~throw_exception proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~initialize_json_file_from_string->none~deserialize none~initialize json_file%initialize proc~initialize_json_file_from_string->none~initialize proc~initialize_json_file_from_string_v2->none~deserialize proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~create_integer proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->none~throw_exception proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~add~4 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~create_array proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~create_logical proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~throw_exception proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~add~4 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~create_array proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~throw_exception proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~create_real~2 proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~throw_exception proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~add~4 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~create_array proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~create_string proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~throw_exception proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child proc~json_check_children_for_duplicate_keys->none~get_path proc~json_check_children_for_duplicate_keys->none~throw_exception proc~json_count json_core%json_count proc~json_count->none~throw_exception proc~json_create_by_path->none~throw_exception proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer->none~create_object proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_integer_vec->none~create_object proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical->none~create_object proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_logical_vec->none~create_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_object->none~create_object proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real->none~create_object proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_real_vec->none~create_object proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string->none~create_object proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_add_string_vec->none~create_object proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object->none~get~2 proc~json_file_get_real->none~get~2 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec->none~get~2 proc~json_file_load_from_string->none~deserialize~2 proc~json_file_move_pointer json_file%json_file_move_pointer proc~json_file_move_pointer->none~throw_exception proc~json_file_move_pointer->none~initialize proc~json_file_print_to_unit json_file%json_file_print_to_unit proc~json_file_print_to_unit->none~throw_exception proc~json_file_remove->none~remove_if_present proc~json_file_update_integer json_file%json_file_update_integer proc~json_file_update_integer->none~update~4 proc~json_file_update_logical json_file%json_file_update_logical proc~json_file_update_logical->none~update~4 proc~json_file_update_real json_file%json_file_update_real proc~json_file_update_real->none~update~4 proc~json_file_update_real32 json_file%json_file_update_real32 proc~json_file_update_real32->none~update~2 proc~json_file_update_string json_file%json_file_update_string proc~json_file_update_string->none~update~4 proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_integer->none~throw_exception proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_next json_core%json_get_next proc~json_get_next->none~throw_exception proc~json_get_parent json_core%json_get_parent proc~json_get_parent->none~throw_exception proc~json_get_path->none~info~2 proc~json_get_path->none~throw_exception proc~json_get_previous json_core%json_get_previous proc~json_get_previous->none~throw_exception proc~json_get_real->none~throw_exception proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_string->none~throw_exception proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_tail json_core%json_get_tail proc~json_get_tail->none~throw_exception proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_initialize json_core%json_initialize proc~json_initialize->none~throw_exception proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_is_vector->none~throw_exception proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_matrix_info->none~throw_exception proc~json_matrix_info_by_path->none~get~2 proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_parse_end json_core%json_parse_end proc~json_parse_end->none~throw_exception proc~json_parse_file json_core%json_parse_file proc~json_parse_file->none~throw_exception proc~json_parse_file->proc~json_initialize proc~json_parse_file->proc~json_parse_end proc~parse_value json_core%parse_value proc~json_parse_file->proc~parse_value proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_file->proc~json_check_all_for_duplicate_keys proc~json_parse_string->none~throw_exception proc~json_parse_string->proc~json_initialize proc~json_parse_string->proc~json_parse_end proc~json_parse_string->proc~parse_value proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_print_to_filename json_core%json_print_to_filename proc~json_print_to_filename->none~throw_exception proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->none~throw_exception proc~json_value_print json_core%json_value_print proc~json_print_to_unit->proc~json_value_print proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_rename_by_path->none~throw_exception proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_traverse json_core%json_traverse proc~json_traverse->none~throw_exception proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_integer->none~throw_exception proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~throw_exception proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~throw_exception proc~json_update_real32 json_core%json_update_real32 proc~json_update_real32->none~update~4 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~throw_exception proc~json_valid_path->none~get~2 proc~json_value_add_integer json_core%json_value_add_integer proc~json_value_add_integer->none~add~4 proc~json_value_add_integer->none~create_integer proc~json_value_add_integer_vec json_core%json_value_add_integer_vec proc~json_value_add_integer_vec->none~add~4 proc~json_value_add_integer_vec->none~create_array proc~json_value_add_logical json_core%json_value_add_logical proc~json_value_add_logical->none~add~4 proc~json_value_add_logical->none~create_logical proc~json_value_add_logical_vec json_core%json_value_add_logical_vec proc~json_value_add_logical_vec->none~add~4 proc~json_value_add_logical_vec->none~create_array proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_add_member->none~throw_exception proc~json_value_add_null json_core%json_value_add_null proc~json_value_add_null->none~add~4 proc~json_value_add_null->none~create_null proc~json_value_add_real json_core%json_value_add_real proc~json_value_add_real->none~add~4 proc~json_value_add_real->none~create_real~2 proc~json_value_add_real32 json_core%json_value_add_real32 proc~json_value_add_real32->none~add~4 proc~json_value_add_real32_vec json_core%json_value_add_real32_vec proc~json_value_add_real32_vec->none~add~4 proc~json_value_add_real_vec json_core%json_value_add_real_vec proc~json_value_add_real_vec->none~add~4 proc~json_value_add_real_vec->none~create_array proc~json_value_add_string json_core%json_value_add_string proc~json_value_add_string->none~add~4 proc~json_value_add_string->none~create_string proc~json_value_add_string_vec json_core%json_value_add_string_vec proc~json_value_add_string_vec->none~add~4 proc~json_value_add_string_vec->none~create_array proc~json_value_create_real32->none~create_real~2 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_name->none~throw_exception proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_print->none~throw_exception proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~json_value_remove_if_present->none~get~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~json_value_swap json_core%json_value_swap proc~json_value_swap->none~throw_exception proc~json_value_is_child_of json_core%json_value_is_child_of proc~json_value_swap->proc~json_value_is_child_of proc~json_value_validate json_core%json_value_validate proc~json_value_validate->none~throw_exception proc~json_value_validate->proc~json_check_all_for_duplicate_keys proc~parse_array json_core%parse_array proc~parse_array->none~add~4 proc~parse_array->none~throw_exception proc~parse_array->proc~parse_value proc~parse_for_chars json_core%parse_for_chars proc~parse_for_chars->none~throw_exception proc~parse_object json_core%parse_object proc~parse_object->none~add~4 proc~parse_object->none~throw_exception proc~parse_object->proc~parse_object proc~parse_string json_core%parse_string proc~parse_object->proc~parse_string proc~parse_object->proc~parse_value proc~parse_string->none~throw_exception proc~parse_value->none~throw_exception proc~parse_value->proc~parse_array proc~parse_value->proc~parse_for_chars proc~parse_value->proc~parse_object proc~parse_value->proc~parse_string proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~push_char->none~throw_exception proc~string_to_dble json_core%string_to_dble proc~string_to_dble->none~throw_exception proc~string_to_int json_core%string_to_int proc~string_to_int->none~throw_exception none~insert_after->proc~json_value_insert_after_child_by_index none~load~2 json_core%load none~load~2->proc~json_parse_file none~string_info->proc~json_string_info proc~initialize_json_core initialize_json_core proc~initialize_json_core->proc~json_initialize proc~initialize_json_core_in_file json_file%initialize_json_core_in_file proc~initialize_json_core_in_file->proc~json_initialize proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_file_traverse json_file%json_file_traverse proc~json_file_traverse->proc~json_traverse proc~json_value_is_child_of->proc~json_traverse proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~parse_number->proc~push_char proc~parse_number->proc~string_to_dble proc~parse_number->proc~string_to_int interface~json_core json_core interface~json_core->proc~initialize_json_core none~initialize->proc~initialize_json_core_in_file proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~json_value_replace->none~insert_after proc~initialize_json_file->none~initialize Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure function to_uni_vec ( str ) implicit none character ( kind = CDK , len =* ), dimension (:), intent ( in ) :: str character ( kind = CK , len = len ( str )), dimension ( size ( str )) :: to_uni_vec to_uni_vec = str end function to_uni_vec","tags":"","loc":"proc/to_uni_vec.html"},{"title":"ucs4_comp_default – JSON-Fortran","text":"private pure elemental function ucs4_comp_default(ucs4_str, def_str) result(res) CK == CDK operator. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: ucs4_str character(kind=CDK, len=*), intent(in) :: def_str Return Value logical(kind=LK) Calls proc~~ucs4_comp_default~~CallsGraph proc~ucs4_comp_default ucs4_comp_default interface~to_unicode to_unicode proc~ucs4_comp_default->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~ucs4_comp_default~~CalledByGraph proc~ucs4_comp_default ucs4_comp_default interface~operator(==) operator(==) interface~operator(==)->proc~ucs4_comp_default Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure elemental function ucs4_comp_default ( ucs4_str , def_str ) result ( res ) implicit none character ( kind = CK , len =* ), intent ( in ) :: ucs4_str character ( kind = CDK , len =* ), intent ( in ) :: def_str logical ( LK ) :: res res = ( ucs4_str == to_unicode ( def_str ) ) end function ucs4_comp_default","tags":"","loc":"proc/ucs4_comp_default.html"},{"title":"ucs4_join_default – JSON-Fortran","text":"private pure function ucs4_join_default(ucs4_str, def_str) result(res) CK // CDK operator. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: ucs4_str character(kind=CDK, len=*), intent(in) :: def_str Return Value character(kind=CK, len=len=(len(ucs4_str)+len(def_str))) Calls proc~~ucs4_join_default~~CallsGraph proc~ucs4_join_default ucs4_join_default interface~to_unicode to_unicode proc~ucs4_join_default->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~ucs4_join_default~~CalledByGraph proc~ucs4_join_default ucs4_join_default interface~operator(SLASHSLASH) operator(//) interface~operator(SLASHSLASH)->proc~ucs4_join_default Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure function ucs4_join_default ( ucs4_str , def_str ) result ( res ) implicit none character ( kind = CK , len =* ), intent ( in ) :: ucs4_str character ( kind = CDK , len =* ), intent ( in ) :: def_str character ( kind = CK , len = ( len ( ucs4_str ) + len ( def_str ))) :: res res = ucs4_str // to_unicode ( def_str ) end function ucs4_join_default","tags":"","loc":"proc/ucs4_join_default.html"},{"title":"ucs4_neq_default – JSON-Fortran","text":"private pure elemental function ucs4_neq_default(ucs4_str, def_str) result(res) CK /= CDK operator. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: ucs4_str character(kind=CDK, len=*), intent(in) :: def_str Return Value logical(kind=LK) Calls proc~~ucs4_neq_default~~CallsGraph proc~ucs4_neq_default ucs4_neq_default interface~to_unicode to_unicode proc~ucs4_neq_default->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~ucs4_neq_default~~CalledByGraph proc~ucs4_neq_default ucs4_neq_default interface~operator(SLASH=) operator(/=) interface~operator(SLASH=)->proc~ucs4_neq_default Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure elemental function ucs4_neq_default ( ucs4_str , def_str ) result ( res ) implicit none character ( kind = CK , len =* ), intent ( in ) :: ucs4_str character ( kind = CDK , len =* ), intent ( in ) :: def_str logical ( LK ) :: res res = ( ucs4_str /= to_unicode ( def_str ) ) end function ucs4_neq_default","tags":"","loc":"proc/ucs4_neq_default.html"},{"title":"valid_json_hex – JSON-Fortran","text":"public pure function valid_json_hex(str) result(valid) Returns true if the string is a valid 4-digit hex string. Examples valid_json_hex ( '0000' ) !returns true valid_json_hex ( 'ABC4' ) !returns true valid_json_hex ( 'AB' ) !returns false (< 4 characters) valid_json_hex ( 'WXYZ' ) !returns false (invalid characters) Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str the string to check. Return Value logical(kind=LK) is str a value 4-digit hex string Called by proc~~valid_json_hex~~CalledByGraph proc~valid_json_hex valid_json_hex proc~escape_string escape_string proc~escape_string->proc~valid_json_hex proc~unescape_string unescape_string proc~unescape_string->proc~valid_json_hex proc~json_get_string json_core%json_get_string proc~json_get_string->proc~escape_string proc~json_value_print json_core%json_value_print proc~json_value_print->proc~escape_string proc~json_value_print->proc~json_value_print proc~json_is_vector json_core%json_is_vector proc~json_value_print->proc~json_is_vector proc~parse_string json_core%parse_string proc~parse_string->proc~unescape_string none~get~2 json_core%get none~get~2->proc~json_get_string proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~parse_object json_core%parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~parse_object proc~parse_value json_core%parse_value proc~parse_object->proc~parse_value proc~parse_value->proc~parse_string proc~parse_value->proc~parse_object proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~parse_array->proc~parse_value proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~load~2 json_core%load none~load~2->proc~json_parse_file none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_parse_string->none~deserialize~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~json_value_replace->none~insert_after proc~wrap_json_file_load_from_string->none~deserialize proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure function valid_json_hex ( str ) result ( valid ) implicit none logical ( LK ) :: valid !! is str a value 4-digit hex string character ( kind = CK , len =* ), intent ( in ) :: str !! the string to check. integer ( IK ) :: n !! length of `str` integer ( IK ) :: i !! counter !> an array of the valid hex characters character ( kind = CK , len = 1 ), dimension ( 22 ), parameter :: valid_chars = & [ ( achar ( i ), i = 48 , 57 ), & ! decimal digits ( achar ( i ), i = 65 , 70 ), & ! capital A-F ( achar ( i ), i = 97 , 102 ) ] ! lowercase a-f !initialize valid = . false . !check all the characters in the string: n = len ( str ) if ( n == 4 ) then do i = 1 , n if (. not . any ( str ( i : i ) == valid_chars )) return end do valid = . true . !all are in the set, so it is OK end if end function valid_json_hex","tags":"","loc":"proc/valid_json_hex.html"},{"title":"compact_real_string – JSON-Fortran","text":"private subroutine compact_real_string(str) Compact a string representing a real number, so that\n the same value is displayed with fewer characters. See also real_to_string Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(inout) :: str string representation of a real number. Called by proc~~compact_real_string~~CalledByGraph proc~compact_real_string compact_real_string proc~real_to_string real_to_string proc~real_to_string->proc~compact_real_string proc~json_get_string json_core%json_get_string proc~json_get_string->proc~real_to_string proc~json_value_print json_core%json_value_print proc~json_value_print->proc~real_to_string proc~json_value_print->proc~json_value_print proc~json_is_vector json_core%json_is_vector proc~json_value_print->proc~json_is_vector none~get~2 json_core%get none~get~2->proc~json_get_string proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_replace->none~insert_after proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine compact_real_string ( str ) implicit none character ( kind = CK , len =* ), intent ( inout ) :: str !! string representation of a real number. character ( kind = CK , len = len ( str )) :: significand character ( kind = CK , len = len ( str )) :: expnt character ( kind = CK , len = 2 ) :: separator integer ( IK ) :: exp_start integer ( IK ) :: decimal_pos integer ( IK ) :: sig_trim integer ( IK ) :: exp_trim integer ( IK ) :: i !! counter str = adjustl ( str ) exp_start = scan ( str , CK_ 'eEdD' ) if ( exp_start == 0 ) exp_start = scan ( str , CK_ '-+' , back = . true .) decimal_pos = scan ( str , CK_ '.' ) if ( exp_start /= 0 ) separator = str ( exp_start : exp_start ) if ( exp_start < decimal_pos ) then !possibly signed, exponent-less float significand = str sig_trim = len ( trim ( significand )) do i = len ( trim ( significand )), decimal_pos + 2 , - 1 !look from right to left at 0s !but save one after the decimal place if ( significand ( i : i ) == '0' ) then sig_trim = i - 1 else exit end if end do str = trim ( significand ( 1 : sig_trim )) else if ( exp_start > decimal_pos ) then !float has exponent significand = str ( 1 : exp_start - 1 ) sig_trim = len ( trim ( significand )) do i = len ( trim ( significand )), decimal_pos + 2 , - 1 !look from right to left at 0s if ( significand ( i : i ) == '0' ) then sig_trim = i - 1 else exit end if end do expnt = adjustl ( str ( exp_start + 1 :)) if ( expnt ( 1 : 1 ) == '+' . or . expnt ( 1 : 1 ) == '-' ) then separator = trim ( adjustl ( separator )) // expnt ( 1 : 1 ) exp_start = exp_start + 1 expnt = adjustl ( str ( exp_start + 1 :)) end if exp_trim = 1 do i = 1 ,( len ( trim ( expnt )) - 1 ) !look at exponent leading zeros saving last if ( expnt ( i : i ) == '0' ) then exp_trim = i + 1 else exit end if end do str = trim ( adjustl ( significand ( 1 : sig_trim ))) // & trim ( adjustl ( separator )) // & trim ( adjustl ( expnt ( exp_trim :))) !else ! mal-formed real, BUT this code should be unreachable end if end subroutine compact_real_string","tags":"","loc":"proc/compact_real_string.html"},{"title":"escape_string – JSON-Fortran","text":"public subroutine escape_string(str_in, str_out, escape_solidus) Add the escape characters to a string for adding to JSON . Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str_in character(kind=CK, len=:), intent(out), allocatable :: str_out logical(kind=LK), intent(in) :: escape_solidus if the solidus (forward slash)\nis also to be escaped Calls proc~~escape_string~~CallsGraph proc~escape_string escape_string proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~escape_string~~CalledByGraph proc~escape_string escape_string proc~json_get_string json_core%json_get_string proc~json_get_string->proc~escape_string proc~json_value_print json_core%json_value_print proc~json_value_print->proc~escape_string proc~json_value_print->proc~json_value_print proc~json_is_vector json_core%json_is_vector proc~json_value_print->proc~json_is_vector none~get~2 json_core%get none~get~2->proc~json_get_string proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_replace->none~insert_after proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine escape_string ( str_in , str_out , escape_solidus ) implicit none character ( kind = CK , len =* ), intent ( in ) :: str_in character ( kind = CK , len = :), allocatable , intent ( out ) :: str_out logical ( LK ), intent ( in ) :: escape_solidus !! if the solidus (forward slash) !! is also to be escaped integer ( IK ) :: i !! counter integer ( IK ) :: ipos !! accumulated string size !! (so we can allocate it in chunks for !! greater runtime efficiency) character ( kind = CK , len = 1 ) :: c !! for reading `str_in` one character at a time. #if defined __GFORTRAN__ character ( kind = CK , len = :), allocatable :: tmp !! workaround for bug in gfortran 6.1 #endif logical :: to_be_escaped !! if there are characters to be escaped character ( kind = CK , len =* ), parameter :: specials_no_slash = quotation_mark // & backslash // & bspace // & formfeed // & newline // & carriage_return // & horizontal_tab character ( kind = CK , len =* ), parameter :: specials = specials_no_slash // slash !Do a quick scan for the special characters, ! if any are present, then process the string, ! otherwise, return the string as is. if ( escape_solidus ) then to_be_escaped = scan ( str_in , specials ) > 0 else to_be_escaped = scan ( str_in , specials_no_slash ) > 0 end if if ( to_be_escaped ) then str_out = repeat ( space , chunk_size ) ipos = 1 !go through the string and look for special characters: do i = 1 , len ( str_in ) c = str_in ( i : i ) !get next character in the input string !if the string is not big enough, then add another chunk: if ( ipos + 3 > len ( str_out )) str_out = str_out // blank_chunk select case ( c ) case ( backslash ) !test for unicode sequence: '\\uXXXX' ![don't add an extra '\\' for those] if ( i + 5 <= len ( str_in )) then if ( str_in ( i + 1 : i + 1 ) == CK_ 'u' . and . & valid_json_hex ( str_in ( i + 2 : i + 5 ))) then str_out ( ipos : ipos ) = c ipos = ipos + 1 cycle end if end if str_out ( ipos : ipos + 1 ) = backslash // c ipos = ipos + 2 case ( quotation_mark ) str_out ( ipos : ipos + 1 ) = backslash // c ipos = ipos + 2 case ( slash ) if ( escape_solidus ) then str_out ( ipos : ipos + 1 ) = backslash // c ipos = ipos + 2 else str_out ( ipos : ipos ) = c ipos = ipos + 1 end if case ( bspace ) str_out ( ipos : ipos + 1 ) = '\\b' ipos = ipos + 2 case ( formfeed ) str_out ( ipos : ipos + 1 ) = '\\f' ipos = ipos + 2 case ( newline ) str_out ( ipos : ipos + 1 ) = '\\n' ipos = ipos + 2 case ( carriage_return ) str_out ( ipos : ipos + 1 ) = '\\r' ipos = ipos + 2 case ( horizontal_tab ) str_out ( ipos : ipos + 1 ) = '\\t' ipos = ipos + 2 case default str_out ( ipos : ipos ) = c ipos = ipos + 1 end select end do !trim the string if necessary: if ( ipos < len ( str_out ) + 1 ) then if ( ipos == 1 ) then str_out = CK_ '' else #if defined __GFORTRAN__ tmp = str_out ( 1 : ipos - 1 ) !workaround for bug in gfortran 6.1 str_out = tmp #else str_out = str_out ( 1 : ipos - 1 ) !original #endif end if end if else str_out = str_in end if end subroutine escape_string","tags":"","loc":"proc/escape_string.html"},{"title":"integer_to_string – JSON-Fortran","text":"public pure subroutine integer_to_string(ival, int_fmt, str) Convert an integer to a string. Arguments Type Intent Optional Attributes Name integer(kind=IK), intent(in) :: ival integer value. character(kind=CDK, len=*), intent(in) :: int_fmt format for integers character(kind=CK, len=*), intent(out) :: str ival converted to a string. Called by proc~~integer_to_string~~CalledByGraph proc~integer_to_string integer_to_string proc~annotate_invalid_json json_core%annotate_invalid_json proc~annotate_invalid_json->proc~integer_to_string proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_path json_core%json_get_path proc~json_get_path->proc~integer_to_string none~info~2 json_core%info proc~json_get_path->none~info~2 proc~json_get_string json_core%json_get_string proc~json_get_string->proc~integer_to_string proc~json_initialize json_core%json_initialize proc~json_initialize->proc~integer_to_string proc~json_value_print json_core%json_value_print proc~json_value_print->proc~integer_to_string proc~json_value_print->proc~json_value_print proc~json_is_vector json_core%json_is_vector proc~json_value_print->proc~json_is_vector proc~push_char json_core%push_char proc~push_char->proc~integer_to_string none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get_path json_core%get_path none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~get~2 json_core%get none~get~2->proc~json_get_by_path none~get~2->proc~json_get_string proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~initialize_json_core initialize_json_core proc~initialize_json_core->proc~json_initialize proc~initialize_json_core_in_file json_file%initialize_json_core_in_file proc~initialize_json_core_in_file->proc~json_initialize proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~annotate_invalid_json proc~json_parse_file->proc~json_initialize proc~parse_value json_core%parse_value proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~annotate_invalid_json proc~json_parse_string->proc~json_initialize proc~json_parse_string->proc~parse_value proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~parse_number json_core%parse_number proc~parse_number->proc~push_char proc~parse_value->proc~push_char proc~parse_value->proc~parse_number proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object interface~json_core json_core interface~json_core->proc~initialize_json_core none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~initialize json_file%initialize none~initialize->proc~initialize_json_core_in_file none~load~2 json_core%load none~load~2->proc~json_parse_file proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_value_replace json_core%json_value_replace proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_path none~get_child json_core%get_child proc~json_check_children_for_duplicate_keys->none~get_child proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_path->none~get_path proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~initialize_json_file initialize_json_file proc~initialize_json_file->none~initialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~initialize none~deserialize json_file%deserialize proc~initialize_json_file_from_string->none~deserialize proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~json_file_move_pointer json_file%json_file_move_pointer proc~json_file_move_pointer->none~initialize proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_parse_string->none~deserialize~2 interface~json_file json_file interface~json_file->proc~initialize_json_file interface~json_file->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~convert json_core%convert proc~convert->none~info~2 proc~convert->proc~json_value_replace proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901->none~get_child proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string_v2->none~deserialize proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_file_load_from_string->none~deserialize proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_value_replace->none~insert_after proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure subroutine integer_to_string ( ival , int_fmt , str ) implicit none integer ( IK ), intent ( in ) :: ival !! integer value. character ( kind = CDK , len =* ), intent ( in ) :: int_fmt !! format for integers character ( kind = CK , len =* ), intent ( out ) :: str !! `ival` converted to a string. integer ( IK ) :: istat write ( str , fmt = int_fmt , iostat = istat ) ival if ( istat == 0 ) then str = adjustl ( str ) else str = repeat ( star , len ( str )) end if end subroutine integer_to_string","tags":"","loc":"proc/integer_to_string.html"},{"title":"real_to_string – JSON-Fortran","text":"public subroutine real_to_string(rval, real_fmt, compact_real, non_normals_to_null, str) Convert a real value to a string. Modified Izaak Beekman : 02/24/2015 : added the compact option. Jacob Williams : 10/27/2015 : added the star option. Jacob Williams : 07/07/2019 : added null and ieee options. Arguments Type Intent Optional Attributes Name real(kind=RK), intent(in) :: rval real value. character(kind=CDK, len=*), intent(in) :: real_fmt format for real numbers logical(kind=LK), intent(in) :: compact_real compact the string so that it is\ndisplayed with fewer characters logical(kind=LK), intent(in) :: non_normals_to_null If True, NaN, Infinity, or -Infinity are returned as null .\nIf False, the string value will be returned in quotes\n(e.g., “NaN”, “Infinity”, or “-Infinity” ) character(kind=CK, len=*), intent(out) :: str rval converted to a string. Calls proc~~real_to_string~~CallsGraph proc~real_to_string real_to_string proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~real_to_string~~CalledByGraph proc~real_to_string real_to_string proc~json_get_string json_core%json_get_string proc~json_get_string->proc~real_to_string proc~json_value_print json_core%json_value_print proc~json_value_print->proc~real_to_string proc~json_value_print->proc~json_value_print proc~json_is_vector json_core%json_is_vector proc~json_value_print->proc~json_is_vector none~get~2 json_core%get none~get~2->proc~json_get_string proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_replace->none~insert_after proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine real_to_string ( rval , real_fmt , compact_real , non_normals_to_null , str ) implicit none real ( RK ), intent ( in ) :: rval !! real value. character ( kind = CDK , len =* ), intent ( in ) :: real_fmt !! format for real numbers logical ( LK ), intent ( in ) :: compact_real !! compact the string so that it is !! displayed with fewer characters logical ( LK ), intent ( in ) :: non_normals_to_null !! If True, NaN, Infinity, or -Infinity are returned as `null`. !! If False, the string value will be returned in quotes !! (e.g., \"NaN\", \"Infinity\", or \"-Infinity\" ) character ( kind = CK , len =* ), intent ( out ) :: str !! `rval` converted to a string. integer ( IK ) :: istat !! write `iostat` flag if ( ieee_is_finite ( rval ) . and . . not . ieee_is_nan ( rval )) then ! normal real numbers if ( real_fmt == star ) then write ( str , fmt =* , iostat = istat ) rval else write ( str , fmt = real_fmt , iostat = istat ) rval end if if ( istat == 0 ) then !in this case, the default string will be compacted, ! so that the same value is displayed with fewer characters. if ( compact_real ) call compact_real_string ( str ) else str = repeat ( star , len ( str )) ! error end if else ! special cases for NaN, Infinity, and -Infinity if ( non_normals_to_null ) then ! return it as a JSON null value str = null_str else ! Let the compiler do the real to string conversion ! like before, but put the result in quotes so it ! gets printed as a string write ( str , fmt =* , iostat = istat ) rval if ( istat == 0 ) then str = quotation_mark // trim ( adjustl ( str )) // quotation_mark else str = repeat ( star , len ( str )) ! error end if end if end if end subroutine real_to_string","tags":"","loc":"proc/real_to_string.html"},{"title":"replace_string – JSON-Fortran","text":"public pure subroutine replace_string(str, s1, s2) Replace all occurrences of s1 in str with s2 . A case-sensitive match is used. Note str must be allocated. Arguments Type Intent Optional Attributes Name character(kind=CK, len=:), intent(inout), allocatable :: str character(kind=CK, len=*), intent(in) :: s1 character(kind=CK, len=*), intent(in) :: s2 Called by proc~~replace_string~~CalledByGraph proc~replace_string replace_string proc~decode_rfc6901 decode_rfc6901 proc~decode_rfc6901->proc~replace_string proc~encode_rfc6901 encode_rfc6901 proc~encode_rfc6901->proc~replace_string proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 none~get_child json_core%get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->proc~encode_rfc6901 none~info~2 json_core%info proc~json_get_path->none~info~2 none~get_path json_core%get_path none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_path proc~json_check_children_for_duplicate_keys->none~get_child proc~wrap_json_get_path->none~get_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure subroutine replace_string ( str , s1 , s2 ) implicit none character ( kind = CK , len = :), allocatable , intent ( inout ) :: str character ( kind = CK , len =* ), intent ( in ) :: s1 character ( kind = CK , len =* ), intent ( in ) :: s2 character ( kind = CK , len = :), allocatable :: tmp !! temporary string for accumulating result integer ( IK ) :: i !! counter integer ( IK ) :: n !! for accumulating the string integer ( IK ) :: ilen !! length of `str` string integer ( IK ) :: ilen1 !! length of `s1` string if ( len ( str ) > 0 ) then tmp = CK_ '' ! initialize ilen1 = len ( s1 ) ! . ! '123ab789' do ilen = len ( str ) i = index ( str , s1 ) if ( i > 0 ) then if ( i > 1 ) tmp = tmp // str ( 1 : i - 1 ) tmp = tmp // s2 ! replace s1 with s2 in new string n = i + ilen1 ! start of remainder of str to keep if ( n <= ilen ) then str = str ( n : ilen ) else ! done exit end if else ! done: get remainder of string tmp = tmp // str exit end if end do str = tmp end if end subroutine replace_string","tags":"","loc":"proc/replace_string.html"},{"title":"string_to_integer – JSON-Fortran","text":"public subroutine string_to_integer(str, ival, status_ok) Convert a string into an integer. History Jacob Williams : 12/10/2013 : Rewrote original parse_integer routine.\n Added error checking. Modified by Izaak Beekman Jacob Williams : 2/4/2017 : moved core logic to this routine. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str the string to convert to an integer integer(kind=IK), intent(out) :: ival the integer value logical(kind=LK), intent(out) :: status_ok true if there were no errors Called by proc~~string_to_integer~~CalledByGraph proc~string_to_integer string_to_integer proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->proc~string_to_integer none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~json_get_integer json_core%json_get_integer proc~json_get_integer->proc~string_to_integer proc~string_to_int json_core%string_to_int proc~string_to_int->proc~string_to_integer none~get~2 json_core%get none~get~2->proc~json_get_integer proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~parse_number json_core%parse_number proc~parse_number->proc~string_to_int none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~parse_value json_core%parse_value proc~parse_value->proc~parse_number proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_value_replace json_core%json_value_replace proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~wrap_json_create_by_path->none~create none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~convert->none~info~2 proc~convert->proc~json_value_replace proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine string_to_integer ( str , ival , status_ok ) implicit none character ( kind = CK , len =* ), intent ( in ) :: str !! the string to convert to an integer integer ( IK ), intent ( out ) :: ival !! the integer value logical ( LK ), intent ( out ) :: status_ok !! true if there were no errors character ( kind = CDK , len = :), allocatable :: digits integer ( IK ) :: ndigits_digits , ndigits , ierr ! Compute how many digits we need to read ndigits = 2 * len_trim ( str ) if ( ndigits /= 0 ) then ndigits_digits = nint ( log10 ( real ( ndigits ))) + 1 allocate ( character ( kind = CDK , len = ndigits_digits ) :: digits ) write ( digits , '(I0)' ) ndigits !gfortran will have a runtime error with * edit descriptor here ! gfortran bug: '*' edit descriptor for ISO_10646 strings does bad stuff. read ( str , '(I' // trim ( digits ) // ')' , iostat = ierr ) ival !string to integer ! error check: status_ok = ( ierr == 0 ) else status_ok = . false . end if if (. not . status_ok ) ival = 0_IK end subroutine string_to_integer","tags":"","loc":"proc/string_to_integer.html"},{"title":"string_to_real – JSON-Fortran","text":"public subroutine string_to_real(str, use_quiet_nan, rval, status_ok) Convert a string into a real(RK) . History Jacob Williams, 10/27/2015 : Now using fmt=* , rather than fmt=real_fmt , since it doesn’t work for some unusual cases\n (e.g., when str='1E-5' ). Jacob Williams : 2/6/2017 : moved core logic to this routine. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str the string to convert to a real logical(kind=LK), intent(in) :: use_quiet_nan if true, return NaN’s as ieee_quiet_nan .\notherwise, use ieee_signaling_nan . real(kind=RK), intent(out) :: rval str converted to a real value logical(kind=LK), intent(out) :: status_ok true if there were no errors Called by proc~~string_to_real~~CalledByGraph proc~string_to_real string_to_real proc~json_get_real json_core%json_get_real proc~json_get_real->proc~string_to_real proc~string_to_dble json_core%string_to_dble proc~string_to_dble->proc~string_to_real none~get~2 json_core%get none~get~2->proc~json_get_real proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~parse_number json_core%parse_number proc~parse_number->proc~string_to_dble proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~parse_value json_core%parse_value proc~parse_value->proc~parse_number proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_parse_string->none~deserialize~2 none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine string_to_real ( str , use_quiet_nan , rval , status_ok ) implicit none character ( kind = CK , len =* ), intent ( in ) :: str !! the string to convert to a real logical ( LK ), intent ( in ) :: use_quiet_nan !! if true, return NaN's as `ieee_quiet_nan`. !! otherwise, use `ieee_signaling_nan`. real ( RK ), intent ( out ) :: rval !! `str` converted to a real value logical ( LK ), intent ( out ) :: status_ok !! true if there were no errors integer ( IK ) :: ierr !! read iostat error code read ( str , fmt =* , iostat = ierr ) rval status_ok = ( ierr == 0 ) if (. not . status_ok ) then rval = 0.0_RK else if ( ieee_support_nan ( rval )) then if ( ieee_is_nan ( rval )) then ! make sure to return the correct NaN if ( use_quiet_nan ) then rval = ieee_value ( rval , ieee_quiet_nan ) else rval = ieee_value ( rval , ieee_signaling_nan ) end if end if end if end if end subroutine string_to_real","tags":"","loc":"proc/string_to_real.html"},{"title":"unescape_string – JSON-Fortran","text":"public subroutine unescape_string(str, error_message) Remove the escape characters from a JSON string and return it. The escaped characters are denoted by the \\ character: \\\" - quotation mark \\\\ - reverse solidus \\/ - solidus \\b - backspace \\f - formfeed \\n - newline (LF) \\r - carriage return (CR) \\t - horizontal tab \\uXXXX - 4 hexadecimal digits Arguments Type Intent Optional Attributes Name character(kind=CK, len=:), intent(inout), allocatable :: str in: string as stored\n in a json_value . out: decoded string. character(kind=CK, len=:), intent(out), allocatable :: error_message will be allocated if\nthere was an error Calls proc~~unescape_string~~CallsGraph proc~unescape_string unescape_string proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~unescape_string~~CalledByGraph proc~unescape_string unescape_string proc~parse_string json_core%parse_string proc~parse_string->proc~unescape_string proc~parse_object json_core%parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~parse_object proc~parse_value json_core%parse_value proc~parse_object->proc~parse_value proc~parse_value->proc~parse_string proc~parse_value->proc~parse_object proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine unescape_string ( str , error_message ) implicit none character ( kind = CK , len = :), allocatable , intent ( inout ) :: str !! * in: string as stored !! in a [[json_value]]. !! * out: decoded string. character ( kind = CK , len = :), allocatable , intent ( out ) :: error_message !! will be allocated if !! there was an error integer :: i !! counter integer :: n !! length of `str` integer :: m !! length of `str_tmp` character ( kind = CK , len = 1 ) :: c !! for scanning each character in string character ( kind = CK , len = :), allocatable :: str_tmp !! temp decoded string (if the input !! string contains an escape character !! and needs to be decoded). if ( scan ( str , backslash ) > 0 ) then !there is at least one escape character, so process this string: n = len ( str ) str_tmp = repeat ( space , n ) !size the output string (will be trimmed later) m = 0 !counter in str_tmp i = 0 !counter in str do i = i + 1 if ( i > n ) exit ! finished c = str ( i : i ) ! get next character in the string if ( c == backslash ) then if ( i < n ) then i = i + 1 c = str ( i : i ) !character after the escape select case ( c ) case ( quotation_mark , backslash , slash ) !use d as is m = m + 1 str_tmp ( m : m ) = c case ( CK_ 'b' ) c = bspace m = m + 1 str_tmp ( m : m ) = c case ( CK_ 'f' ) c = formfeed m = m + 1 str_tmp ( m : m ) = c case ( CK_ 'n' ) c = newline m = m + 1 str_tmp ( m : m ) = c case ( CK_ 'r' ) c = carriage_return m = m + 1 str_tmp ( m : m ) = c case ( CK_ 't' ) c = horizontal_tab m = m + 1 str_tmp ( m : m ) = c case ( CK_ 'u' ) ! expecting 4 hexadecimal digits after ! the escape character [\\uXXXX] !for now, we are just returning them as is ![not checking to see if it is a valid hex value] ! ! Example: ! 123456 ! \\uXXXX if ( i + 4 <= n ) then ! validate the hex string: if ( valid_json_hex ( str ( i + 1 : i + 4 ))) then m = m + 1 str_tmp ( m : m + 5 ) = str ( i - 1 : i + 4 ) i = i + 4 m = m + 5 else error_message = 'Error in unescape_string:' // & ' Invalid hexadecimal sequence in string \"' // & trim ( str ) // '\" [' // str ( i - 1 : i + 4 ) // ']' if ( allocated ( str_tmp )) deallocate ( str_tmp ) return end if else error_message = 'Error in unescape_string:' // & ' Invalid hexadecimal sequence in string \"' // & trim ( str ) // '\" [' // str ( i - 1 :) // ']' if ( allocated ( str_tmp )) deallocate ( str_tmp ) return end if case default !unknown escape character error_message = 'Error in unescape_string:' // & ' unknown escape sequence in string \"' // & trim ( str ) // '\" [' // backslash // c // ']' if ( allocated ( str_tmp )) deallocate ( str_tmp ) return end select else ! an escape character is the last character in ! the string. This is an error. error_message = 'Error in unescape_string:' // & ' invalid escape character in string \"' // & trim ( str ) // '\"' if ( allocated ( str_tmp )) deallocate ( str_tmp ) return end if else m = m + 1 str_tmp ( m : m ) = c end if end do !trim trailing space: str = str_tmp ( 1 : m ) end if end subroutine unescape_string","tags":"","loc":"proc/unescape_string.html"},{"title":"operator(//) – JSON-Fortran","text":"public interface operator(//) Provide a means to convert to UCS4 while\nconcatenating UCS4 and default strings Calls interface~~operator(SLASHSLASH)~~CallsGraph interface~operator(SLASHSLASH) operator(//) proc~default_join_ucs4 default_join_ucs4 interface~operator(SLASHSLASH)->proc~default_join_ucs4 proc~ucs4_join_default ucs4_join_default interface~operator(SLASHSLASH)->proc~ucs4_join_default interface~to_unicode to_unicode proc~default_join_ucs4->interface~to_unicode proc~ucs4_join_default->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Module Procedures private pure function ucs4_join_default (ucs4_str, def_str) result(res) Author Izaak Beekman CK // CDK operator. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: ucs4_str character(kind=CDK, len=*), intent(in) :: def_str Return Value character(kind=CK, len=len=(len(ucs4_str)+len(def_str))) private pure function default_join_ucs4 (def_str, ucs4_str) result(res) Author Izaak Beekman CDK // CK operator. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: def_str character(kind=CK, len=*), intent(in) :: ucs4_str Return Value character(kind=CK, len=len=(len(def_str)+len(ucs4_str)))","tags":"","loc":"interface/operator(SLASHSLASH).html"},{"title":"operator(/=) – JSON-Fortran","text":"public interface operator(/=) Provide a string /= operator that works\nwith mixed kinds Calls interface~~operator(SLASH=)~~CallsGraph interface~operator(SLASH=) operator(/=) proc~default_neq_ucs4 default_neq_ucs4 interface~operator(SLASH=)->proc~default_neq_ucs4 proc~ucs4_neq_default ucs4_neq_default interface~operator(SLASH=)->proc~ucs4_neq_default interface~to_unicode to_unicode proc~default_neq_ucs4->interface~to_unicode proc~ucs4_neq_default->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Module Procedures private pure elemental function ucs4_neq_default (ucs4_str, def_str) result(res) Author Jacob Williams CK /= CDK operator. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: ucs4_str character(kind=CDK, len=*), intent(in) :: def_str Return Value logical(kind=LK) private pure elemental function default_neq_ucs4 (def_str, ucs4_str) result(res) Author Jacob Williams CDK /= CK operator. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: def_str character(kind=CK, len=*), intent(in) :: ucs4_str Return Value logical(kind=LK)","tags":"","loc":"interface/operator(SLASH=).html"},{"title":"operator(==) – JSON-Fortran","text":"public interface operator(==) Provide a string == operator that works\nwith mixed kinds Calls interface~~operator(==)~~CallsGraph interface~operator(==) operator(==) proc~default_comp_ucs4 default_comp_ucs4 interface~operator(==)->proc~default_comp_ucs4 proc~ucs4_comp_default ucs4_comp_default interface~operator(==)->proc~ucs4_comp_default interface~to_unicode to_unicode proc~default_comp_ucs4->interface~to_unicode proc~ucs4_comp_default->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Module Procedures private pure elemental function ucs4_comp_default (ucs4_str, def_str) result(res) Author Izaak Beekman CK == CDK operator. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: ucs4_str character(kind=CDK, len=*), intent(in) :: def_str Return Value logical(kind=LK) private pure elemental function default_comp_ucs4 (def_str, ucs4_str) result(res) Author Izaak Beekman CDK == CK operator. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: def_str character(kind=CK, len=*), intent(in) :: ucs4_str Return Value logical(kind=LK)","tags":"","loc":"interface/operator(==).html"},{"title":"to_unicode – JSON-Fortran","text":"public interface to_unicode Convert a ‘DEFAULT’ kind character input to\n‘ISO_10646’ kind and return it Calls interface~~to_unicode~~CallsGraph interface~to_unicode to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by interface~~to_unicode~~CalledByGraph interface~to_unicode to_unicode proc~default_comp_ucs4 default_comp_ucs4 proc~default_comp_ucs4->interface~to_unicode proc~default_join_ucs4 default_join_ucs4 proc~default_join_ucs4->interface~to_unicode proc~default_neq_ucs4 default_neq_ucs4 proc~default_neq_ucs4->interface~to_unicode proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->interface~to_unicode none~create_object json_core%create_object proc~json_file_add_string_path_ascii->none~create_object proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->interface~to_unicode proc~json_file_add_string_value_ascii->none~create_object proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->interface~to_unicode proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->interface~to_unicode proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_rename_name_ascii json_file%json_file_rename_name_ascii proc~json_file_rename_name_ascii->interface~to_unicode proc~json_file_rename_path_ascii json_file%json_file_rename_path_ascii proc~json_file_rename_path_ascii->interface~to_unicode proc~json_file_update_string_name_ascii json_file%json_file_update_string_name_ascii proc~json_file_update_string_name_ascii->interface~to_unicode none~update~2 json_file%update proc~json_file_update_string_name_ascii->none~update~2 proc~json_file_update_string_val_ascii json_file%json_file_update_string_val_ascii proc~json_file_update_string_val_ascii->interface~to_unicode proc~json_file_update_string_val_ascii->none~update~2 proc~json_rename_by_path_name_ascii json_core%json_rename_by_path_name_ascii proc~json_rename_by_path_name_ascii->interface~to_unicode proc~json_rename_by_path_path_ascii json_core%json_rename_by_path_path_ascii proc~json_rename_by_path_path_ascii->interface~to_unicode proc~json_update_string_name_ascii json_core%json_update_string_name_ascii proc~json_update_string_name_ascii->interface~to_unicode none~update~4 json_core%update proc~json_update_string_name_ascii->none~update~4 proc~json_update_string_val_ascii json_core%json_update_string_val_ascii proc~json_update_string_val_ascii->interface~to_unicode proc~json_update_string_val_ascii->none~update~4 proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii proc~json_value_add_string_name_ascii->interface~to_unicode none~add~4 json_core%add proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~ucs4_comp_default ucs4_comp_default proc~ucs4_comp_default->interface~to_unicode proc~ucs4_join_default ucs4_join_default proc~ucs4_join_default->interface~to_unicode proc~ucs4_neq_default ucs4_neq_default proc~ucs4_neq_default->interface~to_unicode proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->interface~to_unicode proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string->interface~to_unicode proc~initialize_json_file_from_string initialize_json_file_from_string proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string_v2->interface~to_unicode proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->interface~to_unicode proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->interface~to_unicode proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->interface~to_unicode proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->interface~to_unicode proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->interface~to_unicode proc~json_add_member_by_path json_core%json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->interface~to_unicode none~add_by_path~2 json_core%add_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->interface~to_unicode proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->interface~to_unicode proc~json_add_real_by_path json_core%json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->interface~to_unicode proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->interface~to_unicode proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->interface~to_unicode proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path proc~wrap_json_create_by_path->interface~to_unicode none~create json_core%create proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->interface~to_unicode proc~json_file_add_integer json_file%json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->interface~to_unicode proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->interface~to_unicode proc~json_file_add_logical json_file%json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->interface~to_unicode proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->interface~to_unicode proc~json_file_add_object json_file%json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->interface~to_unicode proc~json_file_add_real json_file%json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->interface~to_unicode proc~json_file_add_real32 json_file%json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->interface~to_unicode proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->interface~to_unicode proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->interface~to_unicode proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->interface~to_unicode proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_alloc_string_vec->interface~to_unicode none~get json_file%get proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer proc~wrap_json_file_get_integer->interface~to_unicode proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec proc~wrap_json_file_get_integer_vec->interface~to_unicode proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical proc~wrap_json_file_get_logical->interface~to_unicode proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec proc~wrap_json_file_get_logical_vec->interface~to_unicode proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object json_file%wrap_json_file_get_object proc~wrap_json_file_get_object->interface~to_unicode proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real json_file%wrap_json_file_get_real proc~wrap_json_file_get_real->interface~to_unicode proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 proc~wrap_json_file_get_real32->interface~to_unicode proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec proc~wrap_json_file_get_real32_vec->interface~to_unicode proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec proc~wrap_json_file_get_real_vec->interface~to_unicode proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string json_file%wrap_json_file_get_string proc~wrap_json_file_get_string->interface~to_unicode proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec proc~wrap_json_file_get_string_vec->interface~to_unicode proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string proc~wrap_json_file_load_from_string->interface~to_unicode none~deserialize json_file%deserialize proc~wrap_json_file_load_from_string->none~deserialize proc~wrap_json_file_remove json_file%wrap_json_file_remove proc~wrap_json_file_remove->interface~to_unicode none~remove json_file%remove proc~wrap_json_file_remove->none~remove proc~wrap_json_file_rename json_file%wrap_json_file_rename proc~wrap_json_file_rename->interface~to_unicode proc~wrap_json_file_update_integer json_file%wrap_json_file_update_integer proc~wrap_json_file_update_integer->interface~to_unicode proc~wrap_json_file_update_integer->none~update~2 proc~wrap_json_file_update_logical json_file%wrap_json_file_update_logical proc~wrap_json_file_update_logical->interface~to_unicode proc~wrap_json_file_update_logical->none~update~2 proc~wrap_json_file_update_real json_file%wrap_json_file_update_real proc~wrap_json_file_update_real->interface~to_unicode proc~wrap_json_file_update_real->none~update~2 proc~wrap_json_file_update_real32 json_file%wrap_json_file_update_real32 proc~wrap_json_file_update_real32->interface~to_unicode proc~wrap_json_file_update_real32->none~update~2 proc~wrap_json_file_update_string json_file%wrap_json_file_update_string proc~wrap_json_file_update_string->interface~to_unicode proc~wrap_json_file_update_string->none~update~2 proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path proc~wrap_json_file_valid_path->interface~to_unicode none~valid_path json_file%valid_path proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_valid_path_op json_file%wrap_json_file_valid_path_op proc~wrap_json_file_valid_path_op->interface~to_unicode proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info proc~wrap_json_file_variable_info->interface~to_unicode none~info json_file%info proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info->interface~to_unicode none~matrix_info json_file%matrix_info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode none~get~2 json_core%get proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path json_core%wrap_json_get_by_path proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_path json_core%wrap_json_get_path proc~wrap_json_get_path->interface~to_unicode none~get_path json_core%get_path proc~wrap_json_get_path->none~get_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_info_by_path json_core%wrap_json_info_by_path proc~wrap_json_info_by_path->interface~to_unicode none~info~2 json_core%info proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path proc~wrap_json_matrix_info_by_path->interface~to_unicode none~matrix_info~2 json_core%matrix_info proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_parse_string json_core%wrap_json_parse_string proc~wrap_json_parse_string->interface~to_unicode none~deserialize~2 json_core%deserialize proc~wrap_json_parse_string->none~deserialize~2 proc~wrap_json_rename_by_path json_core%wrap_json_rename_by_path proc~wrap_json_rename_by_path->interface~to_unicode proc~wrap_json_throw_exception json_core%wrap_json_throw_exception proc~wrap_json_throw_exception->interface~to_unicode none~throw_exception json_core%throw_exception proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_update_integer json_core%wrap_json_update_integer proc~wrap_json_update_integer->interface~to_unicode proc~wrap_json_update_integer->none~update~4 proc~wrap_json_update_logical json_core%wrap_json_update_logical proc~wrap_json_update_logical->interface~to_unicode proc~wrap_json_update_logical->none~update~4 proc~wrap_json_update_real json_core%wrap_json_update_real proc~wrap_json_update_real->interface~to_unicode proc~wrap_json_update_real->none~update~4 proc~wrap_json_update_real32 json_core%wrap_json_update_real32 proc~wrap_json_update_real32->interface~to_unicode proc~wrap_json_update_real32->none~update~4 proc~wrap_json_update_string json_core%wrap_json_update_string proc~wrap_json_update_string->interface~to_unicode proc~wrap_json_update_string->none~update~4 proc~wrap_json_valid_path json_core%wrap_json_valid_path proc~wrap_json_valid_path->interface~to_unicode none~valid_path~2 json_core%valid_path proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_add_integer json_core%wrap_json_value_add_integer proc~wrap_json_value_add_integer->interface~to_unicode proc~wrap_json_value_add_integer->none~add~4 proc~wrap_json_value_add_integer_vec json_core%wrap_json_value_add_integer_vec proc~wrap_json_value_add_integer_vec->interface~to_unicode proc~wrap_json_value_add_integer_vec->none~add~4 proc~wrap_json_value_add_logical json_core%wrap_json_value_add_logical proc~wrap_json_value_add_logical->interface~to_unicode proc~wrap_json_value_add_logical->none~add~4 proc~wrap_json_value_add_logical_vec json_core%wrap_json_value_add_logical_vec proc~wrap_json_value_add_logical_vec->interface~to_unicode proc~wrap_json_value_add_logical_vec->none~add~4 proc~wrap_json_value_add_null json_core%wrap_json_value_add_null proc~wrap_json_value_add_null->interface~to_unicode proc~wrap_json_value_add_null->none~add~4 proc~wrap_json_value_add_real json_core%wrap_json_value_add_real proc~wrap_json_value_add_real->interface~to_unicode proc~wrap_json_value_add_real->none~add~4 proc~wrap_json_value_add_real32 json_core%wrap_json_value_add_real32 proc~wrap_json_value_add_real32->interface~to_unicode proc~wrap_json_value_add_real32->none~add~4 proc~wrap_json_value_add_real32_vec json_core%wrap_json_value_add_real32_vec proc~wrap_json_value_add_real32_vec->interface~to_unicode proc~wrap_json_value_add_real32_vec->none~add~4 proc~wrap_json_value_add_real_vec json_core%wrap_json_value_add_real_vec proc~wrap_json_value_add_real_vec->interface~to_unicode proc~wrap_json_value_add_real_vec->none~add~4 proc~wrap_json_value_add_string json_core%wrap_json_value_add_string proc~wrap_json_value_add_string->interface~to_unicode proc~wrap_json_value_add_string->none~add~4 proc~wrap_json_value_add_string_vec json_core%wrap_json_value_add_string_vec proc~wrap_json_value_add_string_vec->interface~to_unicode proc~wrap_json_value_add_string_vec->none~add~4 proc~wrap_json_value_create_array json_core%wrap_json_value_create_array proc~wrap_json_value_create_array->interface~to_unicode none~create_array json_core%create_array proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_integer json_core%wrap_json_value_create_integer proc~wrap_json_value_create_integer->interface~to_unicode none~create_integer json_core%create_integer proc~wrap_json_value_create_integer->none~create_integer proc~wrap_json_value_create_logical json_core%wrap_json_value_create_logical proc~wrap_json_value_create_logical->interface~to_unicode none~create_logical json_core%create_logical proc~wrap_json_value_create_logical->none~create_logical proc~wrap_json_value_create_null json_core%wrap_json_value_create_null proc~wrap_json_value_create_null->interface~to_unicode none~create_null json_core%create_null proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object json_core%wrap_json_value_create_object proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~wrap_json_value_create_real json_core%wrap_json_value_create_real proc~wrap_json_value_create_real->interface~to_unicode none~create_real~2 json_core%create_real proc~wrap_json_value_create_real->none~create_real~2 proc~wrap_json_value_create_real32 json_core%wrap_json_value_create_real32 proc~wrap_json_value_create_real32->interface~to_unicode proc~wrap_json_value_create_real32->none~create_real~2 proc~wrap_json_value_create_string json_core%wrap_json_value_create_string proc~wrap_json_value_create_string->interface~to_unicode none~create_string json_core%create_string proc~wrap_json_value_create_string->none~create_string proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present proc~wrap_json_value_remove_if_present->interface~to_unicode none~remove_if_present json_core%remove_if_present proc~wrap_json_value_remove_if_present->none~remove_if_present proc~wrap_json_value_rename json_core%wrap_json_value_rename proc~wrap_json_value_rename->interface~to_unicode interface~json_file json_file interface~json_file->proc~wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string_v2 interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~initialize_json_file initialize_json_file interface~json_file->proc~initialize_json_file interface~operator(==) operator(==) interface~operator(==)->proc~default_comp_ucs4 interface~operator(==)->proc~ucs4_comp_default interface~operator(SLASH=) operator(/=) interface~operator(SLASH=)->proc~default_neq_ucs4 interface~operator(SLASH=)->proc~ucs4_neq_default interface~operator(SLASHSLASH) operator(//) interface~operator(SLASHSLASH)->proc~default_join_ucs4 interface~operator(SLASHSLASH)->proc~ucs4_join_default none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~add~4->proc~json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_val_ascii none~create->proc~wrap_json_create_by_path proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path none~create_array->proc~wrap_json_value_create_array none~create_integer->proc~wrap_json_value_create_integer none~create_logical->proc~wrap_json_value_create_logical none~create_null->proc~wrap_json_value_create_null none~create_object->proc~wrap_json_value_create_object none~create_real~2->proc~wrap_json_value_create_real32 proc~json_value_create_real32 json_core%json_value_create_real32 none~create_real~2->proc~json_value_create_real32 none~create_string->proc~wrap_json_value_create_string none~deserialize->proc~wrap_json_file_load_from_string proc~json_file_load_from_string json_file%json_file_load_from_string none~deserialize->proc~json_file_load_from_string none~deserialize~2->proc~wrap_json_parse_string proc~json_parse_string json_core%json_parse_string none~deserialize~2->proc~json_parse_string none~get->proc~wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_object none~get->proc~wrap_json_file_get_real none~get->proc~wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_string none~get->proc~wrap_json_file_get_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get->proc~json_file_get_alloc_string_vec proc~json_file_get_integer json_file%json_file_get_integer none~get->proc~json_file_get_integer proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get->proc~json_file_get_integer_vec proc~json_file_get_logical json_file%json_file_get_logical none~get->proc~json_file_get_logical proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get->proc~json_file_get_logical_vec proc~json_file_get_object json_file%json_file_get_object none~get->proc~json_file_get_object proc~json_file_get_real json_file%json_file_get_real none~get->proc~json_file_get_real proc~json_file_get_real32 json_file%json_file_get_real32 none~get->proc~json_file_get_real32 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get->proc~json_file_get_real32_vec proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get->proc~json_file_get_real_vec proc~json_file_get_string json_file%json_file_get_string none~get->proc~json_file_get_string proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get->proc~json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name none~get_path->proc~wrap_json_get_path proc~json_get_path json_core%json_get_path none~get_path->proc~json_get_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_by_path none~get~2->proc~wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path none~info->proc~wrap_json_file_variable_info proc~json_file_variable_info json_file%json_file_variable_info none~info->proc~json_file_variable_info none~info~2->proc~wrap_json_info_by_path proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info none~matrix_info->proc~json_file_variable_matrix_info none~matrix_info~2->proc~wrap_json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path none~remove->proc~wrap_json_file_remove proc~json_file_remove json_file%json_file_remove none~remove->proc~json_file_remove none~remove_if_present->proc~wrap_json_value_remove_if_present proc~json_value_remove_if_present json_core%json_value_remove_if_present none~remove_if_present->proc~json_value_remove_if_present none~throw_exception->proc~wrap_json_throw_exception none~update~2->proc~json_file_update_string_name_ascii none~update~2->proc~json_file_update_string_val_ascii none~update~4->proc~json_update_string_name_ascii none~update~4->proc~json_update_string_val_ascii none~valid_path->proc~wrap_json_file_valid_path proc~json_file_valid_path json_file%json_file_valid_path none~valid_path->proc~json_file_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_valid_path json_core%json_valid_path none~valid_path~2->proc~json_valid_path proc~assign_string_to_json_file->none~deserialize proc~convert json_core%convert proc~convert->none~create_array proc~convert->none~create_null proc~convert->none~create_object proc~convert->none~info~2 proc~convert->none~throw_exception proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~initialize_json_file_from_string->none~deserialize none~initialize json_file%initialize proc~initialize_json_file_from_string->none~initialize proc~initialize_json_file_from_string_v2->none~deserialize proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~create_integer proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->none~throw_exception proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~add~4 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~create_array proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~create_logical proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~throw_exception proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~add~4 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~create_array proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~throw_exception proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~create_real~2 proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~throw_exception proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~add~4 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~create_array proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~create_string proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~throw_exception proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child proc~json_check_children_for_duplicate_keys->none~get_path proc~json_check_children_for_duplicate_keys->none~throw_exception proc~json_count json_core%json_count proc~json_count->none~throw_exception proc~json_create_by_path->none~throw_exception proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer->none~create_object proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_integer_vec->none~create_object proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical->none~create_object proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_logical_vec->none~create_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_object->none~create_object proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real->none~create_object proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_real_vec->none~create_object proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string->none~create_object proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_add_string_vec->none~create_object proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object->none~get~2 proc~json_file_get_real->none~get~2 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec->none~get~2 proc~json_file_load_from_string->none~deserialize~2 proc~json_file_move_pointer json_file%json_file_move_pointer proc~json_file_move_pointer->none~throw_exception proc~json_file_move_pointer->none~initialize proc~json_file_print_to_unit json_file%json_file_print_to_unit proc~json_file_print_to_unit->none~throw_exception proc~json_file_remove->none~remove_if_present proc~json_file_update_integer json_file%json_file_update_integer proc~json_file_update_integer->none~update~4 proc~json_file_update_logical json_file%json_file_update_logical proc~json_file_update_logical->none~update~4 proc~json_file_update_real json_file%json_file_update_real proc~json_file_update_real->none~update~4 proc~json_file_update_real32 json_file%json_file_update_real32 proc~json_file_update_real32->none~update~2 proc~json_file_update_string json_file%json_file_update_string proc~json_file_update_string->none~update~4 proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_integer->none~throw_exception proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_next json_core%json_get_next proc~json_get_next->none~throw_exception proc~json_get_parent json_core%json_get_parent proc~json_get_parent->none~throw_exception proc~json_get_path->none~info~2 proc~json_get_path->none~throw_exception proc~json_get_previous json_core%json_get_previous proc~json_get_previous->none~throw_exception proc~json_get_real->none~throw_exception proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_string->none~throw_exception proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_tail json_core%json_get_tail proc~json_get_tail->none~throw_exception proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_initialize json_core%json_initialize proc~json_initialize->none~throw_exception proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_is_vector->none~throw_exception proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_matrix_info->none~throw_exception proc~json_matrix_info_by_path->none~get~2 proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_parse_end json_core%json_parse_end proc~json_parse_end->none~throw_exception proc~json_parse_file json_core%json_parse_file proc~json_parse_file->none~throw_exception proc~json_parse_file->proc~json_initialize proc~json_parse_file->proc~json_parse_end proc~parse_value json_core%parse_value proc~json_parse_file->proc~parse_value proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_file->proc~json_check_all_for_duplicate_keys proc~json_parse_string->none~throw_exception proc~json_parse_string->proc~json_initialize proc~json_parse_string->proc~json_parse_end proc~json_parse_string->proc~parse_value proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_print_to_filename json_core%json_print_to_filename proc~json_print_to_filename->none~throw_exception proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->none~throw_exception proc~json_value_print json_core%json_value_print proc~json_print_to_unit->proc~json_value_print proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_rename_by_path->none~throw_exception proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_traverse json_core%json_traverse proc~json_traverse->none~throw_exception proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_integer->none~throw_exception proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~throw_exception proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~throw_exception proc~json_update_real32 json_core%json_update_real32 proc~json_update_real32->none~update~4 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~throw_exception proc~json_valid_path->none~get~2 proc~json_value_add_integer json_core%json_value_add_integer proc~json_value_add_integer->none~add~4 proc~json_value_add_integer->none~create_integer proc~json_value_add_integer_vec json_core%json_value_add_integer_vec proc~json_value_add_integer_vec->none~add~4 proc~json_value_add_integer_vec->none~create_array proc~json_value_add_logical json_core%json_value_add_logical proc~json_value_add_logical->none~add~4 proc~json_value_add_logical->none~create_logical proc~json_value_add_logical_vec json_core%json_value_add_logical_vec proc~json_value_add_logical_vec->none~add~4 proc~json_value_add_logical_vec->none~create_array proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_add_member->none~throw_exception proc~json_value_add_null json_core%json_value_add_null proc~json_value_add_null->none~add~4 proc~json_value_add_null->none~create_null proc~json_value_add_real json_core%json_value_add_real proc~json_value_add_real->none~add~4 proc~json_value_add_real->none~create_real~2 proc~json_value_add_real32 json_core%json_value_add_real32 proc~json_value_add_real32->none~add~4 proc~json_value_add_real32_vec json_core%json_value_add_real32_vec proc~json_value_add_real32_vec->none~add~4 proc~json_value_add_real_vec json_core%json_value_add_real_vec proc~json_value_add_real_vec->none~add~4 proc~json_value_add_real_vec->none~create_array proc~json_value_add_string json_core%json_value_add_string proc~json_value_add_string->none~add~4 proc~json_value_add_string->none~create_string proc~json_value_add_string_vec json_core%json_value_add_string_vec proc~json_value_add_string_vec->none~add~4 proc~json_value_add_string_vec->none~create_array proc~json_value_create_real32->none~create_real~2 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_name->none~throw_exception proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_print->none~throw_exception proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~json_value_remove_if_present->none~get~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~json_value_swap json_core%json_value_swap proc~json_value_swap->none~throw_exception proc~json_value_is_child_of json_core%json_value_is_child_of proc~json_value_swap->proc~json_value_is_child_of proc~json_value_validate json_core%json_value_validate proc~json_value_validate->none~throw_exception proc~json_value_validate->proc~json_check_all_for_duplicate_keys proc~parse_array json_core%parse_array proc~parse_array->none~add~4 proc~parse_array->none~throw_exception proc~parse_array->proc~parse_value proc~parse_for_chars json_core%parse_for_chars proc~parse_for_chars->none~throw_exception proc~parse_object json_core%parse_object proc~parse_object->none~add~4 proc~parse_object->none~throw_exception proc~parse_object->proc~parse_object proc~parse_string json_core%parse_string proc~parse_object->proc~parse_string proc~parse_object->proc~parse_value proc~parse_string->none~throw_exception proc~parse_value->none~throw_exception proc~parse_value->proc~parse_array proc~parse_value->proc~parse_for_chars proc~parse_value->proc~parse_object proc~parse_value->proc~parse_string proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~push_char->none~throw_exception proc~string_to_dble json_core%string_to_dble proc~string_to_dble->none~throw_exception proc~string_to_int json_core%string_to_int proc~string_to_int->none~throw_exception none~insert_after->proc~json_value_insert_after_child_by_index none~load~2 json_core%load none~load~2->proc~json_parse_file none~string_info->proc~json_string_info proc~initialize_json_core initialize_json_core proc~initialize_json_core->proc~json_initialize proc~initialize_json_core_in_file json_file%initialize_json_core_in_file proc~initialize_json_core_in_file->proc~json_initialize proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_file_traverse json_file%json_file_traverse proc~json_file_traverse->proc~json_traverse proc~json_value_is_child_of->proc~json_traverse proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~parse_number->proc~push_char proc~parse_number->proc~string_to_dble proc~parse_number->proc~string_to_int interface~json_core json_core interface~json_core->proc~initialize_json_core none~initialize->proc~initialize_json_core_in_file proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~json_value_replace->none~insert_after proc~initialize_json_file->none~initialize Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Module Procedures private pure function to_uni (str) Author Izaak Beekman Convert string to unicode (CDK to CK). Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: str Return Value character(kind=CK, len=len) private pure function to_uni_vec (str) Author Izaak Beekman Convert array of strings to unicode (CDK to CK). Read more… Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in), dimension(:) :: str Return Value character(kind=CK, len=len), dimension(size(str))","tags":"","loc":"interface/to_unicode.html"},{"title":"initialize_json_core – JSON-Fortran","text":"private function initialize_json_core(verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) result(json_core_object) Function constructor for a json_core .\n This is just a wrapper for json_initialize . Note initialize_json_core , json_initialize , initialize_json_core_in_file , and initialize_json_file all have a similar interface. Arguments Type Intent Optional Attributes Name logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: 1 : Default mode (see json_get_by_path_default ) 2 : as RFC 6901 “ JSON Pointer” paths\n (see json_get_by_path_rfc6901 ) 3 : JSONPath “bracket-notation”\n see json_get_by_path_jsonpath_bracket ) character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys If True [default] then no special checks\n are done to check for duplicate keys. If False, then after parsing, if any duplicate\n keys are found, an error is thrown. A call to json_value_validate will also check for\n duplicates. logical(kind=LK), intent(in), optional :: escape_solidus If True then the solidus “ / ” is always escaped\n “ \\/ ” when serializing JSON If False [default], then it is not escaped. Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : 1 : an exception will be raised if\n try to retrieve a null as a real. 2 : a null retrieved as a real\n will return a NaN. [default] 3 : a null retrieved as a real\n will return 0.0. integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: 1 : as strings (e.g., “NaN”,\n “Infinity”, “-Infinity”) [default] 2 : as JSON null values logical(kind=LK), intent(in), optional :: use_quiet_nan If true [default], null_to_real_mode=2 and string_to_real will use ieee_quiet_nan for NaN values. If false, ieee_signaling_nan will be used. logical(kind=LK), intent(in), optional :: strict_integer_type_checking If false, when parsing JSON , if an integer numeric value\n cannot be converted to an integer ( integer(IK) ),\n then an attempt is then make to convert it\n to a real ( real(RK) ). If true, an exception will be raised if the integer\n value cannot be read. (default is true) logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Return Value type( json_core ) Calls proc~~initialize_json_core~~CallsGraph proc~initialize_json_core initialize_json_core proc~json_initialize json_core%json_initialize proc~initialize_json_core->proc~json_initialize none~throw_exception json_core%throw_exception proc~json_initialize->none~throw_exception proc~integer_to_string integer_to_string proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~initialize_json_core~~CalledByGraph proc~initialize_json_core initialize_json_core interface~json_core json_core interface~json_core->proc~initialize_json_core Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function initialize_json_core (& #include \"json_initialize_dummy_arguments.inc\" ) result ( json_core_object ) implicit none type ( json_core ) :: json_core_object #include \"json_initialize_arguments.inc\" call json_core_object % initialize (& #include \"json_initialize_dummy_arguments.inc\" ) end function initialize_json_core","tags":"","loc":"proc/initialize_json_core.html"},{"title":"json_count – JSON-Fortran","text":"private function json_count(json, p) result(count) Count the number of children in the object or array. History JW : 1/4/2014 : Original routine removed.\n Now using n_children variable.\n Renamed from json_value_count . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p this should normally be a json_object or a json_array . For any other variable type this will return 0. Return Value integer(kind=IK) number of children in p . Calls proc~~json_count~~CallsGraph proc~json_count json_core%json_count none~throw_exception json_core%throw_exception proc~json_count->none~throw_exception proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function json_count ( json , p ) result ( count ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! this should normally be a `json_object` !! or a `json_array`. For any other !! variable type this will return 0. integer ( IK ) :: count !! number of children in `p`. if ( associated ( p )) then count = p % n_children else call json % throw_exception ( 'Error in json_count: ' // & 'pointer is not associated.' ) end if end function json_count","tags":"","loc":"proc/json_count.html"},{"title":"json_failed – JSON-Fortran","text":"private pure function json_failed(json) result(failed) Logical function to indicate if an exception has been thrown in a json_core . Example type ( json_core ) :: json type ( json_value ), pointer :: p logical :: status_ok character ( len = :), allocatable :: error_msg call json % load ( filename = 'myfile.json' , p ) if ( json % failed ()) then call json % check_for_errors ( status_ok , error_msg ) write ( * , * ) 'Error: ' // error_msg call json % clear_exceptions () call json % destroy ( p ) end if Note that json_file contains a wrapper for this routine, which is used like: type ( json_file ) :: f logical :: status_ok character ( len = :), allocatable :: error_msg call f % load ( filename = 'myfile.json' ) if ( f % failed ()) then call f % check_for_errors ( status_ok , error_msg ) write ( * , * ) 'Error: ' // error_msg call f % clear_exceptions () call f % destroy () end if See also json_check_for_errors Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(in) :: json Return Value logical(kind=LK) will be true if an exception\nhas been thrown. Called by proc~~json_failed~~CalledByGraph proc~json_failed json_core%json_failed proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_failed proc~json_value_to_string json_core%json_value_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->proc~json_failed proc~json_file_failed json_file%json_file_failed proc~json_file_failed->proc~json_failed proc~json_file_update_integer json_file%json_file_update_integer proc~json_file_update_integer->proc~json_failed proc~json_file_update_logical json_file%json_file_update_logical proc~json_file_update_logical->proc~json_failed proc~json_file_update_real json_file%json_file_update_real proc~json_file_update_real->proc~json_failed proc~json_file_update_string json_file%json_file_update_string proc~json_file_update_string->proc~json_failed proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_failed proc~json_value_print->proc~json_value_print proc~json_value_validate json_core%json_value_validate proc~json_value_validate->proc~json_failed proc~json_file_move_pointer json_file%json_file_move_pointer proc~json_file_move_pointer->proc~json_file_failed proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string->proc~json_value_print proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure function json_failed ( json ) result ( failed ) implicit none class ( json_core ), intent ( in ) :: json logical ( LK ) :: failed !! will be true if an exception !! has been thrown. failed = json % exception_thrown end function json_failed","tags":"","loc":"proc/json_failed.html"},{"title":"json_is_vector – JSON-Fortran","text":"private function json_is_vector(json, p) result(is_vector) Returns true if all the children are the same type (and a scalar).\nNote that integers and reals are considered the same type for this purpose.\nThis routine is used for the compress_vectors option. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p Return Value logical(kind=LK) if all elements of a vector\nare scalars of the same type Calls proc~~json_is_vector~~CallsGraph proc~json_is_vector json_core%json_is_vector none~info~2 json_core%info proc~json_is_vector->none~info~2 none~throw_exception json_core%throw_exception proc~json_is_vector->none~throw_exception proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~wrap_json_info_by_path->none~info~2 interface~to_unicode to_unicode proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->none~get~2 proc~json_string_info->proc~json_clear_exceptions proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_is_vector~~CalledByGraph proc~json_is_vector json_core%json_is_vector proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function json_is_vector ( json , p ) result ( is_vector ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p logical ( LK ) :: is_vector !! if all elements of a vector !! are scalars of the same type integer ( IK ) :: var_type_prev !! for getting the variable type of children integer ( IK ) :: var_type !! for getting the variable type of children type ( json_value ), pointer :: element !! for getting children integer ( IK ) :: i !! counter integer ( IK ) :: count !! number of children integer ( IK ), parameter :: json_invalid = - 1_IK !! to initialize the flag. an invalid value integer ( IK ), parameter :: json_numeric = - 2_IK !! indicates `json_integer` or `json_real` if ( json % compress_vectors ) then ! check to see if every child is the same type, ! and a scalar: is_vector = . true . var_type_prev = json_invalid count = json % count ( p ) element => p % children do i = 1_IK , count if (. not . associated ( element )) then call json % throw_exception ( 'Error in json_is_vector: ' // & 'Malformed JSON linked list' ) return end if ! check variable type of all the children. ! They must all be the same, and a scalar. call json % info ( element , var_type = var_type ) ! special check for numeric values: if ( var_type == json_integer . or . var_type == json_real ) var_type = json_numeric if ( var_type == json_object . or . & var_type == json_array . or . & ( i > 1_IK . and . var_type /= var_type_prev )) then is_vector = . false . exit end if var_type_prev = var_type ! get the next child the list: element => element % next end do else is_vector = . false . end if end function json_is_vector","tags":"","loc":"proc/json_is_vector.html"},{"title":"json_valid_path – JSON-Fortran","text":"private function json_valid_path(json, p, path) result(found) Returns true if the path is present in the p JSON structure. Note Just a wrapper for json_get_by_path , so it uses the\n specified path_mode and other settings. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable Return Value logical(kind=LK) true if it was found Calls proc~~json_valid_path~~CallsGraph proc~json_valid_path json_core%json_valid_path none~get~2 json_core%get proc~json_valid_path->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_valid_path~~CalledByGraph proc~json_valid_path json_core%json_valid_path none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~wrap_json_valid_path->none~valid_path~2 none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~wrap_json_file_valid_path->none~valid_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function json_valid_path ( json , p , path ) result ( found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! a JSON linked list character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable logical ( LK ) :: found !! true if it was found type ( json_value ), pointer :: tmp !! pointer to the variable specified by `path` call json % get ( p , path , tmp , found ) end function json_valid_path","tags":"","loc":"proc/json_valid_path.html"},{"title":"json_value_is_child_of – JSON-Fortran","text":"private function json_value_is_child_of(json, p1, p2) result(is_child_of) Returns True if p2 is a descendant of p1 (i.e, a child, or a child of child, etc.) Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p1 type( json_value ), pointer :: p2 Return Value logical(kind=LK) Calls proc~~json_value_is_child_of~~CallsGraph proc~json_value_is_child_of json_core%json_value_is_child_of proc~json_traverse json_core%json_traverse proc~json_value_is_child_of->proc~json_traverse none~throw_exception json_core%throw_exception proc~json_traverse->none~throw_exception proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_is_child_of~~CalledByGraph proc~json_value_is_child_of json_core%json_value_is_child_of proc~json_value_swap json_core%json_value_swap proc~json_value_swap->proc~json_value_is_child_of Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function json_value_is_child_of ( json , p1 , p2 ) result ( is_child_of ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p1 type ( json_value ), pointer :: p2 logical ( LK ) :: is_child_of is_child_of = . false . if ( json % exception_thrown ) return if ( associated ( p1 ) . and . associated ( p2 )) then if ( associated ( p1 % children )) then call json % traverse ( p1 % children , is_child_of_callback ) end if end if contains subroutine is_child_of_callback ( json , p , finished ) !! Traverse until `p` is `p2`. implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p logical ( LK ), intent ( out ) :: finished is_child_of = associated ( p , p2 ) finished = is_child_of ! stop searching if found end subroutine is_child_of_callback end function json_value_is_child_of","tags":"","loc":"proc/json_value_is_child_of.html"},{"title":"name_equal – JSON-Fortran","text":"private function name_equal(json, p, name) result(is_equal) Returns true if name is equal to p%name , using the specified\n settings for case sensitivity and trailing whitespace. History 4/30/2016 : original version 8/25/2017 : now just a wrapper for name_strings_equal Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in) :: p the json object character(kind=CK, len=*), intent(in) :: name the name to check for Return Value logical(kind=LK) true if the string are\nlexically equal Calls proc~~name_equal~~CallsGraph proc~name_equal json_core%name_equal proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~name_equal~~CalledByGraph proc~name_equal json_core%name_equal proc~json_value_get_child_by_name json_core%json_value_get_child_by_name proc~json_value_get_child_by_name->proc~name_equal none~get_child json_core%get_child none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_matrix_info json_core%json_matrix_info proc~json_matrix_info->none~get_child none~info~2 json_core%info proc~json_matrix_info->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info~2 json_core%matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_matrix_info_by_path->none~get~2 proc~json_value_replace json_core%json_value_replace proc~json_value_replace->none~insert_after proc~wrap_json_matrix_info_by_path->none~matrix_info~2 none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~convert->proc~json_value_replace proc~convert->none~info~2 proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_member_by_path->none~info~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_by_path->none~info~2 proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~info~2 proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_by_path->none~info~2 proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~info~2 proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_file_variable_matrix_info->none~matrix_info none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function name_equal ( json , p , name ) result ( is_equal ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), intent ( in ) :: p !! the json object character ( kind = CK , len =* ), intent ( in ) :: name !! the name to check for logical ( LK ) :: is_equal !! true if the string are !! lexically equal if ( allocated ( p % name )) then ! call the low-level routines for the name strings: is_equal = json % name_strings_equal ( p % name , name ) else is_equal = name == CK_ '' ! check a blank name end if end function name_equal","tags":"","loc":"proc/name_equal.html"},{"title":"name_strings_equal – JSON-Fortran","text":"private function name_strings_equal(json, name1, name2) result(is_equal) Returns true if the name strings name1 is equal to name2 , using\nthe specified settings for case sensitivity and trailing whitespace. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CK, len=*), intent(in) :: name1 the name to check character(kind=CK, len=*), intent(in) :: name2 the name to check Return Value logical(kind=LK) true if the string are\nlexically equal Calls proc~~name_strings_equal~~CallsGraph proc~name_strings_equal json_core%name_strings_equal proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~name_strings_equal~~CalledByGraph proc~name_strings_equal json_core%name_strings_equal proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->proc~name_strings_equal none~get_child json_core%get_child proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~name_equal json_core%name_equal proc~name_equal->proc~name_strings_equal proc~json_value_get_child_by_name json_core%json_value_get_child_by_name proc~json_value_get_child_by_name->proc~name_equal none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_matrix_info json_core%json_matrix_info proc~json_matrix_info->none~get_child none~info~2 json_core%info proc~json_matrix_info->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info~2 json_core%matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_matrix_info_by_path->none~get~2 proc~json_value_replace json_core%json_value_replace proc~json_value_replace->none~insert_after proc~wrap_json_matrix_info_by_path->none~matrix_info~2 none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~convert->proc~json_value_replace proc~convert->none~info~2 proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_member_by_path->none~info~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_by_path->none~info~2 proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~info~2 proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_by_path->none~info~2 proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~info~2 proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_file_variable_matrix_info->none~matrix_info none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function name_strings_equal ( json , name1 , name2 ) result ( is_equal ) implicit none class ( json_core ), intent ( inout ) :: json character ( kind = CK , len =* ), intent ( in ) :: name1 !! the name to check character ( kind = CK , len =* ), intent ( in ) :: name2 !! the name to check logical ( LK ) :: is_equal !! true if the string are !! lexically equal !must be the same length if we are treating !trailing spaces as significant, so do a !quick test of this first: if ( json % trailing_spaces_significant ) then is_equal = len ( name1 ) == len ( name2 ) if (. not . is_equal ) return end if if ( json % case_sensitive_keys ) then is_equal = name1 == name2 else is_equal = lowercase_string ( name1 ) == lowercase_string ( name2 ) end if end function name_strings_equal","tags":"","loc":"proc/name_strings_equal.html"},{"title":"string_to_dble – JSON-Fortran","text":"private function string_to_dble(json, str) result(rval) Convert a string into a real(RK) value. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CK, len=*), intent(in) :: str a string Return Value real(kind=RK) str converted to a real(RK) Calls proc~~string_to_dble~~CallsGraph proc~string_to_dble json_core%string_to_dble none~throw_exception json_core%throw_exception proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~string_to_dble~~CalledByGraph proc~string_to_dble json_core%string_to_dble proc~parse_number json_core%parse_number proc~parse_number->proc~string_to_dble proc~parse_value json_core%parse_value proc~parse_value->proc~parse_number proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function string_to_dble ( json , str ) result ( rval ) implicit none class ( json_core ), intent ( inout ) :: json character ( kind = CK , len =* ), intent ( in ) :: str !! a string real ( RK ) :: rval !! `str` converted to a `real(RK)` logical ( LK ) :: status_ok !! error flag for [[string_to_real]] call string_to_real ( str , json % use_quiet_nan , rval , status_ok ) if (. not . status_ok ) then !if there was an error rval = 0.0_RK call json % throw_exception ( 'Error in string_to_dble: ' // & 'string cannot be converted to a real: ' // & trim ( str )) end if end function string_to_dble","tags":"","loc":"proc/string_to_dble.html"},{"title":"string_to_int – JSON-Fortran","text":"private function string_to_int(json, str) result(ival) Convert a string into an integer. Note Replacement for the parse_integer function in the original code. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CK, len=*), intent(in) :: str a string Return Value integer(kind=IK) str converted to an integer Calls proc~~string_to_int~~CallsGraph proc~string_to_int json_core%string_to_int none~throw_exception json_core%throw_exception proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~string_to_int~~CalledByGraph proc~string_to_int json_core%string_to_int proc~parse_number json_core%parse_number proc~parse_number->proc~string_to_int proc~parse_value json_core%parse_value proc~parse_value->proc~parse_number proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function string_to_int ( json , str ) result ( ival ) implicit none class ( json_core ), intent ( inout ) :: json character ( kind = CK , len =* ), intent ( in ) :: str !! a string integer ( IK ) :: ival !! `str` converted to an integer logical ( LK ) :: status_ok !! error flag for [[string_to_integer]] ! call the core routine: call string_to_integer ( str , ival , status_ok ) if (. not . status_ok ) then ival = 0 call json % throw_exception ( 'Error in string_to_int: ' // & 'string cannot be converted to an integer: ' // & trim ( str )) end if end function string_to_int","tags":"","loc":"proc/string_to_int.html"},{"title":"wrap_json_valid_path – JSON-Fortran","text":"private function wrap_json_valid_path(json, p, path) result(found) Alternate version of json_valid_path where “path” is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list character(kind=CDK, len=*), intent(in) :: path path to the variable Return Value logical(kind=LK) true if it was found Calls proc~~wrap_json_valid_path~~CallsGraph proc~wrap_json_valid_path json_core%wrap_json_valid_path interface~to_unicode to_unicode proc~wrap_json_valid_path->interface~to_unicode none~valid_path~2 json_core%valid_path proc~wrap_json_valid_path->none~valid_path~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~valid_path~2->proc~wrap_json_valid_path proc~json_valid_path json_core%json_valid_path none~valid_path~2->proc~json_valid_path none~get~2 json_core%get proc~json_valid_path->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_valid_path~~CalledByGraph proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2 json_core%valid_path proc~wrap_json_valid_path->none~valid_path~2 none~valid_path~2->proc~wrap_json_valid_path proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~wrap_json_file_valid_path->none~valid_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function wrap_json_valid_path ( json , p , path ) result ( found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! a JSON linked list character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable logical ( LK ) :: found !! true if it was found found = json % valid_path ( p , to_unicode ( path )) end function wrap_json_valid_path","tags":"","loc":"proc/wrap_json_valid_path.html"},{"title":"annotate_invalid_json – JSON-Fortran","text":"private subroutine annotate_invalid_json(json, iunit, str) Generate a warning message if there was an error parsing a JSON file or string. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: iunit file unit number character(kind=CK, len=*), intent(in) :: str string with JSON data Calls proc~~annotate_invalid_json~~CallsGraph proc~annotate_invalid_json json_core%annotate_invalid_json proc~get_current_line_from_file_sequential json_core%get_current_line_from_file_sequential proc~annotate_invalid_json->proc~get_current_line_from_file_sequential proc~get_current_line_from_file_stream json_core%get_current_line_from_file_stream proc~annotate_invalid_json->proc~get_current_line_from_file_stream proc~integer_to_string integer_to_string proc~annotate_invalid_json->proc~integer_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~annotate_invalid_json~~CalledByGraph proc~annotate_invalid_json json_core%annotate_invalid_json proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~annotate_invalid_json proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~annotate_invalid_json none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine annotate_invalid_json ( json , iunit , str ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: iunit !! file unit number character ( kind = CK , len =* ), intent ( in ) :: str !! string with JSON data character ( kind = CK , len = :), allocatable :: line !! line containing the error character ( kind = CK , len = :), allocatable :: arrow_str !! arrow string that points !! to the current character character ( kind = CK , len = max_integer_str_len ) :: line_str !! current line number string character ( kind = CK , len = max_integer_str_len ) :: char_str !! current character count string integer ( IK ) :: i !! line number counter integer ( IK ) :: i_nl_prev !! index of previous newline character integer ( IK ) :: i_nl !! index of current newline character ! If there was an error reading the file, then ! print the line where the error occurred: if ( json % exception_thrown ) then !the counters for the current line and the last character read: call integer_to_string ( json % line_count , int_fmt , line_str ) call integer_to_string ( json % char_count , int_fmt , char_str ) !draw the arrow string that points to the current character: arrow_str = repeat ( '-' , max ( 0_IK , json % char_count - 1_IK ) ) // '^' if ( json % line_count > 0 . and . json % char_count > 0 ) then if ( iunit /= 0 ) then if ( use_unformatted_stream ) then call json % get_current_line_from_file_stream ( iunit , line ) else call json % get_current_line_from_file_sequential ( iunit , line ) end if else !get the current line from the string: ! [this is done by counting the newline characters] i_nl_prev = 0 !index of previous newline character i_nl = 2 !just in case line_count = 0 do i = 1 , json % line_count i_nl = index ( str ( i_nl_prev + 1 :), newline ) if ( i_nl == 0 ) then !last line - no newline character i_nl = len ( str ) + 1 exit end if i_nl = i_nl + i_nl_prev !index of current newline character i_nl_prev = i_nl !update for next iteration end do line = str ( i_nl_prev + 1 : i_nl - 1 ) !extract current line end if else !in this case, it was an empty line or file line = CK_ '' end if ! add a newline for the error display if necessary: line = trim ( line ) if ( len ( line ) > 0 ) then i = len ( line ) if ( line ( i : i ) /= newline ) line = line // newline else line = line // newline end if !create the error message: if ( allocated ( json % err_message )) then json % err_message = json % err_message // newline else json % err_message = '' end if json % err_message = json % err_message // & 'line: ' // trim ( adjustl ( line_str )) // ', ' // & 'character: ' // trim ( adjustl ( char_str )) // newline // & line // arrow_str if ( allocated ( line )) deallocate ( line ) end if end subroutine annotate_invalid_json","tags":"","loc":"proc/annotate_invalid_json.html"},{"title":"convert – JSON-Fortran","text":"private subroutine convert(json, p, var_type) Convert an existing JSON variable p to a different variable type .\n The existing variable (and its children) is destroyed. It is replaced\n in the structure by a new variable of type var_type (which can be a json_null , json_object or json_array ). Note This is an internal routine used when creating variables by path. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p the variable to convert integer(kind=IK), intent(in) :: var_type the variable type to convert p to Calls proc~~convert~~CallsGraph proc~convert json_core%convert none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 none~throw_exception json_core%throw_exception proc~convert->none~throw_exception proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~to_null json_core%to_null proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_info_by_path->none~info~2 interface~to_unicode to_unicode proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~wrap_json_value_create_object->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_value_insert_after_child_by_index->none~insert_after none~get_child json_core%get_child proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~get_child proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->none~get~2 proc~json_string_info->proc~json_clear_exceptions proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~convert~~CalledByGraph proc~convert json_core%convert none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~convert none~get_child json_core%get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine convert ( json , p , var_type ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! the variable to convert integer ( IK ), intent ( in ) :: var_type !! the variable type to convert `p` to type ( json_value ), pointer :: tmp !! temporary variable character ( kind = CK , len = :), allocatable :: name !! the name of a JSON variable logical :: convert_it !! if `p` needs to be converted convert_it = p % var_type /= var_type if ( convert_it ) then call json % info ( p , name = name ) ! get existing name select case ( var_type ) case ( json_object ) call json % create_object ( tmp , name ) case ( json_array ) call json % create_array ( tmp , name ) case ( json_null ) call json % create_null ( tmp , name ) case default call json % throw_exception ( 'Error in convert: invalid var_type value.' ) return end select call json % replace ( p , tmp , destroy = . true .) p => tmp nullify ( tmp ) end if end subroutine convert","tags":"","loc":"proc/convert.html"},{"title":"destroy_json_core – JSON-Fortran","text":"private subroutine destroy_json_core(me) Destructor for the json_core type. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(out) :: me Called by proc~~destroy_json_core~~CalledByGraph proc~destroy_json_core json_core%destroy_json_core none~destroy~3 json_core%destroy none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_file_destroy json_file%json_file_destroy proc~json_file_destroy->none~destroy~3 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~destroy~3 none~valid_path~2 json_core%valid_path proc~json_file_valid_path_op->none~valid_path~2 proc~json_value_destroy->none~destroy~3 proc~json_value_remove json_core%json_value_remove proc~json_value_remove->none~destroy~3 proc~parse_array json_core%parse_array proc~parse_array->none~destroy~3 proc~parse_value json_core%parse_value proc~parse_array->proc~parse_value proc~parse_object json_core%parse_object proc~parse_object->none~destroy~3 proc~parse_object->proc~parse_object proc~parse_object->proc~parse_value proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->proc~json_file_destroy none~deserialize json_file%deserialize proc~assign_string_to_json_file->none~deserialize proc~finalize_json_file finalize_json_file proc~finalize_json_file->proc~json_file_destroy proc~json_file_add json_file%json_file_add proc~json_file_add->proc~json_file_destroy proc~json_file_load json_file%json_file_load proc~json_file_load->proc~json_file_destroy none~load~2 json_core%load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->proc~json_file_destroy none~deserialize~2 json_core%deserialize proc~json_file_load_from_string->none~deserialize~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->proc~json_value_remove none~get~2 json_core%get proc~json_value_remove_if_present->none~get~2 proc~json_value_replace json_core%json_value_replace proc~json_value_replace->proc~json_value_remove none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~parse_value->proc~parse_array proc~parse_value->proc~parse_object none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present proc~convert json_core%convert proc~convert->proc~json_value_replace none~info~2 json_core%info proc~convert->none~info~2 proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->proc~json_value_replace none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->proc~json_value_replace proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2->proc~json_parse_file proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~convert none~get_child json_core%get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_file_load_from_string->none~deserialize proc~wrap_json_value_remove_if_present->none~remove_if_present interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_parse_string->none~deserialize~2 none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_file_remove->none~remove proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~string_info->proc~json_string_info none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine destroy_json_core ( me ) implicit none class ( json_core ), intent ( out ) :: me end subroutine destroy_json_core","tags":"","loc":"proc/destroy_json_core.html"},{"title":"destroy_json_data – JSON-Fortran","text":"private pure subroutine destroy_json_data(d) Destroy the data within a json_value , and reset type to json_unknown . Arguments Type Intent Optional Attributes Name type( json_value ), intent(inout) :: d Called by proc~~destroy_json_data~~CalledByGraph proc~destroy_json_data destroy_json_data proc~json_value_destroy json_core%json_value_destroy proc~json_value_destroy->proc~destroy_json_data none~destroy~3 json_core%destroy proc~json_value_destroy->none~destroy~3 proc~to_array json_core%to_array proc~to_array->proc~destroy_json_data proc~to_integer json_core%to_integer proc~to_integer->proc~destroy_json_data proc~to_logical json_core%to_logical proc~to_logical->proc~destroy_json_data proc~to_null json_core%to_null proc~to_null->proc~destroy_json_data proc~to_object json_core%to_object proc~to_object->proc~destroy_json_data proc~to_real json_core%to_real proc~to_real->proc~destroy_json_data proc~to_string json_core%to_string proc~to_string->proc~destroy_json_data none~destroy~3->proc~json_value_destroy proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->proc~to_array proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_default->proc~to_object none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_update_integer json_core%json_update_integer proc~json_update_integer->proc~to_integer none~get~2 json_core%get proc~json_update_integer->none~get~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 none~info~2 json_core%info proc~json_update_integer->none~info~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->proc~to_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~info~2 proc~json_update_real json_core%json_update_real proc~json_update_real->proc~to_real proc~json_update_real->none~get~2 proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~info~2 proc~json_update_string json_core%json_update_string proc~json_update_string->proc~to_string proc~json_update_string->none~get~2 proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~info~2 proc~json_value_create_array json_core%json_value_create_array proc~json_value_create_array->proc~to_array proc~json_value_create_integer json_core%json_value_create_integer proc~json_value_create_integer->proc~to_integer proc~json_value_create_logical json_core%json_value_create_logical proc~json_value_create_logical->proc~to_logical proc~json_value_create_null json_core%json_value_create_null proc~json_value_create_null->proc~to_null proc~json_value_create_object json_core%json_value_create_object proc~json_value_create_object->proc~to_object proc~json_value_create_real json_core%json_value_create_real proc~json_value_create_real->proc~to_real proc~json_value_create_string json_core%json_value_create_string proc~json_value_create_string->proc~to_string proc~parse_number json_core%parse_number proc~parse_number->proc~to_integer proc~parse_number->proc~to_real proc~parse_value json_core%parse_value proc~parse_value->proc~to_array proc~parse_value->proc~to_logical proc~parse_value->proc~to_null proc~parse_value->proc~to_object proc~parse_value->proc~to_string proc~parse_value->proc~parse_number proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object none~create_array json_core%create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array none~create_integer json_core%create_integer none~create_integer->proc~json_value_create_integer proc~wrap_json_value_create_integer json_core%wrap_json_value_create_integer none~create_integer->proc~wrap_json_value_create_integer none~create_logical json_core%create_logical none~create_logical->proc~json_value_create_logical proc~wrap_json_value_create_logical json_core%wrap_json_value_create_logical none~create_logical->proc~wrap_json_value_create_logical none~create_null json_core%create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null none~create_object json_core%create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object none~create_string json_core%create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_file_destroy json_file%json_file_destroy proc~json_file_destroy->none~destroy~3 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~destroy~3 none~valid_path~2 json_core%valid_path proc~json_file_valid_path_op->none~valid_path~2 proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~json_value_remove json_core%json_value_remove proc~json_value_remove->none~destroy~3 proc~parse_array->none~destroy~3 proc~parse_array->proc~parse_value proc~parse_object->none~destroy~3 proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path none~load~2 json_core%load none~load~2->proc~json_parse_file proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->proc~json_file_destroy none~deserialize json_file%deserialize proc~assign_string_to_json_file->none~deserialize proc~convert->none~create_array proc~convert->none~create_null proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~convert->none~info~2 proc~finalize_json_file finalize_json_file proc~finalize_json_file->proc~json_file_destroy proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create_integer proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create_array proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create_logical proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create_array proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create_array proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~info~2 proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create_string proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_by_path->none~info~2 proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~info~2 proc~json_file_add json_file%json_file_add proc~json_file_add->proc~json_file_destroy proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~create_object proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~create_object proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~create_object proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~create_object proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~create_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~create_object proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~create_object proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~create_object proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->none~create_object proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->none~create_object proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~create_object proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_load json_file%json_file_load proc~json_file_load->proc~json_file_destroy proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->proc~json_file_destroy proc~json_file_load_from_string->none~deserialize~2 proc~json_value_add_integer json_core%json_value_add_integer proc~json_value_add_integer->none~create_integer proc~json_value_add_integer_vec json_core%json_value_add_integer_vec proc~json_value_add_integer_vec->none~create_array proc~json_value_add_logical json_core%json_value_add_logical proc~json_value_add_logical->none~create_logical proc~json_value_add_logical_vec json_core%json_value_add_logical_vec proc~json_value_add_logical_vec->none~create_array proc~json_value_add_null json_core%json_value_add_null proc~json_value_add_null->none~create_null proc~json_value_add_real_vec json_core%json_value_add_real_vec proc~json_value_add_real_vec->none~create_array proc~json_value_add_string json_core%json_value_add_string proc~json_value_add_string->none~create_string proc~json_value_add_string_vec json_core%json_value_add_string_vec proc~json_value_add_string_vec->none~create_array proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->proc~json_value_remove proc~json_value_remove_if_present->none~get~2 proc~json_value_replace->proc~json_value_remove none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_integer->none~create_integer proc~wrap_json_value_create_logical->none~create_logical proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->none~create_object proc~wrap_json_value_create_string->none~create_string none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_member_by_path->none~info~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_by_path->none~info~2 proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_parse_string->none~deserialize~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~string_info->proc~json_string_info none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_file_load_from_string->none~deserialize proc~wrap_json_value_remove_if_present->none~remove_if_present interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_remove->none~remove proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure subroutine destroy_json_data ( d ) implicit none type ( json_value ), intent ( inout ) :: d d % var_type = json_unknown if ( allocated ( d % log_value )) deallocate ( d % log_value ) if ( allocated ( d % int_value )) deallocate ( d % int_value ) if ( allocated ( d % dbl_value )) deallocate ( d % dbl_value ) if ( allocated ( d % str_value )) deallocate ( d % str_value ) end subroutine destroy_json_data","tags":"","loc":"proc/destroy_json_data.html"},{"title":"flag_not_found – JSON-Fortran","text":"private subroutine flag_not_found(found) If found is present, set it it false. Arguments Type Intent Optional Attributes Name logical(kind=LK), intent(out), optional :: found Called by proc~~flag_not_found~~CalledByGraph proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path proc~json_get_alloc_string_vec_by_path->proc~flag_not_found none~get~2 json_core%get proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_integer_by_path json_core%json_get_integer_by_path proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path json_core%json_get_logical_by_path proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real_by_path json_core%json_get_real_by_path proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path json_core%json_get_string_by_path proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->none~get~2 none~get~2->proc~json_get_alloc_string_vec_by_path none~get~2->proc~json_get_integer_by_path none~get~2->proc~json_get_integer_vec_by_path none~get~2->proc~json_get_logical_by_path none~get~2->proc~json_get_logical_vec_by_path none~get~2->proc~json_get_real_by_path none~get~2->proc~json_get_real_vec_by_path none~get~2->proc~json_get_string_by_path none~get~2->proc~json_get_string_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_array_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine flag_not_found ( found ) implicit none logical ( LK ), intent ( out ), optional :: found if ( present ( found )) found = . false . end subroutine flag_not_found","tags":"","loc":"proc/flag_not_found.html"},{"title":"get_current_line_from_file_sequential – JSON-Fortran","text":"private subroutine get_current_line_from_file_sequential(iunit, line) Rewind the file to the beginning of the current line, and return this line.\nThe file is assumed to be opened.\nThis is the SEQUENTIAL version (see also get_current_line_from_file_stream ). Type Bound json_core Arguments Type Intent Optional Attributes Name integer(kind=IK), intent(in) :: iunit file unit number character(kind=CK, len=:), intent(out), allocatable :: line current line Called by proc~~get_current_line_from_file_sequential~~CalledByGraph proc~get_current_line_from_file_sequential json_core%get_current_line_from_file_sequential proc~annotate_invalid_json json_core%annotate_invalid_json proc~annotate_invalid_json->proc~get_current_line_from_file_sequential proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~annotate_invalid_json proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~annotate_invalid_json none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine get_current_line_from_file_sequential ( iunit , line ) implicit none integer ( IK ), intent ( in ) :: iunit !! file unit number character ( kind = CK , len = :), allocatable , intent ( out ) :: line !! current line character ( kind = CK , len = seq_chunk_size ) :: chunk !! for reading line in chunks integer ( IK ) :: istat !! iostat flag integer ( IK ) :: isize !! number of characters read in read statement !initialize: line = CK_ '' !rewind to beginning of the current record: backspace ( iunit , iostat = istat ) !loop to read in all the characters in the current record. ![the line is read in chunks until the end of the line is reached] if ( istat == 0 ) then do isize = 0 read ( iunit , fmt = '(A)' , advance = 'NO' , size = isize , iostat = istat ) chunk if ( istat == 0 ) then line = line // chunk else if ( isize > 0 . and . isize <= seq_chunk_size ) line = line // chunk ( 1 : isize ) exit end if end do end if end subroutine get_current_line_from_file_sequential","tags":"","loc":"proc/get_current_line_from_file_sequential.html"},{"title":"get_current_line_from_file_stream – JSON-Fortran","text":"private subroutine get_current_line_from_file_stream(json, iunit, line) Rewind the file to the beginning of the current line, and return this line.\nThe file is assumed to be opened.\nThis is the STREAM version (see also get_current_line_from_file_sequential ). Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: iunit file unit number character(kind=CK, len=:), intent(out), allocatable :: line current line Called by proc~~get_current_line_from_file_stream~~CalledByGraph proc~get_current_line_from_file_stream json_core%get_current_line_from_file_stream proc~annotate_invalid_json json_core%annotate_invalid_json proc~annotate_invalid_json->proc~get_current_line_from_file_stream proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~annotate_invalid_json proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~annotate_invalid_json none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine get_current_line_from_file_stream ( json , iunit , line ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: iunit !! file unit number character ( kind = CK , len = :), allocatable , intent ( out ) :: line !! current line integer ( IK ) :: istart !! start position of current line integer ( IK ) :: iend !! end position of current line integer ( IK ) :: ios !! file read `iostat` code character ( kind = CK , len = 1 ) :: c !! a character read from the file logical :: done !! flag to exit the loop istart = json % ipos do if ( istart <= 1 ) then istart = 1 exit end if read ( iunit , pos = istart , iostat = ios ) c done = ios /= 0_IK if (. not . done ) done = c == newline if ( done ) then if ( istart /= 1 ) istart = istart - 1 exit end if istart = istart - 1 !rewind until the beginning of the line end do iend = json % ipos do read ( iunit , pos = iend , iostat = ios ) c if ( IS_IOSTAT_END ( ios )) then ! account for end of file without linebreak iend = iend - 1 exit end if if ( c == newline . or . ios /= 0 ) exit iend = iend + 1 end do allocate ( character ( kind = CK , len = iend - istart + 1 ) :: line ) read ( iunit , pos = istart , iostat = ios ) line end subroutine get_current_line_from_file_stream","tags":"","loc":"proc/get_current_line_from_file_stream.html"},{"title":"json_add_integer_by_path – JSON-Fortran","text":"private subroutine json_add_integer_by_path(json, me, path, value, found, was_created) Add an integer value to a json_value , given the path. Warning If the path points to an existing variable in the structure,\n then this routine will destroy it and replace it with the\n new value. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_add_integer_by_path~~CallsGraph proc~json_add_integer_by_path json_core%json_add_integer_by_path none~create json_core%create proc~json_add_integer_by_path->none~create none~create_integer json_core%create_integer proc~json_add_integer_by_path->none~create_integer none~info~2 json_core%info proc~json_add_integer_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_integer_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_integer_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_integer_by_path->proc~json_value_replace proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_integer json_core%json_value_create_integer none~create_integer->proc~json_value_create_integer proc~wrap_json_value_create_integer json_core%wrap_json_value_create_integer none~create_integer->proc~wrap_json_value_create_integer proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_create json_value_create proc~json_value_create_integer->proc~json_value_create proc~to_integer json_core%to_integer proc~json_value_create_integer->proc~to_integer none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->none~create interface~to_unicode to_unicode proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_value_create_integer->none~create_integer proc~wrap_json_value_create_integer->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_integer->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_add_integer_by_path~~CalledByGraph proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_add_integer_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created type ( json_value ), pointer :: p type ( json_value ), pointer :: tmp character ( kind = CK , len = :), allocatable :: name !! variable name if ( . not . json % exception_thrown ) then nullify ( p ) ! return a pointer to the path (possibly creating it) ! If the variable had to be created, then ! it will be a json_null variable. call json % create ( me , path , p , found , was_created ) if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_add_integer_by_path:' // & ' Unable to resolve path: ' // trim ( path ), found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if else !NOTE: a new object is created, and the old one ! is replaced and destroyed. This is to ! prevent memory leaks if the type is ! being changed (for example, if an array ! is being replaced with a scalar). if ( p % var_type == json_integer ) then p % int_value = value else call json % info ( p , name = name ) call json % create_integer ( tmp , value , name ) call json % replace ( p , tmp , destroy = . true .) end if end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_integer_by_path","tags":"","loc":"proc/json_add_integer_by_path.html"},{"title":"json_add_integer_vec_by_path – JSON-Fortran","text":"private subroutine json_add_integer_vec_by_path(json, me, path, value, found, was_created) Wrapper to json_add_integer_by_path for adding an integer vector by path. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_add_integer_vec_by_path~~CallsGraph proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path none~add~4 json_core%add proc~json_add_integer_vec_by_path->none~add~4 none~create json_core%create proc~json_add_integer_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_integer_vec_by_path->none~create_array none~info~2 json_core%info proc~json_add_integer_vec_by_path->none~info~2 proc~json_value_replace json_core%json_value_replace proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index none~throw_exception json_core%throw_exception proc~json_create_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_create_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->none~create proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_array->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->proc~json_value_replace proc~convert->none~throw_exception none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_add_integer_vec_by_path~~CalledByGraph proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_add_integer_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created type ( json_value ), pointer :: p !! pointer to path (which may exist) type ( json_value ), pointer :: var !! new variable that is created integer ( IK ) :: i !! counter character ( kind = CK , len = :), allocatable :: name !! the variable name logical ( LK ) :: p_found !! if the path was successfully found (or created) if ( . not . json % exception_thrown ) then !get a pointer to the variable !(creating it if necessary) call json % create ( me , path , p , found = p_found ) if ( p_found ) then call json % info ( p , name = name ) ! want to keep the existing name call json % create_array ( var , name ) ! create a new array variable call json % replace ( p , var , destroy = . true .) ! replace p with this array (destroy p) !populate each element of the array: do i = 1 , size ( value ) call json % add ( var , CK_ '' , value ( i )) end do end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_integer_vec_by_path","tags":"","loc":"proc/json_add_integer_vec_by_path.html"},{"title":"json_add_logical_by_path – JSON-Fortran","text":"private subroutine json_add_logical_by_path(json, me, path, value, found, was_created) Add a logical value to a json_value , given the path. Warning If the path points to an existing variable in the structure,\n then this routine will destroy it and replace it with the\n new value. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_add_logical_by_path~~CallsGraph proc~json_add_logical_by_path json_core%json_add_logical_by_path none~create json_core%create proc~json_add_logical_by_path->none~create none~create_logical json_core%create_logical proc~json_add_logical_by_path->none~create_logical none~info~2 json_core%info proc~json_add_logical_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_logical_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_logical_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_logical_by_path->proc~json_value_replace proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_logical json_core%json_value_create_logical none~create_logical->proc~json_value_create_logical proc~wrap_json_value_create_logical json_core%wrap_json_value_create_logical none~create_logical->proc~wrap_json_value_create_logical proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_create json_value_create proc~json_value_create_logical->proc~json_value_create proc~to_logical json_core%to_logical proc~json_value_create_logical->proc~to_logical none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->none~create interface~to_unicode to_unicode proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_value_create_logical->none~create_logical proc~wrap_json_value_create_logical->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_logical->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_add_logical_by_path~~CalledByGraph proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_add_logical_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created type ( json_value ), pointer :: p type ( json_value ), pointer :: tmp character ( kind = CK , len = :), allocatable :: name !! variable name if ( . not . json % exception_thrown ) then nullify ( p ) ! return a pointer to the path (possibly creating it) ! If the variable had to be created, then ! it will be a json_null variable. call json % create ( me , path , p , found , was_created ) if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_add_logical_by_path:' // & ' Unable to resolve path: ' // trim ( path ), found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if else !NOTE: a new object is created, and the old one ! is replaced and destroyed. This is to ! prevent memory leaks if the type is ! being changed (for example, if an array ! is being replaced with a scalar). if ( p % var_type == json_logical ) then p % log_value = value else call json % info ( p , name = name ) call json % create_logical ( tmp , value , name ) call json % replace ( p , tmp , destroy = . true .) end if end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_logical_by_path","tags":"","loc":"proc/json_add_logical_by_path.html"},{"title":"json_add_logical_vec_by_path – JSON-Fortran","text":"private subroutine json_add_logical_vec_by_path(json, me, path, value, found, was_created) Wrapper to json_add_logical_by_path for adding a logical vector by path. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_add_logical_vec_by_path~~CallsGraph proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path none~add~4 json_core%add proc~json_add_logical_vec_by_path->none~add~4 none~create json_core%create proc~json_add_logical_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_logical_vec_by_path->none~create_array none~info~2 json_core%info proc~json_add_logical_vec_by_path->none~info~2 proc~json_value_replace json_core%json_value_replace proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index none~throw_exception json_core%throw_exception proc~json_create_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_create_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->none~create proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_array->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->proc~json_value_replace proc~convert->none~throw_exception none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_add_logical_vec_by_path~~CalledByGraph proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_add_logical_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created type ( json_value ), pointer :: p !! pointer to path (which may exist) type ( json_value ), pointer :: var !! new variable that is created integer ( IK ) :: i !! counter character ( kind = CK , len = :), allocatable :: name !! the variable name logical ( LK ) :: p_found !! if the path was successfully found (or created) if ( . not . json % exception_thrown ) then !get a pointer to the variable !(creating it if necessary) call json % create ( me , path , p , found = p_found ) if ( p_found ) then call json % info ( p , name = name ) ! want to keep the existing name call json % create_array ( var , name ) ! create a new array variable call json % replace ( p , var , destroy = . true .) ! replace p with this array (destroy p) !populate each element of the array: do i = 1 , size ( value ) call json % add ( var , CK_ '' , value ( i )) end do end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_logical_vec_by_path","tags":"","loc":"proc/json_add_logical_vec_by_path.html"},{"title":"json_add_member_by_path – JSON-Fortran","text":"private subroutine json_add_member_by_path(json, me, path, p, found, was_created) Add a new member ( json_value pointer) to a JSON structure, given the path. Warning If the path points to an existing variable in the structure,\n then this routine will destroy it and replace it with the\n new value. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(in), pointer :: p the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_add_member_by_path~~CallsGraph proc~json_add_member_by_path json_core%json_add_member_by_path none~create json_core%create proc~json_add_member_by_path->none~create none~info~2 json_core%info proc~json_add_member_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_member_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_member_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_member_by_path->proc~json_value_replace proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->none~create interface~to_unicode to_unicode proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_add_member_by_path~~CalledByGraph proc~json_add_member_by_path json_core%json_add_member_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_add_member_by_path ( json , me , path , p , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable type ( json_value ), pointer , intent ( in ) :: p !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created type ( json_value ), pointer :: tmp character ( kind = CK , len = :), allocatable :: name !! name of the variable if ( . not . json % exception_thrown ) then if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_add_member_by_path:' // & ' Input pointer p is not associated.' , found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if if ( present ( was_created ) ) was_created = . false . else ! return a pointer to the path (possibly creating it) call json % create ( me , path , tmp , found , was_created ) if (. not . associated ( tmp )) then call json % throw_exception ( 'Error in json_add_member_by_path:' // & ' Unable to resolve path: ' // trim ( path ), found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if else call json % info ( tmp , name = name ) ! replace it with the new one: call json % replace ( tmp , p , destroy = . true .) call json % rename ( p , name ) end if end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_member_by_path","tags":"","loc":"proc/json_add_member_by_path.html"},{"title":"json_add_real32_by_path – JSON-Fortran","text":"private subroutine json_add_real32_by_path(json, me, path, value, found, was_created) Alternate version of json_add_real_by_path where value=real32. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_add_real32_by_path~~CallsGraph proc~json_add_real32_by_path json_core%json_add_real32_by_path none~add_by_path~2 json_core%add_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_add_real32_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % add_by_path ( me , path , real ( value , RK ), found , was_created ) end subroutine json_add_real32_by_path","tags":"","loc":"proc/json_add_real32_by_path.html"},{"title":"json_add_real32_vec_by_path – JSON-Fortran","text":"private subroutine json_add_real32_vec_by_path(json, me, path, value, found, was_created) Wrapper to json_add_real_by_path for adding a real vector by path. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_add_real32_vec_by_path~~CallsGraph proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path none~add_by_path~2 json_core%add_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_add_real32_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % add_by_path ( me , path , real ( value , RK ), found , was_created ) end subroutine json_add_real32_vec_by_path","tags":"","loc":"proc/json_add_real32_vec_by_path.html"},{"title":"json_add_real_by_path – JSON-Fortran","text":"private subroutine json_add_real_by_path(json, me, path, value, found, was_created) Add an real value to a json_value , given the path. Warning If the path points to an existing variable in the structure,\n then this routine will destroy it and replace it with the\n new value. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_add_real_by_path~~CallsGraph proc~json_add_real_by_path json_core%json_add_real_by_path none~create json_core%create proc~json_add_real_by_path->none~create none~create_real~2 json_core%create_real proc~json_add_real_by_path->none~create_real~2 none~info~2 json_core%info proc~json_add_real_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_real_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_real_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_real_by_path->proc~json_value_replace proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_real32 json_core%json_value_create_real32 none~create_real~2->proc~json_value_create_real32 proc~wrap_json_value_create_real32 json_core%wrap_json_value_create_real32 none~create_real~2->proc~wrap_json_value_create_real32 proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_create_real32->none~create_real~2 none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->none~create interface~to_unicode to_unicode proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_value_create_real32->none~create_real~2 proc~wrap_json_value_create_real32->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_add_real_by_path~~CalledByGraph proc~json_add_real_by_path json_core%json_add_real_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_add_real_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created type ( json_value ), pointer :: p type ( json_value ), pointer :: tmp character ( kind = CK , len = :), allocatable :: name !! variable name if ( . not . json % exception_thrown ) then nullify ( p ) ! return a pointer to the path (possibly creating it) ! If the variable had to be created, then ! it will be a json_null variable. call json % create ( me , path , p , found , was_created ) if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_add_real_by_path:' // & ' Unable to resolve path: ' // trim ( path ), found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if else !NOTE: a new object is created, and the old one ! is replaced and destroyed. This is to ! prevent memory leaks if the type is ! being changed (for example, if an array ! is being replaced with a scalar). if ( p % var_type == json_real ) then p % dbl_value = value else call json % info ( p , name = name ) call json % create_real ( tmp , value , name ) call json % replace ( p , tmp , destroy = . true .) end if end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_real_by_path","tags":"","loc":"proc/json_add_real_by_path.html"},{"title":"json_add_real_vec_by_path – JSON-Fortran","text":"private subroutine json_add_real_vec_by_path(json, me, path, value, found, was_created) Wrapper to json_add_real_by_path for adding a real vector by path. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_add_real_vec_by_path~~CallsGraph proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path none~add~4 json_core%add proc~json_add_real_vec_by_path->none~add~4 none~create json_core%create proc~json_add_real_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_real_vec_by_path->none~create_array none~info~2 json_core%info proc~json_add_real_vec_by_path->none~info~2 proc~json_value_replace json_core%json_value_replace proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index none~throw_exception json_core%throw_exception proc~json_create_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_create_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->none~create proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_array->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->proc~json_value_replace proc~convert->none~throw_exception none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_add_real_vec_by_path~~CalledByGraph proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_add_real_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created type ( json_value ), pointer :: p !! pointer to path (which may exist) type ( json_value ), pointer :: var !! new variable that is created integer ( IK ) :: i !! counter character ( kind = CK , len = :), allocatable :: name !! the variable name logical ( LK ) :: p_found !! if the path was successfully found (or created) if ( . not . json % exception_thrown ) then !get a pointer to the variable !(creating it if necessary) call json % create ( me , path , p , found = p_found ) if ( p_found ) then call json % info ( p , name = name ) ! want to keep the existing name call json % create_array ( var , name ) ! create a new array variable call json % replace ( p , var , destroy = . true .) ! replace p with this array (destroy p) !populate each element of the array: do i = 1 , size ( value ) call json % add ( var , CK_ '' , value ( i )) end do end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_real_vec_by_path","tags":"","loc":"proc/json_add_real_vec_by_path.html"},{"title":"json_add_string_by_path – JSON-Fortran","text":"private subroutine json_add_string_by_path(json, me, path, value, found, was_created, trim_str, adjustl_str) Add a string value to a json_value , given the path. Warning If the path points to an existing variable in the structure,\n then this routine will destroy it and replace it with the\n new value. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element Calls proc~~json_add_string_by_path~~CallsGraph proc~json_add_string_by_path json_core%json_add_string_by_path none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_create json_value_create proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->none~create interface~to_unicode to_unicode proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~wrap_json_value_create_string->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_add_string_by_path~~CalledByGraph proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_add_string_by_path ( json , me , path , value , found ,& was_created , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element type ( json_value ), pointer :: p type ( json_value ), pointer :: tmp character ( kind = CK , len = :), allocatable :: name !! variable name if ( . not . json % exception_thrown ) then nullify ( p ) ! return a pointer to the path (possibly creating it) ! If the variable had to be created, then ! it will be a json_null variable. call json % create ( me , path , p , found , was_created ) if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_add_string_by_path:' // & ' Unable to resolve path: ' // trim ( path ), found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if else !NOTE: a new object is created, and the old one ! is replaced and destroyed. This is to ! prevent memory leaks if the type is ! being changed (for example, if an array ! is being replaced with a scalar). if ( p % var_type == json_string ) then p % str_value = value else call json % info ( p , name = name ) call json % create_string ( tmp , value , name , trim_str , adjustl_str ) call json % replace ( p , tmp , destroy = . true .) end if end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_string_by_path","tags":"","loc":"proc/json_add_string_by_path.html"},{"title":"json_add_string_by_path_path_ascii – JSON-Fortran","text":"private subroutine json_add_string_by_path_path_ascii(json, me, path, value, found, was_created, trim_str, adjustl_str) Wrapper for json_add_string_by_path where “path” is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element Calls proc~~json_add_string_by_path_path_ascii~~CallsGraph proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_create json_value_create proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_add_string_by_path_path_ascii~~CalledByGraph proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_add_string_by_path_path_ascii ( json , me , path , value , found ,& was_created , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element call json % json_add_string_by_path ( me , to_unicode ( path ), value , found , was_created , trim_str , adjustl_str ) end subroutine json_add_string_by_path_path_ascii","tags":"","loc":"proc/json_add_string_by_path_path_ascii.html"},{"title":"json_add_string_by_path_value_ascii – JSON-Fortran","text":"private subroutine json_add_string_by_path_value_ascii(json, me, path, value, found, was_created, trim_str, adjustl_str) Wrapper for json_add_string_by_path where “value” is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element Calls proc~~json_add_string_by_path_value_ascii~~CallsGraph proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii interface~to_unicode to_unicode proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_create json_value_create proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_add_string_by_path_value_ascii~~CalledByGraph proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_add_string_by_path_value_ascii ( json , me , path , value , found ,& was_created , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element call json % json_add_string_by_path ( me , path , to_unicode ( value ), found , was_created , trim_str , adjustl_str ) end subroutine json_add_string_by_path_value_ascii","tags":"","loc":"proc/json_add_string_by_path_value_ascii.html"},{"title":"json_add_string_vec_by_path – JSON-Fortran","text":"private subroutine json_add_string_vec_by_path(json, me, path, value, found, was_created, ilen, trim_str, adjustl_str) Wrapper to json_add_string_by_path for adding a string vector by path. Note The ilen input can be used to specify the actual lengths of the\n the strings in the array. They must all be <= len(value) . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element Calls proc~~json_add_string_vec_by_path~~CallsGraph proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 none~create json_core%create proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array none~info~2 json_core%info proc~json_add_string_vec_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_vec_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->none~create proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_array->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_add_string_vec_by_path~~CalledByGraph proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_add_string_vec_by_path ( json , me , path , value , found , was_created , ilen , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created integer ( IK ), dimension (:), intent ( in ), optional :: ilen !! the string lengths of each !! element in `value`. If not present, !! the full `len(value)` string is added !! for each element. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element type ( json_value ), pointer :: p !! pointer to path (which may exist) type ( json_value ), pointer :: var !! new variable that is created integer ( IK ) :: i !! counter character ( kind = CK , len = :), allocatable :: name !! the variable name logical ( LK ) :: p_found !! if the path was successfully found (or created) if ( . not . json % exception_thrown ) then ! validate ilen array if present: if ( present ( ilen )) then if ( size ( ilen ) /= size ( value )) then call json % throw_exception ( 'Error in json_add_string_vec_by_path: ' // & 'Invalid size of ilen input vector.' , found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if if ( present ( was_created )) was_created = . false . return else ! also have to validate the specified lengths. ! (must not be greater than input string length) do i = 1 , size ( value ) if ( ilen ( i ) > len ( value )) then call json % throw_exception ( 'Error in json_add_string_vec_by_path: ' // & 'Invalid ilen element.' , found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if if ( present ( was_created )) was_created = . false . return end if end do end if end if !get a pointer to the variable !(creating it if necessary) call json % create ( me , path , p , found = p_found ) if ( p_found ) then call json % info ( p , name = name ) ! want to keep the existing name call json % create_array ( var , name ) ! create a new array variable call json % replace ( p , var , destroy = . true .) ! replace p with this array (destroy p) !populate each element of the array: do i = 1 , size ( value ) if ( present ( ilen )) then call json % add ( var , CK_ '' , value ( i )( 1 : ilen ( i )), & trim_str = trim_str , adjustl_str = adjustl_str ) else call json % add ( var , CK_ '' , value ( i ), & trim_str = trim_str , adjustl_str = adjustl_str ) end if end do end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_string_vec_by_path","tags":"","loc":"proc/json_add_string_vec_by_path.html"},{"title":"json_add_string_vec_by_path_path_ascii – JSON-Fortran","text":"private subroutine json_add_string_vec_by_path_path_ascii(json, me, path, value, found, was_created, ilen, trim_str, adjustl_str) Wrapper for json_add_string_vec_by_path where “path” is kind=CDK). Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element Calls proc~~json_add_string_vec_by_path_path_ascii~~CallsGraph proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii interface~to_unicode to_unicode proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 none~create json_core%create proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array none~info~2 json_core%info proc~json_add_string_vec_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_vec_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_add_string_vec_by_path_path_ascii~~CalledByGraph proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_add_string_vec_by_path_path_ascii ( json , me , path , value ,& found , was_created , ilen ,& trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created integer ( IK ), dimension (:), intent ( in ), optional :: ilen !! the string lengths of each !! element in `value`. If not present, !! the full `len(value)` string is added !! for each element. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element call json % json_add_string_vec_by_path ( me , to_unicode ( path ), value ,& found , was_created , ilen , trim_str , adjustl_str ) end subroutine json_add_string_vec_by_path_path_ascii","tags":"","loc":"proc/json_add_string_vec_by_path_path_ascii.html"},{"title":"json_add_string_vec_by_path_value_ascii – JSON-Fortran","text":"private subroutine json_add_string_vec_by_path_value_ascii(json, me, path, value, found, was_created, ilen, trim_str, adjustl_str) Wrapper for json_add_string_vec_by_path where “value” is kind=CDK). Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element Calls proc~~json_add_string_vec_by_path_value_ascii~~CallsGraph proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii interface~to_unicode to_unicode proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 none~create json_core%create proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array none~info~2 json_core%info proc~json_add_string_vec_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_vec_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_add_string_vec_by_path_value_ascii~~CalledByGraph proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_add_string_vec_by_path_value_ascii ( json , me , path , value ,& found , was_created , ilen ,& trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created integer ( IK ), dimension (:), intent ( in ), optional :: ilen !! the string lengths of each !! element in `value`. If not present, !! the full `len(value)` string is added !! for each element. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element call json % json_add_string_vec_by_path ( me , path , to_unicode ( value ),& found , was_created , ilen , trim_str , adjustl_str ) end subroutine json_add_string_vec_by_path_value_ascii","tags":"","loc":"proc/json_add_string_vec_by_path_value_ascii.html"},{"title":"json_check_all_for_duplicate_keys – JSON-Fortran","text":"private subroutine json_check_all_for_duplicate_keys(json, p, has_duplicate, name, path) Checks a JSON structure for duplicate child names.\n This one recursively traverses the entire structure\n (calling json_check_children_for_duplicate_keys recursively for each element). Note This will only check for one duplicate,\n it will return the first one that it finds. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p the object to search. If p is\nnot a json_object , then has_duplicate will be false. logical(kind=LK), intent(out) :: has_duplicate true if there is at least\none duplicate name key anywhere\nin the structure. character(kind=CK, len=:), intent(out), optional, allocatable :: name the duplicate name\n(unallocated if no\nduplicates were found) character(kind=CK, len=:), intent(out), optional, allocatable :: path the full path to the\nduplicate name\n(unallocated if no\nduplicate was found) Calls proc~~json_check_all_for_duplicate_keys~~CallsGraph proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_traverse json_core%json_traverse proc~json_check_all_for_duplicate_keys->proc~json_traverse none~throw_exception json_core%throw_exception proc~json_traverse->none~throw_exception proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_check_all_for_duplicate_keys~~CalledByGraph proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~json_check_all_for_duplicate_keys proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_value_validate json_core%json_value_validate proc~json_value_validate->proc~json_check_all_for_duplicate_keys none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_check_all_for_duplicate_keys ( json , p , has_duplicate , name , path ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! the object to search. If `p` is !! not a `json_object`, then `has_duplicate` !! will be false. logical ( LK ), intent ( out ) :: has_duplicate !! true if there is at least !! one duplicate `name` key anywhere !! in the structure. character ( kind = CK , len = :), allocatable , intent ( out ), optional :: name !! the duplicate name !! (unallocated if no !! duplicates were found) character ( kind = CK , len = :), allocatable , intent ( out ), optional :: path !! the full path to the !! duplicate name !! (unallocated if no !! duplicate was found) has_duplicate = . false . if (. not . json % exception_thrown ) then call json % traverse ( p , duplicate_key_func ) end if contains subroutine duplicate_key_func ( json , p , finished ) !! Callback function to check each element !! for duplicate child names. implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p logical ( LK ), intent ( out ) :: finished #if defined __GFORTRAN__ ! this is a workaround for a gfortran bug (6 and 7), character ( kind = CK , len = :), allocatable :: tmp_name !! temp variable for `name` string character ( kind = CK , len = :), allocatable :: tmp_path !! temp variable for `path` string if ( present ( name ) . and . present ( path )) then call json % check_children_for_duplicate_keys ( p , has_duplicate , name = tmp_name , path = tmp_path ) else if ( present ( name ) . and . . not . present ( path )) then call json % check_children_for_duplicate_keys ( p , has_duplicate , name = tmp_name ) else if (. not . present ( name ) . and . present ( path )) then call json % check_children_for_duplicate_keys ( p , has_duplicate , path = tmp_path ) else call json % check_children_for_duplicate_keys ( p , has_duplicate ) end if if ( has_duplicate ) then if ( present ( name )) name = tmp_name if ( present ( path )) path = tmp_path end if #else call json % check_children_for_duplicate_keys ( p , has_duplicate , name , path ) #endif finished = has_duplicate . or . json % exception_thrown end subroutine duplicate_key_func end subroutine json_check_all_for_duplicate_keys","tags":"","loc":"proc/json_check_all_for_duplicate_keys.html"},{"title":"json_check_children_for_duplicate_keys – JSON-Fortran","text":"private subroutine json_check_children_for_duplicate_keys(json, p, has_duplicate, name, path) Checks a JSON object for duplicate child names. It uses the specified settings for name matching (see name_strings_equal ). Note This will only check for one duplicate,\n it will return the first one that it finds. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p the object to search. If p is\nnot a json_object , then has_duplicate will be false. logical(kind=LK), intent(out) :: has_duplicate true if there is at least\ntwo children have duplicate name values. character(kind=CK, len=:), intent(out), optional, allocatable :: name the duplicate name\n(unallocated if no\nduplicate was found) character(kind=CK, len=:), intent(out), optional, allocatable :: path the full path to the\nduplicate name\n(unallocated if no\nduplicate was found) Calls proc~~json_check_children_for_duplicate_keys~~CallsGraph proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys none~get_child json_core%get_child proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path none~throw_exception json_core%throw_exception proc~json_check_children_for_duplicate_keys->none~throw_exception proc~name_strings_equal json_core%name_strings_equal proc~json_check_children_for_duplicate_keys->proc~name_strings_equal proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_get_path json_core%json_get_path none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_get_path->none~throw_exception none~info~2 json_core%info proc~json_get_path->none~info~2 proc~encode_rfc6901 encode_rfc6901 proc~json_get_path->proc~encode_rfc6901 proc~integer_to_string integer_to_string proc~json_get_path->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_path->proc~json_clear_exceptions proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~wrap_json_get_path->none~get_path interface~to_unicode to_unicode proc~wrap_json_get_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_value_get_child_by_name->interface~to_unicode none~get~2 json_core%get proc~wrap_json_value_get_child_by_name->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~replace_string replace_string proc~encode_rfc6901->proc~replace_string proc~name_equal->proc~name_strings_equal proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~get_child proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~convert->none~throw_exception proc~convert->none~info~2 none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~throw_exception proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_string_info->proc~json_clear_exceptions proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_check_children_for_duplicate_keys ( json , p , has_duplicate , name , path ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! the object to search. If `p` is !! not a `json_object`, then `has_duplicate` !! will be false. logical ( LK ), intent ( out ) :: has_duplicate !! true if there is at least !! two children have duplicate !! `name` values. character ( kind = CK , len = :), allocatable , intent ( out ), optional :: name !! the duplicate name !! (unallocated if no !! duplicate was found) character ( kind = CK , len = :), allocatable , intent ( out ), optional :: path !! the full path to the !! duplicate name !! (unallocated if no !! duplicate was found) integer ( IK ) :: i !! counter integer ( IK ) :: j !! counter type ( json_value ), pointer :: child !! pointer to a child of `p` integer ( IK ) :: n_children !! number of children of `p` logical ( LK ) :: found !! flag for `get_child` type :: alloc_str !! so we can have an array of allocatable strings character ( kind = CK , len = :), allocatable :: str !! name string end type alloc_str type ( alloc_str ), dimension (:), allocatable :: names !! array of all the !! child name strings ! initialize: has_duplicate = . false . if (. not . json % exception_thrown ) then if ( associated ( p )) then if ( p % var_type == json_object ) then ! number of items to check: n_children = json % count ( p ) allocate ( names ( n_children )) ! first get a list of all the name keys: do i = 1 , n_children call json % get_child ( p , i , child , found ) ! get by index if (. not . found ) then call json % throw_exception (& 'Error in json_check_children_for_duplicate_keys: ' // & 'Malformed JSON linked list' ) exit end if if ( allocated ( child % name )) then names ( i )% str = child % name else call json % throw_exception (& 'Error in json_check_children_for_duplicate_keys: ' // & 'Object child name is not allocated' ) exit end if end do if (. not . json % exception_thrown ) then ! now check the list for duplicates: main : do i = 1 , n_children do j = 1 , i - 1 if ( json % name_strings_equal ( names ( i )% str , names ( j )% str )) then has_duplicate = . true . if ( present ( name )) then name = names ( i )% str end if if ( present ( path )) then call json % get_child ( p , names ( i )% str , child , found ) ! get by name if ( found ) then call json % get_path ( child , path , found ) if (. not . found ) then ! should never happen since we know it is there call json % throw_exception (& 'Error in json_check_children_for_duplicate_keys: ' // & 'Could not get path' ) end if else ! should never happen since we know it is there call json % throw_exception (& 'Error in json_check_children_for_duplicate_keys: ' // & 'Could not get child: ' // trim ( names ( i )% str )) end if end if exit main end if end do end do main end if ! cleanup do i = 1 , n_children if ( allocated ( names ( i )% str )) deallocate ( names ( i )% str ) end do if ( allocated ( names )) deallocate ( names ) end if end if end if end subroutine json_check_children_for_duplicate_keys","tags":"","loc":"proc/json_check_children_for_duplicate_keys.html"},{"title":"json_check_for_errors – JSON-Fortran","text":"private subroutine json_check_for_errors(json, status_ok, error_msg) Retrieve error code from the json_core .\n This should be called after parse to check for errors.\n If an error is thrown, before using the class again, json_initialize should be called to clean up before it is used again. Example type ( json_file ) :: json logical :: status_ok character ( kind = CK , len = :), allocatable :: error_msg call json % load ( filename = 'myfile.json' ) call json % check_for_errors ( status_ok , error_msg ) if (. not . status_ok ) then write ( * , * ) 'Error: ' // error_msg call json % clear_exceptions () call json % destroy () end if See also json_failed json_throw_exception Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(in) :: json logical(kind=LK), intent(out), optional :: status_ok true if there were no errors character(kind=CK, len=:), intent(out), optional, allocatable :: error_msg the error message.\n(not allocated if\nthere were no errors) Called by proc~~json_check_for_errors~~CalledByGraph proc~json_check_for_errors json_core%json_check_for_errors proc~json_file_check_for_errors json_file%json_file_check_for_errors proc~json_file_check_for_errors->proc~json_check_for_errors proc~json_print_error_message json_core%json_print_error_message proc~json_print_error_message->proc~json_check_for_errors proc~json_value_validate json_core%json_value_validate proc~json_value_validate->proc~json_check_for_errors proc~json_file_print_error_message json_file%json_file_print_error_message proc~json_file_print_error_message->proc~json_print_error_message Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_check_for_errors ( json , status_ok , error_msg ) implicit none class ( json_core ), intent ( in ) :: json logical ( LK ), intent ( out ), optional :: status_ok !! true if there were no errors character ( kind = CK , len = :), allocatable , intent ( out ), optional :: error_msg !! the error message. !! (not allocated if !! there were no errors) #if defined __GFORTRAN__ character ( kind = CK , len = :), allocatable :: tmp !! workaround for gfortran bugs #endif if ( present ( status_ok )) status_ok = . not . json % exception_thrown if ( present ( error_msg )) then if ( json % exception_thrown ) then ! if an exception has been thrown, ! then this will always be allocated ! [see json_throw_exception] #if defined __GFORTRAN__ tmp = json % err_message error_msg = tmp #else error_msg = json % err_message #endif end if end if end subroutine json_check_for_errors","tags":"","loc":"proc/json_check_for_errors.html"},{"title":"json_clear_exceptions – JSON-Fortran","text":"private pure subroutine json_clear_exceptions(json) Clear exceptions in the json_core . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json Called by proc~~json_clear_exceptions~~CalledByGraph proc~json_clear_exceptions json_core%json_clear_exceptions proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->proc~json_clear_exceptions none~deserialize json_file%deserialize proc~assign_string_to_json_file->none~deserialize proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->proc~json_clear_exceptions none~create json_core%create proc~json_add_integer_by_path->none~create none~info~2 json_core%info proc~json_add_integer_by_path->none~info~2 proc~json_value_replace json_core%json_value_replace proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->proc~json_clear_exceptions proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->proc~json_clear_exceptions proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->proc~json_clear_exceptions proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_file_clear_exceptions json_file%json_file_clear_exceptions proc~json_file_clear_exceptions->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions none~get~2 json_core%get proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path json_core%json_get_array_by_path proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_by_path_default->proc~json_clear_exceptions none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_integer_by_path json_core%json_get_integer_by_path proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path json_core%json_get_logical_by_path proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_path json_core%json_get_path proc~json_get_path->proc~json_clear_exceptions proc~json_get_path->none~info~2 proc~json_get_real_by_path json_core%json_get_real_by_path proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path json_core%json_get_string_by_path proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_initialize json_core%json_initialize proc~json_initialize->proc~json_clear_exceptions proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->proc~json_clear_exceptions proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_print_error_message json_core%json_print_error_message proc~json_print_error_message->proc~json_clear_exceptions proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->proc~json_clear_exceptions proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_value_get_child_by_index json_core%json_value_get_child_by_index proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name json_core%json_value_get_child_by_name proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~json_value_validate json_core%json_value_validate proc~json_value_validate->proc~json_clear_exceptions proc~parse_number json_core%parse_number proc~parse_number->proc~json_clear_exceptions none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get_child->proc~json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name none~get_path json_core%get_path none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~get~2->proc~json_get_alloc_string_vec_by_path none~get~2->proc~json_get_array_by_path none~get~2->proc~json_get_by_path none~get~2->proc~json_get_integer_by_path none~get~2->proc~json_get_integer_vec_by_path none~get~2->proc~json_get_logical_by_path none~get~2->proc~json_get_logical_vec_by_path none~get~2->proc~json_get_real_by_path none~get~2->proc~json_get_real_vec_by_path none~get~2->proc~json_get_string_by_path none~get~2->proc~json_get_string_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~string_info json_core%string_info none~string_info->proc~json_string_info proc~initialize_json_core initialize_json_core proc~initialize_json_core->proc~json_initialize proc~initialize_json_core_in_file json_file%initialize_json_core_in_file proc~initialize_json_core_in_file->proc~json_initialize proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_file_print_error_message json_file%json_file_print_error_message proc~json_file_print_error_message->proc~json_print_error_message proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~json_initialize proc~parse_value json_core%parse_value proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~json_initialize proc~json_parse_string->proc~parse_value proc~parse_value->proc~parse_number proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path interface~json_core json_core interface~json_core->proc~initialize_json_core none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~initialize json_file%initialize none~initialize->proc~initialize_json_core_in_file none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_alloc_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~string_info proc~json_get_integer_vec->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~info~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~info~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~info~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_path->none~get_path proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~initialize_json_file initialize_json_file proc~initialize_json_file->none~initialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~initialize proc~initialize_json_file_from_string->none~deserialize proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~json_file_move_pointer json_file%json_file_move_pointer proc~json_file_move_pointer->none~initialize proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_parse_string->none~deserialize~2 interface~json_file json_file interface~json_file->proc~initialize_json_file interface~json_file->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~convert->none~info~2 proc~convert->proc~json_value_replace proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_replace->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~initialize_json_file_from_string_v2->none~deserialize proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_file_load_from_string->none~deserialize proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure subroutine json_clear_exceptions ( json ) implicit none class ( json_core ), intent ( inout ) :: json !clear the flag and message: json % exception_thrown = . false . if ( allocated ( json % err_message )) deallocate ( json % err_message ) end subroutine json_clear_exceptions","tags":"","loc":"proc/json_clear_exceptions.html"},{"title":"json_clone – JSON-Fortran","text":"private subroutine json_clone(json, from, to) Create a deep copy of a json_value linked-list structure. Notes If from has children, then they are also cloned. The parent of from is not linked to to . If from is an element of an array, then the previous and\n next entries are not cloned (only that element and it’s children, if any). Example program test use json_module implicit none type ( json_core ) :: json type ( json_value ), pointer :: j1 , j2 call json % load ( 'files/inputs/test1.json' , j1 ) call json % clone ( j1 , j2 ) !now have two independent copies call json % destroy ( j1 ) !destroys j1, but j2 remains call json % print ( j2 , 'j2.json' ) call json % destroy ( j2 ) end program test Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: from this is the structure to clone type( json_value ), pointer :: to the clone is put here\n(it must not already be associated) Calls proc~~json_clone~~CallsGraph proc~json_clone json_core%json_clone proc~json_value_clone_func json_core%json_value_clone_func proc~json_clone->proc~json_value_clone_func proc~json_value_clone_func->proc~json_value_clone_func Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_clone~~CalledByGraph proc~json_clone json_core%json_clone proc~assign_json_file json_file%assign_json_file proc~assign_json_file->proc~json_clone Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_clone ( json , from , to ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: from !! this is the structure to clone type ( json_value ), pointer :: to !! the clone is put here !! (it must not already be associated) !call the main function: call json % json_value_clone_func ( from , to ) end subroutine json_clone","tags":"","loc":"proc/json_clone.html"},{"title":"json_create_by_path – JSON-Fortran","text":"private subroutine json_create_by_path(json, me, path, p, found, was_created) Returns the json_value pointer given the path string,\n If necessary, by creating the variables as needed. By default, the leaf node and any empty array elements\n are created as json_null values. It only works for path_mode=1 or path_mode=3 .\n An error will be thrown for path_mode=2 (RFC 6901). See also json_get_by_path Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable type( json_value ), intent(out), optional, pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if there were no errors\n(variable found or created) logical(kind=LK), intent(out), optional :: was_created true if it was actually created\n(as opposed to already being there) Calls proc~~json_create_by_path~~CallsGraph proc~json_create_by_path json_core%json_create_by_path none~throw_exception json_core%throw_exception proc~json_create_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_create_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode none~get~2 json_core%get proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 proc~json_info_by_path->none~get~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_create_by_path~~CalledByGraph proc~json_create_by_path json_core%json_create_by_path none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~wrap_json_create_by_path->none~create proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_create_by_path ( json , me , path , p , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me !! a JSON linked list character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable type ( json_value ), pointer , intent ( out ), optional :: p !! pointer to the variable !! specify by `path` logical ( LK ), intent ( out ), optional :: found !! true if there were no errors !! (variable found or created) logical ( LK ), intent ( out ), optional :: was_created !! true if it was actually created !! (as opposed to already being there) type ( json_value ), pointer :: tmp character ( kind = CK , len = max_integer_str_len ) :: path_mode_str !! string version !! of `json%path_mode` if ( present ( p )) nullify ( p ) if (. not . json % exception_thrown ) then select case ( json % path_mode ) case ( 1_IK ) call json % json_get_by_path_default ( me , path , tmp , found ,& create_it = . true .,& was_created = was_created ) if ( present ( p )) p => tmp case ( 3_IK ) call json % json_get_by_path_jsonpath_bracket ( me , path , tmp , found ,& create_it = . true .,& was_created = was_created ) if ( present ( p )) p => tmp case default if ( json % path_mode == 2_IK ) then ! the problem here is there isn't really a way to disambiguate ! the array elements, so '/a/0' could be 'a(1)' or 'a.0'. call json % throw_exception ( 'Error in json_create_by_path: ' // & 'Create by path not supported in RFC 6901 path mode.' ) else call integer_to_string ( json % path_mode , int_fmt , path_mode_str ) call json % throw_exception ( 'Error in json_create_by_path: Unsupported path_mode: ' // & trim ( path_mode_str )) end if if ( present ( found )) then call json % clear_exceptions () found = . false . end if if ( present ( was_created )) was_created = . false . end select else if ( present ( was_created )) was_created = . false . if ( present ( found )) found = . false . end if end subroutine json_create_by_path","tags":"","loc":"proc/json_create_by_path.html"},{"title":"json_get_alloc_string_vec – JSON-Fortran","text":"private subroutine json_get_alloc_string_vec(json, me, vec, ilen) Get a string vector from a json_value . This is an alternate\n version of json_get_string_vec . This one returns an allocatable\n length character (where the string length is the maximum length of\n any element in the array). It also returns an integer array of the\n actual sizes of the strings in the JSON structure. Note This is somewhat inefficient since it does\n cycle through the array twice. Warning The allocation of vec doesn’t work with\n gfortran 4.9 or 5 due to compiler bugs Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array Calls proc~~json_get_alloc_string_vec~~CallsGraph proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2 json_core%get proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_string_info->none~get~2 none~info~2 json_core%info proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_alloc_string_vec~~CalledByGraph proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2 json_core%get proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_alloc_string_vec ( json , me , vec , ilen ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len = :), dimension (:), allocatable , intent ( out ) :: vec integer ( IK ), dimension (:), allocatable , intent ( out ) :: ilen !! the actual length !! of each character !! string in the array logical ( LK ) :: initialized !! if the output array has been sized integer ( IK ) :: max_len !! the length of the longest string in the array if ( json % exception_thrown ) return ! check for 0-length arrays first: select case ( me % var_type ) case ( json_array ) if ( json % count ( me ) == 0 ) then allocate ( character ( kind = CK , len = 0 ) :: vec ( 0 )) allocate ( ilen ( 0 )) return end if end select initialized = . false . call json % string_info ( me , ilen = ilen , max_str_len = max_len ) if (. not . json % exception_thrown ) then ! now get each string using the callback function: call json % get ( me , array_callback = get_chars_from_array ) end if if ( json % exception_thrown ) then if ( allocated ( vec )) deallocate ( vec ) if ( allocated ( ilen )) deallocate ( ilen ) end if contains subroutine get_chars_from_array ( json , element , i , count ) !! callback function for chars implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: element integer ( IK ), intent ( in ) :: i !! index integer ( IK ), intent ( in ) :: count !! size of array character ( kind = CK , len = :), allocatable :: cval !! for getting string !size the output array: if (. not . initialized ) then ! string length long enough to hold the longest one ! Note that this doesn't work with gfortran 4.9 or 5. allocate ( character ( kind = CK , len = max_len ) :: vec ( count ) ) initialized = . true . end if !populate the elements: call json % get ( element , value = cval ) if ( allocated ( cval )) then vec ( i ) = cval ilen ( i ) = len ( cval ) ! return the actual length deallocate ( cval ) else vec ( i ) = CK_ '' ilen ( i ) = 0 end if end subroutine get_chars_from_array end subroutine json_get_alloc_string_vec","tags":"","loc":"proc/json_get_alloc_string_vec.html"},{"title":"json_get_alloc_string_vec_by_path – JSON-Fortran","text":"private subroutine json_get_alloc_string_vec_by_path(json, me, path, vec, ilen, found, default, default_ilen) Alternate version of json_get_alloc_string_vec where input is the path. This is an alternate version of json_get_string_vec_by_path .\n This one returns an allocatable length character (where the string\n length is the maximum length of any element in the array). It also\n returns an integer array of the actual sizes of the strings in the JSON structure. Note An alternative to using this routine is to use json_get_array with\n a callback function that gets the string from each element and populates\n a user-defined string type. Note If the default argument is used, and default_ilen is not present,\n then ilen will just be returned as the length of the default dummy\n argument (all elements with the same length). Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default integer(kind=IK), intent(in), optional, dimension(:) :: default_ilen the actual\nlength of default Calls proc~~json_get_alloc_string_vec_by_path~~CallsGraph proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2 json_core%get proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_alloc_string_vec_by_path~~CalledByGraph proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2 json_core%get proc~json_get_alloc_string_vec_by_path->none~get~2 none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_alloc_string_vec_by_path ( json , me , path , vec , ilen , found , default , default_ilen ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path character ( kind = CK , len = :), dimension (:), allocatable , intent ( out ) :: vec integer ( IK ), dimension (:), allocatable , intent ( out ) :: ilen !! the actual length !! of each character !! string in the array logical ( LK ), intent ( out ), optional :: found character ( kind = CK , len =* ), dimension (:), intent ( in ), optional :: default integer ( IK ), dimension (:), intent ( in ), optional :: default_ilen !! the actual !! length of `default` character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_alloc_string_vec_by_path' #include \"json_get_vec_by_path_alloc.inc\" end subroutine json_get_alloc_string_vec_by_path","tags":"","loc":"proc/json_get_alloc_string_vec_by_path.html"},{"title":"json_get_array – JSON-Fortran","text":"private recursive subroutine json_get_array(json, me, array_callback) This routine calls the user-supplied json_array_callback_func subroutine for each element in the array. Note For integer, real, logical, and character arrays,\n higher-level routines are provided (see get methods), so\n this routine does not have to be used for those cases. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me procedure( json_array_callback_func ) :: array_callback Calls proc~~json_get_array~~CallsGraph proc~json_get_array json_core%json_get_array none~throw_exception json_core%throw_exception proc~json_get_array->none~throw_exception proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_array~~CalledByGraph proc~json_get_array json_core%json_get_array none~get~2 json_core%get none~get~2->proc~json_get_array proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code recursive subroutine json_get_array ( json , me , array_callback ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me procedure ( json_array_callback_func ) :: array_callback type ( json_value ), pointer :: element !! temp variable for getting elements integer ( IK ) :: i !! counter integer ( IK ) :: count !! number of elements in the array if ( json % exception_thrown ) return select case ( me % var_type ) case ( json_array ) count = json % count ( me ) element => me % children do i = 1 , count ! callback for each child if (. not . associated ( element )) then call json % throw_exception ( 'Error in json_get_array: ' // & 'Malformed JSON linked list' ) return end if call array_callback ( json , element , i , count ) if ( json % exception_thrown ) exit element => element % next end do case default call json % throw_exception ( 'Error in json_get_array:' // & ' Resolved value is not an array ' ) end select end subroutine json_get_array","tags":"","loc":"proc/json_get_array.html"},{"title":"json_get_array_by_path – JSON-Fortran","text":"private recursive subroutine json_get_array_by_path(json, me, path, array_callback, found) This routine calls the user-supplied array_callback subroutine\nfor each element in the array (specified by the path). Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path procedure( json_array_callback_func ) :: array_callback logical(kind=LK), intent(out), optional :: found Calls proc~~json_get_array_by_path~~CallsGraph proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2 json_core%get proc~json_get_array_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_array_by_path->proc~json_clear_exceptions none~get~2->proc~json_get_array_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->proc~flag_not_found proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_array_by_path~~CalledByGraph proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2 json_core%get proc~json_get_array_by_path->none~get~2 none~get~2->proc~json_get_array_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code recursive subroutine json_get_array_by_path ( json , me , path , array_callback , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path procedure ( json_array_callback_func ) :: array_callback logical ( LK ), intent ( out ), optional :: found type ( json_value ), pointer :: p if ( json % exception_thrown ) then if ( present ( found ) ) found = . false . return end if nullify ( p ) ! resolve the path to the value call json % get ( me = me , path = path , p = p ) if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_get_array:' // & ' Unable to resolve path: ' // trim ( path ), found ) else call json % get ( me = p , array_callback = array_callback ) nullify ( p ) end if if ( json % exception_thrown ) then if ( present ( found ) ) then found = . false . call json % clear_exceptions () end if else if ( present ( found ) ) found = . true . end if end subroutine json_get_array_by_path","tags":"","loc":"proc/json_get_array_by_path.html"},{"title":"json_get_by_path – JSON-Fortran","text":"private subroutine json_get_by_path(json, me, path, p, found) Returns the json_value pointer given the path string. It uses one of three methods: The original JSON -Fortran defaults RFC 6901 JSONPath “bracket-notation” Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable type( json_value ), intent(out), pointer :: p pointer to the variable\nspecified by path logical(kind=LK), intent(out), optional :: found true if it was found Calls proc~~json_get_by_path~~CallsGraph proc~json_get_by_path json_core%json_get_by_path none~throw_exception json_core%throw_exception proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode none~get~2 json_core%get proc~wrap_json_value_get_child_by_name->none~get~2 none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 proc~json_info_by_path->none~get~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_by_path~~CalledByGraph proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_by_path ( json , me , path , p , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me !! a JSON linked list character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable type ( json_value ), pointer , intent ( out ) :: p !! pointer to the variable !! specified by `path` logical ( LK ), intent ( out ), optional :: found !! true if it was found character ( kind = CK , len = max_integer_str_len ), allocatable :: path_mode_str !! string version !! of `json%path_mode` nullify ( p ) if (. not . json % exception_thrown ) then select case ( json % path_mode ) case ( 1_IK ) call json % json_get_by_path_default ( me , path , p , found ) case ( 2_IK ) call json % json_get_by_path_rfc6901 ( me , path , p , found ) case ( 3_IK ) call json % json_get_by_path_jsonpath_bracket ( me , path , p , found ) case default call integer_to_string ( json % path_mode , int_fmt , path_mode_str ) call json % throw_exception ( 'Error in json_get_by_path: Unsupported path_mode: ' // & trim ( path_mode_str )) if ( present ( found )) found = . false . end select if ( present ( found )) then if (. not . found ) call json % clear_exceptions () end if else if ( present ( found )) found = . false . end if end subroutine json_get_by_path","tags":"","loc":"proc/json_get_by_path.html"},{"title":"json_get_by_path_default – JSON-Fortran","text":"private subroutine json_get_by_path_default(json, me, path, p, found, create_it, was_created) Returns the json_value pointer given the path string. Example type ( json_core ) :: json type ( json_value ), pointer :: dat , p logical :: found !... call json % initialize ( path_mode = 1 ) ! this is the default so not strictly necessary. call json % get ( dat , 'data(2).version' , p , found ) Notes The syntax used here is a subset of the http://goessner.net/articles/JsonPath/ “dot–notation”.\n The following special characters are used to denote paths: $ - root @ - this . - child object member (note this can be changed using json%path_separator ) [] or () - child array element (note that indices are 1-based) Thus, if any of these characters are present in the name key,\n this routine cannot be used to get the value.\n In that case, the get_child methods would need to be used.\n Or, the alternate json_get_by_path_rfc6901 could be used. See also json_get_by_path_rfc6901 json_get_by_path_jsonpath_bracket Note The syntax is inherited from FSON, and is basically a subset\n of JSONPath “dot-notation”, with the additional allowance of\n () for array elements. Note JSON null values are used here for unknown variables when create_it is True.\n So, it is possible that an existing null variable can be converted to another\n type (object or array) if a child is specified in the path. Doing it this way\n to avoid having to use another type (say json_unknown ) that would have to be\n converted to null once all the variables have been created (user would have\n had to do this). Warning See (**) in code. I think we need to protect for memory leaks when\n changing the type of a variable that already exists. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable type( json_value ), intent(out), pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if it was found logical(kind=LK), intent(in), optional :: create_it if a variable is not present\nin the path, then it is created.\nthe leaf node is returned as\na null json type and can be\nchanged by the caller. logical(kind=LK), intent(out), optional :: was_created if create_it is true, this\nwill be true if the variable\nwas actually created. Otherwise\nit will be false. Calls proc~~json_get_by_path_default~~CallsGraph proc~json_get_by_path_default json_core%json_get_by_path_default none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child none~throw_exception json_core%throw_exception proc~json_get_by_path_default->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_value_get_child_by_name->interface~to_unicode none~get~2 json_core%get proc~wrap_json_value_get_child_by_name->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_by_path_default~~CalledByGraph proc~json_get_by_path_default json_core%json_get_by_path_default none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create none~info~2 json_core%info proc~json_add_integer_by_path->none~info~2 proc~json_value_replace json_core%json_value_replace proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~convert json_core%convert proc~convert->none~info~2 proc~convert->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_by_path_default ( json , me , path , p , found , create_it , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me !! a JSON linked list character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable type ( json_value ), pointer , intent ( out ) :: p !! pointer to the variable !! specify by `path` logical ( LK ), intent ( out ), optional :: found !! true if it was found logical ( LK ), intent ( in ), optional :: create_it !! if a variable is not present !! in the path, then it is created. !! the leaf node is returned as !! a `null` json type and can be !! changed by the caller. logical ( LK ), intent ( out ), optional :: was_created !! if `create_it` is true, this !! will be true if the variable !! was actually created. Otherwise !! it will be false. integer ( IK ) :: i !! counter of characters in `path` integer ( IK ) :: length !! significant length of `path` integer ( IK ) :: child_i !! index for getting children character ( kind = CK , len = 1 ) :: c !! a character in the `path` logical ( LK ) :: array !! flag when searching for array index in `path` type ( json_value ), pointer :: tmp !! temp variables for getting child objects logical ( LK ) :: child_found !! if the child value was found logical ( LK ) :: create !! if the object is to be created logical ( LK ) :: created !! if `create` is true, then this will be !! true if the leaf object had to be created integer ( IK ) :: j !! counter of children when creating object logical ( LK ) :: status_ok !! integer to string conversion flag nullify ( p ) if (. not . json % exception_thrown ) then if ( present ( create_it )) then create = create_it else create = . false . end if ! default to assuming relative to me p => me child_i = 1 array = . false . created = . false . !keep trailing space or not: if ( json % trailing_spaces_significant ) then length = len ( path ) else length = len_trim ( path ) end if do i = 1 , length c = path ( i : i ) select case ( c ) case ( root ) ! root do while ( associated ( p % parent )) p => p % parent end do child_i = i + 1 if ( create ) created = . false . ! should always exist case ( this ) ! this p => me child_i = i + 1 if ( create ) created = . false . ! should always exist case ( start_array , start_array_alt ) ! start looking for the array element index array = . true . ! get child member from p if ( child_i < i ) then nullify ( tmp ) if ( create ) then ! Example: ! 'aaa.bbb(1)' ! -> and aaa is a null, need to make it an object ! ! What about the case: aaa.bbb(1)(3) ? ! Is that already handled? if ( p % var_type == json_null ) then ! (**) ! if p was also created, then we need to ! convert it into an object here: p % var_type = json_object end if ! don't want to throw exceptions in this case call json % get_child ( p , path ( child_i : i - 1 ), tmp , child_found ) if (. not . child_found ) then ! have to create this child ! [make it an array] call json_value_create ( tmp ) call json % to_array ( tmp , path ( child_i : i - 1 )) call json % add ( p , tmp ) created = . true . else created = . false . end if else ! call the normal way call json % get_child ( p , path ( child_i : i - 1 ), tmp ) end if p => tmp else child_i = i + 1 ! say, '@(' cycle end if if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_get_by_path_default:' // & ' Error getting array element' , found ) exit end if child_i = i + 1 case ( end_array , end_array_alt ) if (. not . array ) then call json % throw_exception ( 'Error in json_get_by_path_default:' // & ' Unexpected ' // c , found ) exit end if array = . false . call string_to_integer ( path ( child_i : i - 1 ), child_i , status_ok ) if (. not . status_ok ) then call json % throw_exception ( 'Error in json_get_by_path_default:' // & ' Could not convert array index to integer: ' // & trim ( path ( child_i : i - 1 )), found ) exit end if nullify ( tmp ) if ( create ) then ! don't want to throw exceptions in this case call json % get_child ( p , child_i , tmp , child_found ) if (. not . child_found ) then if ( p % var_type == json_null ) then ! (**) ! if p was also created, then we need to ! convert it into an array here: p % var_type = json_array end if ! have to create this element ! [make it a null] ! (and any missing ones before it) do j = 1 , child_i nullify ( tmp ) call json % get_child ( p , j , tmp , child_found ) if (. not . child_found ) then call json_value_create ( tmp ) call json % to_null ( tmp ) ! array element doesn't need a name call json % add ( p , tmp ) if ( j == child_i ) created = . true . else if ( j == child_i ) created = . false . end if end do else created = . false . end if else ! call the normal way: call json % get_child ( p , child_i , tmp ) end if p => tmp child_i = i + 1 case default if ( c == json % path_separator ) then ! get child member from p if ( child_i < i ) then nullify ( tmp ) if ( create ) then if ( p % var_type == json_null ) then ! (**) ! if p was also created, then we need to ! convert it into an object here: p % var_type = json_object end if ! don't want to throw exceptions in this case call json % get_child ( p , path ( child_i : i - 1 ), tmp , child_found ) if (. not . child_found ) then ! have to create this child ! [make it an object] call json_value_create ( tmp ) call json % to_object ( tmp , path ( child_i : i - 1 )) call json % add ( p , tmp ) created = . true . else created = . false . end if else ! call the normal way call json % get_child ( p , path ( child_i : i - 1 ), tmp ) end if p => tmp else child_i = i + 1 ! say '$.', '@.', or ').' cycle end if if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_get_by_path_default:' // & ' Error getting child member.' , found ) exit end if child_i = i + 1 end if end select end do if ( json % exception_thrown ) then if ( present ( found )) then nullify ( p ) ! just in case found = . false . call json % clear_exceptions () end if else ! grab the last child if present in the path if ( child_i <= length ) then nullify ( tmp ) if ( create ) then if ( p % var_type == json_null ) then ! (**) ! if p was also created, then we need to ! convert it into an object here: p % var_type = json_object end if call json % get_child ( p , path ( child_i : i - 1 ), tmp , child_found ) if (. not . child_found ) then ! have to create this child ! (make it a null since it is the leaf) call json_value_create ( tmp ) call json % to_null ( tmp , path ( child_i : i - 1 )) call json % add ( p , tmp ) created = . true . else created = . false . end if else ! call the normal way call json % get_child ( p , path ( child_i : i - 1 ), tmp ) end if p => tmp else ! we already have p if ( create . and . created ) then ! make leaf p a null, but only ! if it wasn't there call json % to_null ( p ) end if end if ! error checking if ( associated ( p )) then if ( present ( found )) found = . true . !everything seems to be ok else call json % throw_exception ( 'Error in json_get_by_path_default:' // & ' variable not found: ' // trim ( path ), found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if end if end if ! if it had to be created: if ( present ( was_created )) was_created = created else if ( present ( found )) found = . false . if ( present ( was_created )) was_created = . false . end if end subroutine json_get_by_path_default","tags":"","loc":"proc/json_get_by_path_default.html"},{"title":"json_get_by_path_jsonpath_bracket – JSON-Fortran","text":"private subroutine json_get_by_path_jsonpath_bracket(json, me, path, p, found, create_it, was_created) Returns the json_value pointer given the path string,\n using the “ JSON Pointer” path specification defined by the\n JSONPath “bracket-notation”. The first character $ is optional, and signifies the root\n of the structure. If it is not present, then the first key\n is taken to be in the me object. Single or real quotes may be used. Example type ( json_core ) :: json type ( json_value ), pointer :: dat , p logical :: found !... call json % initialize ( path_mode = 3 ) call json % get ( dat , \"$['store']['book'][1]['title']\" , p , found ) See also json_get_by_path_default json_get_by_path_rfc6901 Reference JSONPath Note Uses 1-based array indices (same as json_get_by_path_default ,\n but unlike json_get_by_path_rfc6901 which uses 0-based indices). Note When create_it=True , if the variable already exists and is a type\n that is not compatible with the usage in the path , then it is\n destroyed and replaced with what is specified in the path . Note that\n this applies the all variables in the path as it is created. Currently,\n this behavior is different from json_get_by_path_default . Note JSON null values are used here for unknown variables\n when create_it is True. Warning Note that if using single quotes, this routine cannot parse\n a key containing '] . If using real quotes, this routine\n cannot parse a key containing \"] . If the key contains both '] and \"] , there is no way to parse it using this routine. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable\n(using JSONPath\n“bracket-notation”) type( json_value ), intent(out), pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if it was found logical(kind=LK), intent(in), optional :: create_it if a variable is not present\nin the path, then it is created.\nthe leaf node is returned as\na null json type and can be\nchanged by the caller. logical(kind=LK), intent(out), optional :: was_created if create_it is true, this\nwill be true if the variable\nwas actually created. Otherwise\nit will be false. Calls proc~~json_get_by_path_jsonpath_bracket~~CallsGraph proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket none~add~4 json_core%add proc~json_get_by_path_jsonpath_bracket->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_jsonpath_bracket->none~get_child none~throw_exception json_core%throw_exception proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_value_create json_value_create proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~string_to_integer string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_null->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_value_get_child_by_name->interface~to_unicode none~get~2 json_core%get proc~wrap_json_value_get_child_by_name->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 proc~json_info_by_path->none~get~2 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~wrap_json_value_create_object->interface~to_unicode proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~to_array->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~string_to_integer proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_default->proc~to_array proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_by_path_jsonpath_bracket~~CalledByGraph proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket none~get_child json_core%get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create none~info~2 json_core%info proc~json_add_integer_by_path->none~info~2 proc~json_value_replace json_core%json_value_replace proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~convert->none~info~2 proc~convert->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_by_path_jsonpath_bracket ( json , me , path , p , found , create_it , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me !! a JSON linked list character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable !! (using JSONPath !! \"bracket-notation\") type ( json_value ), pointer , intent ( out ) :: p !! pointer to the variable !! specify by `path` logical ( LK ), intent ( out ), optional :: found !! true if it was found logical ( LK ), intent ( in ), optional :: create_it !! if a variable is not present !! in the path, then it is created. !! the leaf node is returned as !! a `null` json type and can be !! changed by the caller. logical ( LK ), intent ( out ), optional :: was_created !! if `create_it` is true, this !! will be true if the variable !! was actually created. Otherwise !! it will be false. character ( kind = CK , len = :), allocatable :: token !! a token in the path !! (between the `['']` or !! `[]` characters) integer ( IK ) :: istart !! location of current '[' !! character in the path integer ( IK ) :: iend !! location of current ']' !! character in the path integer ( IK ) :: ival !! integer array index value logical ( LK ) :: status_ok !! error flag type ( json_value ), pointer :: tmp !! temporary variable for !! traversing the structure integer ( IK ) :: i !! counter integer ( IK ) :: ilen !! length of `path` string logical ( LK ) :: real_quotes !! if the keys are enclosed in `\"`, !! rather than `'` tokens. logical ( LK ) :: create !! if the object is to be created logical ( LK ) :: created !! if `create` is true, then this will be !! true if the leaf object had to be created integer ( IK ) :: j !! counter of children when creating object !TODO instead of reallocating `token` all the time, just ! allocate a big size and keep track of the length, ! then just reallocate only if necessary. ! [would probably be inefficient if there was a very large token, ! and then a bunch of small ones... but for similarly-sized ones ! it should be way more efficient since it would avoid most ! reallocations.] nullify ( p ) if (. not . json % exception_thrown ) then if ( present ( create_it )) then create = create_it else create = . false . end if p => me ! initialize created = . false . if ( path == CK_ '' ) then call json % throw_exception ( 'Error in json_get_by_path_jsonpath_bracket: ' // & 'invalid path specification: ' // trim ( path ), found ) else if ( path ( 1 : 1 ) == root . or . path ( 1 : 1 ) == start_array ) then ! the first character must be ! a `$` (root) or a `[` ! (element of `me`) if ( path ( 1 : 1 ) == root ) then ! go to the root do while ( associated ( p % parent )) p => p % parent end do if ( create ) created = . false . ! should always exist end if !path length (don't need trailing spaces:) ilen = len_trim ( path ) if ( ilen > 1 ) then istart = 2 ! initialize first '[' location index do if ( istart > ilen ) exit ! finished ! must be the next start bracket: if ( path ( istart : istart ) /= start_array ) then call json % throw_exception (& 'Error in json_get_by_path_jsonpath_bracket: ' // & 'expecting \"[\", found: \"' // trim ( path ( istart : istart )) // & '\" in path: ' // trim ( path ), found ) exit end if ! get the next token by checking: ! ! * [''] -- is the token after istart a quote? ! if so, then search for the next `']` ! ! * [1] -- if not, then maybe it is a number, ! so search for the next `]` ! verify length of remaining string if ( istart + 2 <= ilen ) then real_quotes = path ( istart + 1 : istart + 1 ) == quotation_mark ! [\" if ( real_quotes . or . path ( istart + 1 : istart + 1 ) == single_quote ) then ! [' ! it might be a key value: ['abc'] istart = istart + 1 ! move counter to ' index if ( real_quotes ) then iend = istart + index ( path ( istart + 1 : ilen ),& quotation_mark // end_array ) ! \"] else iend = istart + index ( path ( istart + 1 : ilen ),& single_quote // end_array ) ! '] end if if ( iend > istart ) then ! istart iend ! | | ! ['p']['abcdefg'] if ( iend > istart + 1 ) then token = path ( istart + 1 : iend - 1 ) else token = CK_ '' ! blank string end if ! remove trailing spaces in ! the token here if necessary: if (. not . json % trailing_spaces_significant ) & token = trim ( token ) if ( create ) then ! have a token, create it if necessary ! we need to convert it into an object here ! (e.g., if p was also just created) ! and destroy its data to prevent a memory leak call json % convert ( p , json_object ) ! don't want to throw exceptions in this case call json % get_child ( p , token , tmp , status_ok ) if (. not . status_ok ) then ! have to create this child ! [make it a null since we don't ! know what it is yet] call json_value_create ( tmp ) call json % to_null ( tmp , token ) call json % add ( p , tmp ) status_ok = . true . created = . true . else ! it was already there. created = . false . end if else ! have a token, see if it is valid: call json % get_child ( p , token , tmp , status_ok ) end if if ( status_ok ) then ! it was found p => tmp else call json % throw_exception (& 'Error in json_get_by_path_jsonpath_bracket: ' // & 'invalid token found: \"' // token // & '\" in path: ' // trim ( path ), found ) exit end if iend = iend + 1 ! move counter to ] index else call json % throw_exception (& 'Error in json_get_by_path_jsonpath_bracket: ' // & 'invalid path: ' // trim ( path ), found ) exit end if else ! it might be an integer value: [123] iend = istart + index ( path ( istart + 1 : ilen ), end_array ) ! ] if ( iend > istart + 1 ) then ! this should be an integer: token = path ( istart + 1 : iend - 1 ) ! verify that there are no spaces or other ! characters in the string: status_ok = . true . do i = 1 , len ( token ) ! It must only contain (0..9) characters ! (it must be unsigned) if ( scan ( token ( i : i ), CK_ '0123456789' ) < 1 ) then status_ok = . false . exit end if end do if ( status_ok ) then call string_to_integer ( token , ival , status_ok ) if ( status_ok ) status_ok = ival > 0 ! assuming 1-based array indices end if if ( status_ok ) then ! have a valid integer to use as an index ! see if this element is really there: call json % get_child ( p , ival , tmp , status_ok ) if ( create . and . . not . status_ok ) then ! have to create it: if (. not .( p % var_type == json_object . or . p % var_type == json_array )) then ! we need to convert it into an array here ! (e.g., if p was also just created) ! and destroy its data to prevent a memory leak call json % convert ( p , json_array ) end if ! have to create this element ! [make it a null] ! (and any missing ones before it) do j = 1 , ival nullify ( tmp ) call json % get_child ( p , j , tmp , status_ok ) if (. not . status_ok ) then call json_value_create ( tmp ) call json % to_null ( tmp ) ! array element doesn't need a name call json % add ( p , tmp ) if ( j == ival ) created = . true . else if ( j == ival ) created = . false . end if end do status_ok = . true . else created = . false . end if if ( status_ok ) then ! found it p => tmp else ! not found call json % throw_exception (& 'Error in json_get_by_path_jsonpath_bracket: ' // & 'invalid array index found: \"' // token // & '\" in path: ' // trim ( path ), found ) exit end if else call json % throw_exception (& 'Error in json_get_by_path_jsonpath_bracket: ' // & 'invalid token: \"' // token // & '\" in path: ' // trim ( path ), found ) exit end if else call json % throw_exception (& 'Error in json_get_by_path_jsonpath_bracket: ' // & 'invalid path: ' // trim ( path ), found ) exit end if end if else call json % throw_exception (& 'Error in json_get_by_path_jsonpath_bracket: ' // & 'invalid path: ' // trim ( path ), found ) exit end if ! set up for next token: istart = iend + 1 end do end if else call json % throw_exception (& 'Error in json_get_by_path_jsonpath_bracket: ' // & 'expecting \"' // root // '\", found: \"' // path ( 1 : 1 ) // & '\" in path: ' // trim ( path ), found ) end if end if if ( json % exception_thrown ) then nullify ( p ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if else if ( present ( found )) found = . true . end if ! if it had to be created: if ( present ( was_created )) was_created = created else if ( present ( found )) found = . false . if ( present ( was_created )) was_created = . false . end if end subroutine json_get_by_path_jsonpath_bracket","tags":"","loc":"proc/json_get_by_path_jsonpath_bracket.html"},{"title":"json_get_by_path_rfc6901 – JSON-Fortran","text":"private subroutine json_get_by_path_rfc6901(json, me, path, p, found) Returns the json_value pointer given the path string,\n using the “ JSON Pointer” path specification defined by RFC 6901. Note that trailing whitespace significance and case sensitivity\n are user-specified. To fully conform to the RFC 6901 standard,\n should probably set (via initialize ): case_sensitive_keys = .true. [this is the default setting] trailing_spaces_significant = .true. [this is not the default setting] allow_duplicate_keys = .false. [this is not the default setting] Example type ( json_core ) :: json type ( json_value ), pointer :: dat , p logical :: found !... call json % initialize ( path_mode = 2 ) call json % get ( dat , '/data/2/version' , p , found ) See also json_get_by_path_default json_get_by_path_jsonpath_bracket Reference JavaScript Object Notation ( JSON ) Pointer Note Not doing anything special about the - character to index an array.\n This is considered a normal error. Note Unlike in the default path mode, the array indices here are 0-based\n (in accordance with the RFC 6901 standard) Warning Not checking if the member that is referenced is unique.\n (according to the standard, evaluation of non-unique references\n should fail). Like json_get_by_path_default , this one will just return\n the first instance it encounters. This might be changed in the future. Warning I think the standard indicates that the input paths should use\n escaped JSON strings (currently we are assuming they are not escaped). Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable\n(an RFC 6901 “ JSON Pointer”) type( json_value ), intent(out), pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if it was found Calls proc~~json_get_by_path_rfc6901~~CallsGraph proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 none~get_child json_core%get_child proc~json_get_by_path_rfc6901->none~get_child none~throw_exception json_core%throw_exception proc~json_get_by_path_rfc6901->none~throw_exception proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~string_to_integer string_to_integer proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_value_get_child_by_name->interface~to_unicode none~get~2 json_core%get proc~wrap_json_value_get_child_by_name->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~get_child proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_by_path_rfc6901~~CalledByGraph proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 none~get_child json_core%get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_by_path_rfc6901 ( json , me , path , p , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me !! a JSON linked list character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable !! (an RFC 6901 \"JSON Pointer\") type ( json_value ), pointer , intent ( out ) :: p !! pointer to the variable !! specify by `path` logical ( LK ), intent ( out ), optional :: found !! true if it was found character ( kind = CK , len = :), allocatable :: token !! a token in the path (between the `/` characters) integer ( IK ) :: i !! counter integer ( IK ) :: islash_curr !! location of current '/' character in the path integer ( IK ) :: islash_next !! location of next '/' character in the path integer ( IK ) :: ilen !! length of `path` string type ( json_value ), pointer :: tmp !! temporary variable for traversing the structure integer ( IK ) :: ival !! integer array index value (0-based) logical ( LK ) :: status_ok !! error flag logical ( LK ) :: child_found !! for getting child values nullify ( p ) if (. not . json % exception_thrown ) then p => me ! initialize if ( path /= CK_ '' ) then if ( path ( 1 : 1 ) == slash ) then ! the first character must be a slash islash_curr = 1 ! initialize current slash index !keep trailing space or not: if ( json % trailing_spaces_significant ) then ilen = len ( path ) else ilen = len_trim ( path ) end if do ! get the next token by finding the slashes ! ! 1 2 3 ! /abc/d/efg if ( islash_curr == ilen ) then !the last token is an empty string token = CK_ '' islash_next = 0 ! will signal to stop else ! . ! '/123/567/' ! index in remaining string: islash_next = index ( path ( islash_curr + 1 : ilen ), slash ) if ( islash_next <= 0 ) then !last token: token = path ( islash_curr + 1 : ilen ) else ! convert to actual index in path: islash_next = islash_curr + index ( path ( islash_curr + 1 : ilen ), slash ) if ( islash_next > islash_curr + 1 ) then token = path ( islash_curr + 1 : islash_next - 1 ) else !empty token: token = CK_ '' end if end if end if ! remove trailing spaces in the token here if necessary: if (. not . json % trailing_spaces_significant ) & token = trim ( token ) ! decode the token: token = decode_rfc6901 ( token ) ! now, parse the token: ! first see if there is a child with this name call json % get_child ( p , token , tmp , child_found ) if ( child_found ) then ! it was found p => tmp else ! No key with this name. ! Is it an integer? If so, ! it might be an array index. status_ok = ( len ( token ) > 0 ) if ( status_ok ) then do i = 1 , len ( token ) ! It must only contain (0..9) characters ! (it must be unsigned) if ( scan ( token ( i : i ), CK_ '0123456789' ) < 1 ) then status_ok = . false . exit end if end do if ( status_ok ) then if ( len ( token ) > 1 . and . token ( 1 : 1 ) == CK_ '0' ) then ! leading zeros not allowed for some reason status_ok = . false . end if end if if ( status_ok ) then ! if we make it this far, it should be ! convertible to an integer, so do it. call string_to_integer ( token , ival , status_ok ) end if end if if ( status_ok ) then ! ival is an array index (0-based) call json % get_child ( p , ival + 1_IK , tmp , child_found ) if ( child_found ) then p => tmp else ! not found status_ok = . false . end if end if if (. not . status_ok ) then call json % throw_exception ( 'Error in json_get_by_path_rfc6901: ' // & 'invalid path specification: ' // trim ( path ), found ) exit end if end if if ( islash_next <= 0 ) exit ! finished ! set up for next token: islash_curr = islash_next end do else call json % throw_exception ( 'Error in json_get_by_path_rfc6901: ' // & 'invalid path specification: ' // trim ( path ), found ) end if end if if ( json % exception_thrown ) then nullify ( p ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if else if ( present ( found )) found = . true . end if else if ( present ( found )) found = . false . end if end subroutine json_get_by_path_rfc6901","tags":"","loc":"proc/json_get_by_path_rfc6901.html"},{"title":"json_get_integer – JSON-Fortran","text":"private subroutine json_get_integer(json, me, value) Get an integer value from a json_value . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me integer(kind=IK), intent(out) :: value the integer value Calls proc~~json_get_integer~~CallsGraph proc~json_get_integer json_core%json_get_integer none~throw_exception json_core%throw_exception proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_integer~~CalledByGraph proc~json_get_integer json_core%json_get_integer none~get~2 json_core%get none~get~2->proc~json_get_integer proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_integer ( json , me , value ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me integer ( IK ), intent ( out ) :: value !! the integer value logical ( LK ) :: status_ok !! for [[string_to_integer]] value = 0_IK if ( json % exception_thrown ) return if ( me % var_type == json_integer ) then value = me % int_value else if ( json % strict_type_checking ) then if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_integer:' // & ' Unable to resolve value to integer: ' // me % name ) else call json % throw_exception ( 'Error in json_get_integer:' // & ' Unable to resolve value to integer' ) end if else !type conversions select case ( me % var_type ) case ( json_real ) value = int ( me % dbl_value , IK ) case ( json_logical ) if ( me % log_value ) then value = 1_IK else value = 0_IK end if case ( json_string ) call string_to_integer ( me % str_value , value , status_ok ) if (. not . status_ok ) then value = 0_IK if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_integer:' // & ' Unable to convert string value to integer: ' // & me % name // ' = ' // trim ( me % str_value )) else call json % throw_exception ( 'Error in json_get_integer:' // & ' Unable to convert string value to integer: ' // & trim ( me % str_value )) end if end if case default if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_integer:' // & ' Unable to resolve value to integer: ' // me % name ) else call json % throw_exception ( 'Error in json_get_integer:' // & ' Unable to resolve value to integer' ) end if end select end if end if end subroutine json_get_integer","tags":"","loc":"proc/json_get_integer.html"},{"title":"json_get_integer_by_path – JSON-Fortran","text":"private subroutine json_get_integer_by_path(json, me, path, value, found, default) Get an integer value from a json_value , given the path string. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path integer(kind=IK), intent(out) :: value logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(in), optional :: default default value if not found Calls proc~~json_get_integer_by_path~~CallsGraph proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2 json_core%get proc~json_get_integer_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_integer_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_integer_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_integer_by_path->proc~json_clear_exceptions none~get~2->proc~json_get_integer_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_integer_by_path~~CalledByGraph proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2 json_core%get proc~json_get_integer_by_path->none~get~2 none~get~2->proc~json_get_integer_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_integer_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path integer ( IK ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found integer ( IK ), intent ( in ), optional :: default !! default value if not found integer ( IK ), parameter :: default_if_not_specified = 0_IK character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_integer_by_path' #include \"json_get_scalar_by_path.inc\" end subroutine json_get_integer_by_path","tags":"","loc":"proc/json_get_integer_by_path.html"},{"title":"json_get_integer_vec – JSON-Fortran","text":"private subroutine json_get_integer_vec(json, me, vec) Get an integer vector from a json_value . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me integer(kind=IK), intent(out), dimension(:), allocatable :: vec Calls proc~~json_get_integer_vec~~CallsGraph proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2 json_core%get proc~json_get_integer_vec->none~get~2 none~get~2->proc~json_get_integer_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_integer_vec~~CalledByGraph proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2 json_core%get proc~json_get_integer_vec->none~get~2 none~get~2->proc~json_get_integer_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_integer_vec ( json , me , vec ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me integer ( IK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ) :: initialized if ( json % exception_thrown ) return ! check for 0-length arrays first: select case ( me % var_type ) case ( json_array ) if ( json % count ( me ) == 0 ) then allocate ( vec ( 0 )) return end if end select initialized = . false . !the callback function is called for each element of the array: call json % get ( me , array_callback = get_int_from_array ) if ( json % exception_thrown . and . allocated ( vec )) deallocate ( vec ) contains subroutine get_int_from_array ( json , element , i , count ) !! callback function for integer implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: element integer ( IK ), intent ( in ) :: i !! index integer ( IK ), intent ( in ) :: count !! size of array !size the output array: if (. not . initialized ) then allocate ( vec ( count )) initialized = . true . end if !populate the elements: call json % get ( element , value = vec ( i )) end subroutine get_int_from_array end subroutine json_get_integer_vec","tags":"","loc":"proc/json_get_integer_vec.html"},{"title":"json_get_integer_vec_by_path – JSON-Fortran","text":"private subroutine json_get_integer_vec_by_path(json, me, path, vec, found, default) Get an integer vector from a json_value , given the path string. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path integer(kind=IK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(in), optional, dimension(:) :: default default value if not found Calls proc~~json_get_integer_vec_by_path~~CallsGraph proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2 json_core%get proc~json_get_integer_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_integer_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_integer_vec_by_path->proc~json_clear_exceptions none~get~2->proc~json_get_integer_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_integer_vec_by_path~~CalledByGraph proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2 json_core%get proc~json_get_integer_vec_by_path->none~get~2 none~get~2->proc~json_get_integer_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_integer_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path integer ( IK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found integer ( IK ), dimension (:), intent ( in ), optional :: default !! default value if not found character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_integer_vec_by_path' #include \"json_get_vec_by_path.inc\" end subroutine json_get_integer_vec_by_path","tags":"","loc":"proc/json_get_integer_vec_by_path.html"},{"title":"json_get_logical – JSON-Fortran","text":"private subroutine json_get_logical(json, me, value) Get a logical value from a json_value . Note If strict_type_checking is False, then the following assumptions are made: For integers: a value > 0 is True For reals: a value > 0 is True For strings: ‘true’ is True, and everything else is false. [case sensitive match] Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me logical(kind=LK), intent(out) :: value Calls proc~~json_get_logical~~CallsGraph proc~json_get_logical json_core%json_get_logical none~throw_exception json_core%throw_exception proc~json_get_logical->none~throw_exception proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_logical~~CalledByGraph proc~json_get_logical json_core%json_get_logical none~get~2 json_core%get none~get~2->proc~json_get_logical proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_logical ( json , me , value ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me logical ( LK ), intent ( out ) :: value value = . false . if ( json % exception_thrown ) return if ( me % var_type == json_logical ) then value = me % log_value else if ( json % strict_type_checking ) then if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_logical: ' // & 'Unable to resolve value to logical: ' // & me % name ) else call json % throw_exception ( 'Error in json_get_logical: ' // & 'Unable to resolve value to logical' ) end if else !type conversions select case ( me % var_type ) case ( json_integer ) value = ( me % int_value > 0_IK ) case ( json_real ) value = ( me % dbl_value > 0.0_RK ) case ( json_string ) value = ( me % str_value == true_str ) case default if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_logical: ' // & 'Unable to resolve value to logical: ' // & me % name ) else call json % throw_exception ( 'Error in json_get_logical: ' // & 'Unable to resolve value to logical' ) end if end select end if end if end subroutine json_get_logical","tags":"","loc":"proc/json_get_logical.html"},{"title":"json_get_logical_by_path – JSON-Fortran","text":"private subroutine json_get_logical_by_path(json, me, path, value, found, default) Get a logical value from a json_value , given the path. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path logical(kind=LK), intent(out) :: value logical(kind=LK), intent(out), optional :: found logical(kind=LK), intent(in), optional :: default default value if not found Calls proc~~json_get_logical_by_path~~CallsGraph proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2 json_core%get proc~json_get_logical_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_logical_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_logical_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_logical_by_path->proc~json_clear_exceptions none~get~2->proc~json_get_logical_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_logical_by_path~~CalledByGraph proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2 json_core%get proc~json_get_logical_by_path->none~get~2 none~get~2->proc~json_get_logical_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_logical_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path logical ( LK ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found logical ( LK ), intent ( in ), optional :: default !! default value if not found logical ( LK ), parameter :: default_if_not_specified = . false . character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_logical_by_path' #include \"json_get_scalar_by_path.inc\" end subroutine json_get_logical_by_path","tags":"","loc":"proc/json_get_logical_by_path.html"},{"title":"json_get_logical_vec – JSON-Fortran","text":"private subroutine json_get_logical_vec(json, me, vec) Get a logical vector from json_value . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me logical(kind=LK), intent(out), dimension(:), allocatable :: vec Calls proc~~json_get_logical_vec~~CallsGraph proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2 json_core%get proc~json_get_logical_vec->none~get~2 none~get~2->proc~json_get_logical_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_logical_vec~~CalledByGraph proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2 json_core%get proc~json_get_logical_vec->none~get~2 none~get~2->proc~json_get_logical_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_logical_vec ( json , me , vec ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me logical ( LK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ) :: initialized if ( json % exception_thrown ) return ! check for 0-length arrays first: select case ( me % var_type ) case ( json_array ) if ( json % count ( me ) == 0 ) then allocate ( vec ( 0 )) return end if end select initialized = . false . !the callback function is called for each element of the array: call json % get ( me , array_callback = get_logical_from_array ) if ( json % exception_thrown . and . allocated ( vec )) deallocate ( vec ) contains subroutine get_logical_from_array ( json , element , i , count ) !! callback function for logical implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: element integer ( IK ), intent ( in ) :: i !! index integer ( IK ), intent ( in ) :: count !! size of array !size the output array: if (. not . initialized ) then allocate ( vec ( count )) initialized = . true . end if !populate the elements: call json % get ( element , value = vec ( i )) end subroutine get_logical_from_array end subroutine json_get_logical_vec","tags":"","loc":"proc/json_get_logical_vec.html"},{"title":"json_get_logical_vec_by_path – JSON-Fortran","text":"private subroutine json_get_logical_vec_by_path(json, me, path, vec, found, default) Get a logical vector from a json_value , given the path. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path logical(kind=LK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found logical(kind=LK), intent(in), optional, dimension(:) :: default Calls proc~~json_get_logical_vec_by_path~~CallsGraph proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2 json_core%get proc~json_get_logical_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_logical_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_logical_vec_by_path->proc~json_clear_exceptions none~get~2->proc~json_get_logical_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_logical_vec_by_path~~CalledByGraph proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2 json_core%get proc~json_get_logical_vec_by_path->none~get~2 none~get~2->proc~json_get_logical_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_logical_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path logical ( LK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found logical ( LK ), dimension (:), intent ( in ), optional :: default character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_logical_vec_by_path' #include \"json_get_vec_by_path.inc\" end subroutine json_get_logical_vec_by_path","tags":"","loc":"proc/json_get_logical_vec_by_path.html"},{"title":"json_get_next – JSON-Fortran","text":"private subroutine json_get_next(json, p, next) Returns a pointer to the next of a json_value .\nIf there is no next, then a null() pointer is returned. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p JSON object type( json_value ), intent(out), pointer :: next pointer to next Calls proc~~json_get_next~~CallsGraph proc~json_get_next json_core%json_get_next none~throw_exception json_core%throw_exception proc~json_get_next->none~throw_exception proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_next ( json , p , next ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! JSON object type ( json_value ), pointer , intent ( out ) :: next !! pointer to `next` if ( associated ( p )) then next => p % next else nullify ( next ) call json % throw_exception ( 'Error in json_get_next: ' // & 'pointer is not associated.' ) end if end subroutine json_get_next","tags":"","loc":"proc/json_get_next.html"},{"title":"json_get_parent – JSON-Fortran","text":"private subroutine json_get_parent(json, p, parent) Returns a pointer to the parent of a json_value .\nIf there is no parent, then a null() pointer is returned. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p JSON object type( json_value ), intent(out), pointer :: parent pointer to parent Calls proc~~json_get_parent~~CallsGraph proc~json_get_parent json_core%json_get_parent none~throw_exception json_core%throw_exception proc~json_get_parent->none~throw_exception proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_parent ( json , p , parent ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! JSON object type ( json_value ), pointer , intent ( out ) :: parent !! pointer to `parent` if ( associated ( p )) then parent => p % parent else nullify ( parent ) call json % throw_exception ( 'Error in json_get_parent: ' // & 'pointer is not associated.' ) end if end subroutine json_get_parent","tags":"","loc":"proc/json_get_parent.html"},{"title":"json_get_path – JSON-Fortran","text":"private subroutine json_get_path(json, p, path, found, use_alt_array_tokens, path_sep) Returns the path to a JSON object that is part\n of a linked list structure. The path returned would be suitable for input to json_get_by_path and related routines. Note If an error occurs (which in this case means a malformed JSON structure) then an exception will be thrown, unless found is present, which will be set to false . path will be a blank string. Note If json%path_mode/=1 , then the use_alt_array_tokens and path_sep inputs are ignored if present. Note http://goessner.net/articles/JsonPath/ ( path_mode=3 )\n does not specify whether or not the keys should be escaped (this routine\n assumes not, as does http://jsonpath.com).\n Also, we are using Fortran-style 1-based array indices,\n not 0-based, to agree with the assumption in path_mode=1 Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list object character(kind=CK, len=:), intent(out), allocatable :: path path to the variable logical(kind=LK), intent(out), optional :: found true if there were no problems logical(kind=LK), intent(in), optional :: use_alt_array_tokens if true, then ‘()’ are used for array elements\notherwise, ‘[]’ are used [default]\n(only used if path_mode=1 ) character(kind=CK, len=1), intent(in), optional :: path_sep character to use for path separator\n(otherwise use json%path_separator )\n(only used if path_mode=1 ) Calls proc~~json_get_path~~CallsGraph proc~json_get_path json_core%json_get_path none~info~2 json_core%info proc~json_get_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_get_path->none~throw_exception proc~encode_rfc6901 encode_rfc6901 proc~json_get_path->proc~encode_rfc6901 proc~integer_to_string integer_to_string proc~json_get_path->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_path->proc~json_clear_exceptions proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~replace_string replace_string proc~encode_rfc6901->proc~replace_string proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~wrap_json_info_by_path->none~info~2 interface~to_unicode to_unicode proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_path~~CalledByGraph proc~json_get_path json_core%json_get_path none~get_path json_core%get_path none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_path proc~wrap_json_get_path->none~get_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_path ( json , p , path , found , use_alt_array_tokens , path_sep ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! a JSON linked list object character ( kind = CK , len = :), allocatable , intent ( out ) :: path !! path to the variable logical ( LK ), intent ( out ), optional :: found !! true if there were no problems logical ( LK ), intent ( in ), optional :: use_alt_array_tokens !! if true, then '()' are used for array elements !! otherwise, '[]' are used [default] !! (only used if `path_mode=1`) character ( kind = CK , len = 1 ), intent ( in ), optional :: path_sep !! character to use for path separator !! (otherwise use `json%path_separator`) !! (only used if `path_mode=1`) character ( kind = CK , len = :), allocatable :: name !! variable name character ( kind = CK , len = :), allocatable :: parent_name !! variable's parent name character ( kind = CK , len = max_integer_str_len ) :: istr !! for integer to string conversion !! (array indices) type ( json_value ), pointer :: tmp !! for traversing the structure type ( json_value ), pointer :: element !! for traversing the structure integer ( IK ) :: var_type !! JSON variable type flag integer ( IK ) :: i !! counter integer ( IK ) :: n_children !! number of children for parent logical ( LK ) :: use_brackets !! to use '[]' characters for arrays logical ( LK ) :: parent_is_root !! if the parent is the root character ( kind = CK , len = 1 ) :: array_start !! for `path_mode=1`, the character to start arrays character ( kind = CK , len = 1 ) :: array_end !! for `path_mode=1`, the character to end arrays logical :: consecutive_arrays !! check for array of array case integer ( IK ) :: parents_parent_var_type !! `var_type` for parent's parent !optional input: if ( present ( use_alt_array_tokens )) then use_brackets = . not . use_alt_array_tokens else use_brackets = . true . end if if ( json % path_mode == 1_IK ) then if ( use_brackets ) then array_start = start_array array_end = end_array else array_start = start_array_alt array_end = end_array_alt end if end if ! initialize: consecutive_arrays = . false . if ( associated ( p )) then !traverse the structure via parents up to the root tmp => p do if (. not . associated ( tmp )) exit !finished !get info about the current variable: call json % info ( tmp , name = name ) if ( json % path_mode == 2_IK ) then name = encode_rfc6901 ( name ) end if ! if tmp a child of an object, or an element of an array if ( associated ( tmp % parent )) then !get info about the parent: call json % info ( tmp % parent , var_type = var_type ,& n_children = n_children , name = parent_name ) if ( json % path_mode == 2_IK ) then parent_name = encode_rfc6901 ( parent_name ) end if if ( associated ( tmp % parent % parent )) then call json % info ( tmp % parent % parent , var_type = parents_parent_var_type ) consecutive_arrays = parents_parent_var_type == json_array . and . & var_type == json_array else consecutive_arrays = . false . end if select case ( var_type ) case ( json_array ) !get array index of this element: element => tmp % parent % children do i = 1 , n_children if (. not . associated ( element )) then call json % throw_exception ( 'Error in json_get_path: ' // & 'malformed JSON structure. ' , found ) exit end if if ( associated ( element , tmp )) then exit else element => element % next end if if ( i == n_children ) then ! it wasn't found (should never happen) call json % throw_exception ( 'Error in json_get_path: ' // & 'malformed JSON structure. ' , found ) exit end if end do select case ( json % path_mode ) case ( 3_IK ) ! JSONPath \"bracket-notation\" ! example: `$['key'][1]` ! [note: this uses 1-based indices] call integer_to_string ( i , int_fmt , istr ) if ( consecutive_arrays ) then call add_to_path ( start_array // trim ( adjustl ( istr )) // end_array , CK_ '' ) else call add_to_path ( start_array // single_quote // parent_name // & single_quote // end_array // & start_array // trim ( adjustl ( istr )) // end_array , CK_ '' ) end if case ( 2_IK ) ! rfc6901 ! Example: '/key/0' call integer_to_string ( i - 1_IK , int_fmt , istr ) ! 0-based index if ( consecutive_arrays ) then call add_to_path ( trim ( adjustl ( istr ))) else call add_to_path ( parent_name // slash // trim ( adjustl ( istr ))) end if case ( 1_IK ) ! default ! Example: `key[1]` call integer_to_string ( i , int_fmt , istr ) if ( consecutive_arrays ) then call add_to_path ( array_start // trim ( adjustl ( istr )) // array_end , path_sep ) else call add_to_path ( parent_name // array_start // & trim ( adjustl ( istr )) // array_end , path_sep ) end if end select if (. not . consecutive_arrays ) tmp => tmp % parent ! already added parent name case ( json_object ) if (. not . consecutive_arrays ) then ! idea is not to print the array name if ! it was already printed with the array !process parent on the next pass select case ( json % path_mode ) case ( 3_IK ) call add_to_path ( start_array // single_quote // name // & single_quote // end_array , CK_ '' ) case default call add_to_path ( name , path_sep ) end select end if case default call json % throw_exception ( 'Error in json_get_path: ' // & 'malformed JSON structure. ' // & 'A variable that is not an object ' // & 'or array should not have a child.' , found ) exit end select else !the last one: select case ( json % path_mode ) case ( 3_IK ) call add_to_path ( start_array // single_quote // name // & single_quote // end_array , CK_ '' ) case default call add_to_path ( name , path_sep ) end select end if if ( associated ( tmp % parent )) then !check if the parent is the root: parent_is_root = (. not . associated ( tmp % parent % parent )) if ( parent_is_root ) exit end if !go to parent: tmp => tmp % parent end do else call json % throw_exception ( 'Error in json_get_path: ' // & 'input pointer is not associated' , found ) end if !for errors, return blank string: if ( json % exception_thrown . or . . not . allocated ( path )) then path = CK_ '' else select case ( json % path_mode ) case ( 3_IK ) ! add the outer level object identifier: path = root // path case ( 2_IK ) ! add the root slash: path = slash // path end select end if !optional output: if ( present ( found )) then if ( json % exception_thrown ) then found = . false . call json % clear_exceptions () else found = . true . end if end if contains subroutine add_to_path ( str , path_sep ) !! prepend the string to the path implicit none character ( kind = CK , len =* ), intent ( in ) :: str !! string to prepend to `path` character ( kind = CK , len =* ), intent ( in ), optional :: path_sep !! path separator (default is '.'). !! (ignored if `json%path_mode/=1`) select case ( json % path_mode ) case ( 3_IK ) ! in this case, the options are ignored if (. not . allocated ( path )) then path = str else path = str // path end if case ( 2_IK ) ! in this case, the options are ignored if (. not . allocated ( path )) then path = str else path = str // slash // path end if case ( 1_IK ) ! default path format if (. not . allocated ( path )) then path = str else ! shouldn't add the path_sep for cases like x[1][2] ! [if current is an array element, and the previous was ! also an array element] so check for that here: if (. not . ( str ( len ( str ): len ( str )) == array_end . and . & path ( 1 : 1 ) == array_start )) then if ( present ( path_sep )) then ! use user specified: path = str // path_sep // path else ! use the default: path = str // json % path_separator // path end if else path = str // path end if end if end select end subroutine add_to_path end subroutine json_get_path","tags":"","loc":"proc/json_get_path.html"},{"title":"json_get_previous – JSON-Fortran","text":"private subroutine json_get_previous(json, p, previous) Returns a pointer to the previous of a json_value .\nIf there is no previous, then a null() pointer is returned. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p JSON object type( json_value ), intent(out), pointer :: previous pointer to previous Calls proc~~json_get_previous~~CallsGraph proc~json_get_previous json_core%json_get_previous none~throw_exception json_core%throw_exception proc~json_get_previous->none~throw_exception proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_previous ( json , p , previous ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! JSON object type ( json_value ), pointer , intent ( out ) :: previous !! pointer to `previous` if ( associated ( p )) then previous => p % previous else nullify ( previous ) call json % throw_exception ( 'Error in json_get_previous: ' // & 'pointer is not associated.' ) end if end subroutine json_get_previous","tags":"","loc":"proc/json_get_previous.html"},{"title":"json_get_real – JSON-Fortran","text":"private subroutine json_get_real(json, me, value) Get a real value from a json_value . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me real(kind=RK), intent(out) :: value Calls proc~~json_get_real~~CallsGraph proc~json_get_real json_core%json_get_real none~throw_exception json_core%throw_exception proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_real~~CalledByGraph proc~json_get_real json_core%json_get_real none~get~2 json_core%get none~get~2->proc~json_get_real proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_real ( json , me , value ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me real ( RK ), intent ( out ) :: value logical ( LK ) :: status_ok !! for [[string_to_real]] value = 0.0_RK if ( json % exception_thrown ) return if ( me % var_type == json_real ) then value = me % dbl_value else if ( json % strict_type_checking ) then if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_real:' // & ' Unable to resolve value to real: ' // me % name ) else call json % throw_exception ( 'Error in json_get_real:' // & ' Unable to resolve value to real' ) end if else !type conversions select case ( me % var_type ) case ( json_integer ) value = real ( me % int_value , RK ) case ( json_logical ) if ( me % log_value ) then value = 1.0_RK else value = 0.0_RK end if case ( json_string ) call string_to_real ( me % str_value , json % use_quiet_nan , value , status_ok ) if (. not . status_ok ) then value = 0.0_RK if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_real:' // & ' Unable to convert string value to real: ' // & me % name // ' = ' // trim ( me % str_value )) else call json % throw_exception ( 'Error in json_get_real:' // & ' Unable to convert string value to real: ' // & trim ( me % str_value )) end if end if case ( json_null ) if ( ieee_support_nan ( value ) . and . json % null_to_real_mode /= 1_IK ) then select case ( json % null_to_real_mode ) case ( 2_IK ) if ( json % use_quiet_nan ) then value = ieee_value ( value , ieee_quiet_nan ) else value = ieee_value ( value , ieee_signaling_nan ) end if case ( 3_IK ) value = 0.0_RK end select else if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_real:' // & ' Cannot convert null to NaN: ' // me % name ) else call json % throw_exception ( 'Error in json_get_real:' // & ' Cannot convert null to NaN' ) end if end if case default if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_real:' // & ' Unable to resolve value to real: ' // me % name ) else call json % throw_exception ( 'Error in json_get_real:' // & ' Unable to resolve value to real' ) end if end select end if end if end subroutine json_get_real","tags":"","loc":"proc/json_get_real.html"},{"title":"json_get_real32 – JSON-Fortran","text":"private subroutine json_get_real32(json, me, value) Alternate version of json_get_real where value=real32. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me real(kind=real32), intent(out) :: value Calls proc~~json_get_real32~~CallsGraph proc~json_get_real32 json_core%json_get_real32 none~get~2 json_core%get proc~json_get_real32->none~get~2 none~get~2->proc~json_get_real32 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_real32~~CalledByGraph proc~json_get_real32 json_core%json_get_real32 none~get~2 json_core%get proc~json_get_real32->none~get~2 none~get~2->proc~json_get_real32 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_real32 ( json , me , value ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me real ( real32 ), intent ( out ) :: value real ( RK ) :: tmp call json % get ( me , tmp ) value = real ( tmp , real32 ) end subroutine json_get_real32","tags":"","loc":"proc/json_get_real32.html"},{"title":"json_get_real32_by_path – JSON-Fortran","text":"private subroutine json_get_real32_by_path(json, me, path, value, found, default) Alternate version of json_get_real_by_path where value=real32. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CK, len=*), intent(in) :: path real(kind=real32), intent(out) :: value logical(kind=LK), intent(out), optional :: found real(kind=real32), intent(in), optional :: default default value if not found Calls proc~~json_get_real32_by_path~~CallsGraph proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2 json_core%get proc~json_get_real32_by_path->none~get~2 none~get~2->proc~json_get_real32_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_real32_by_path~~CalledByGraph proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2 json_core%get proc~json_get_real32_by_path->none~get~2 none~get~2->proc~json_get_real32_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_real32_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CK , len =* ), intent ( in ) :: path real ( real32 ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found real ( real32 ), intent ( in ), optional :: default !! default value if not found real ( RK ) :: tmp real ( RK ) :: tmp_default if ( present ( default )) then tmp_default = real ( default , RK ) call json % get ( me , path , tmp , found , tmp_default ) else call json % get ( me , path , tmp , found ) end if value = real ( tmp , real32 ) end subroutine json_get_real32_by_path","tags":"","loc":"proc/json_get_real32_by_path.html"},{"title":"json_get_real32_vec – JSON-Fortran","text":"private subroutine json_get_real32_vec(json, me, vec) Alternate version of json_get_real_vec where vec is real32 . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me real(kind=real32), intent(out), dimension(:), allocatable :: vec Calls proc~~json_get_real32_vec~~CallsGraph proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2 json_core%get proc~json_get_real32_vec->none~get~2 none~get~2->proc~json_get_real32_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_real32_vec~~CalledByGraph proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2 json_core%get proc~json_get_real32_vec->none~get~2 none~get~2->proc~json_get_real32_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_real32_vec ( json , me , vec ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me real ( real32 ), dimension (:), allocatable , intent ( out ) :: vec real ( RK ), dimension (:), allocatable :: tmp call json % get ( me , tmp ) if ( allocated ( tmp )) vec = real ( tmp , real32 ) end subroutine json_get_real32_vec","tags":"","loc":"proc/json_get_real32_vec.html"},{"title":"json_get_real32_vec_by_path – JSON-Fortran","text":"private subroutine json_get_real32_vec_by_path(json, me, path, vec, found, default) Alternate version of json_get_real_vec_by_path where vec is real32 . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path real(kind=real32), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found real(kind=real32), intent(in), optional, dimension(:) :: default default value if not found Calls proc~~json_get_real32_vec_by_path~~CallsGraph proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2 json_core%get proc~json_get_real32_vec_by_path->none~get~2 none~get~2->proc~json_get_real32_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_real32_vec_by_path~~CalledByGraph proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2 json_core%get proc~json_get_real32_vec_by_path->none~get~2 none~get~2->proc~json_get_real32_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_real32_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path real ( real32 ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found real ( real32 ), dimension (:), intent ( in ), optional :: default !! default value if not found real ( RK ), dimension (:), allocatable :: tmp real ( RK ), dimension (:), allocatable :: tmp_default if ( present ( default )) then tmp_default = real ( default , RK ) call json % get ( me , path , tmp , found , tmp_default ) else call json % get ( me , path , tmp , found ) end if if ( allocated ( tmp )) vec = real ( tmp , real32 ) end subroutine json_get_real32_vec_by_path","tags":"","loc":"proc/json_get_real32_vec_by_path.html"},{"title":"json_get_real_by_path – JSON-Fortran","text":"private subroutine json_get_real_by_path(json, me, path, value, found, default) Get a real value from a json_value , given the path. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CK, len=*), intent(in) :: path real(kind=RK), intent(out) :: value logical(kind=LK), intent(out), optional :: found real(kind=RK), intent(in), optional :: default default value if not found Calls proc~~json_get_real_by_path~~CallsGraph proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2 json_core%get proc~json_get_real_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_real_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_real_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_real_by_path->proc~json_clear_exceptions none~get~2->proc~json_get_real_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_real_by_path~~CalledByGraph proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2 json_core%get proc~json_get_real_by_path->none~get~2 none~get~2->proc~json_get_real_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_real_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CK , len =* ), intent ( in ) :: path real ( RK ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found real ( RK ), intent ( in ), optional :: default !! default value if not found real ( RK ), parameter :: default_if_not_specified = 0.0_RK character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_real_by_path' #include \"json_get_scalar_by_path.inc\" end subroutine json_get_real_by_path","tags":"","loc":"proc/json_get_real_by_path.html"},{"title":"json_get_real_vec – JSON-Fortran","text":"private subroutine json_get_real_vec(json, me, vec) Get a real vector from a json_value . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me real(kind=RK), intent(out), dimension(:), allocatable :: vec Calls proc~~json_get_real_vec~~CallsGraph proc~json_get_real_vec json_core%json_get_real_vec none~get~2 json_core%get proc~json_get_real_vec->none~get~2 none~get~2->proc~json_get_real_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_real_vec~~CalledByGraph proc~json_get_real_vec json_core%json_get_real_vec none~get~2 json_core%get proc~json_get_real_vec->none~get~2 none~get~2->proc~json_get_real_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_real_vec ( json , me , vec ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me real ( RK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ) :: initialized if ( json % exception_thrown ) return ! check for 0-length arrays first: select case ( me % var_type ) case ( json_array ) if ( json % count ( me ) == 0 ) then allocate ( vec ( 0 )) return end if end select initialized = . false . !the callback function is called for each element of the array: call json % get ( me , array_callback = get_real_from_array ) if ( json % exception_thrown . and . allocated ( vec )) deallocate ( vec ) contains subroutine get_real_from_array ( json , element , i , count ) !! callback function for real implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: element integer ( IK ), intent ( in ) :: i !! index integer ( IK ), intent ( in ) :: count !! size of array !size the output array: if (. not . initialized ) then allocate ( vec ( count )) initialized = . true . end if !populate the elements: call json % get ( element , value = vec ( i )) end subroutine get_real_from_array end subroutine json_get_real_vec","tags":"","loc":"proc/json_get_real_vec.html"},{"title":"json_get_real_vec_by_path – JSON-Fortran","text":"private subroutine json_get_real_vec_by_path(json, me, path, vec, found, default) Get a real vector from a json_value , given the path. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path real(kind=RK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found real(kind=RK), intent(in), optional, dimension(:) :: default default value if not found Calls proc~~json_get_real_vec_by_path~~CallsGraph proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2 json_core%get proc~json_get_real_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_real_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_real_vec_by_path->proc~json_clear_exceptions none~get~2->proc~json_get_real_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_real_vec_by_path~~CalledByGraph proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2 json_core%get proc~json_get_real_vec_by_path->none~get~2 none~get~2->proc~json_get_real_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_real_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path real ( RK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found real ( RK ), dimension (:), intent ( in ), optional :: default !! default value if not found character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_real_vec_by_path' #include \"json_get_vec_by_path.inc\" end subroutine json_get_real_vec_by_path","tags":"","loc":"proc/json_get_real_vec_by_path.html"},{"title":"json_get_string – JSON-Fortran","text":"private subroutine json_get_string(json, me, value) Get a character string from a json_value . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=:), intent(out), allocatable :: value Calls proc~~json_get_string~~CallsGraph proc~json_get_string json_core%json_get_string none~throw_exception json_core%throw_exception proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~integer_to_string integer_to_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_string~~CalledByGraph proc~json_get_string json_core%json_get_string none~get~2 json_core%get none~get~2->proc~json_get_string proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_string ( json , me , value ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len = :), allocatable , intent ( out ) :: value value = CK_ '' if (. not . json % exception_thrown ) then if ( me % var_type == json_string ) then if ( allocated ( me % str_value )) then if ( json % unescaped_strings ) then ! default: it is stored already unescaped: value = me % str_value else ! return the escaped version: call escape_string ( me % str_value , value , json % escape_solidus ) end if else call json % throw_exception ( 'Error in json_get_string: ' // & 'me%str_value not allocated' ) end if else if ( json % strict_type_checking ) then if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_string:' // & ' Unable to resolve value to string: ' // me % name ) else call json % throw_exception ( 'Error in json_get_string:' // & ' Unable to resolve value to string' ) end if else select case ( me % var_type ) case ( json_integer ) if ( allocated ( me % int_value )) then value = repeat ( space , max_integer_str_len ) call integer_to_string ( me % int_value , int_fmt , value ) value = trim ( value ) else call json % throw_exception ( 'Error in json_get_string: ' // & 'me%int_value not allocated' ) end if case ( json_real ) if ( allocated ( me % dbl_value )) then value = repeat ( space , max_numeric_str_len ) call real_to_string ( me % dbl_value , json % real_fmt ,& json % non_normals_to_null ,& json % compact_real , value ) value = trim ( value ) else call json % throw_exception ( 'Error in json_get_string: ' // & 'me%int_value not allocated' ) end if case ( json_logical ) if ( allocated ( me % log_value )) then if ( me % log_value ) then value = true_str else value = false_str end if else call json % throw_exception ( 'Error in json_get_string: ' // & 'me%log_value not allocated' ) end if case ( json_null ) value = null_str case default if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_string: ' // & 'Unable to resolve value to characters: ' // & me % name ) else call json % throw_exception ( 'Error in json_get_string: ' // & 'Unable to resolve value to characters' ) end if end select end if end if end if end subroutine json_get_string","tags":"","loc":"proc/json_get_string.html"},{"title":"json_get_string_by_path – JSON-Fortran","text":"private subroutine json_get_string_by_path(json, me, path, value, found, default) Get a character string from a json_value , given the path. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path character(kind=CK, len=:), intent(out), allocatable :: value logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional :: default Calls proc~~json_get_string_by_path~~CallsGraph proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2 json_core%get proc~json_get_string_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_string_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_string_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_string_by_path->proc~json_clear_exceptions none~get~2->proc~json_get_string_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_string_by_path~~CalledByGraph proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2 json_core%get proc~json_get_string_by_path->none~get~2 none~get~2->proc~json_get_string_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_string_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path character ( kind = CK , len = :), allocatable , intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found character ( kind = CK , len =* ), intent ( in ), optional :: default character ( kind = CK , len =* ), parameter :: default_if_not_specified = CK_ '' character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_string_by_path' #include \"json_get_scalar_by_path.inc\" end subroutine json_get_string_by_path","tags":"","loc":"proc/json_get_string_by_path.html"},{"title":"json_get_string_vec – JSON-Fortran","text":"private subroutine json_get_string_vec(json, me, vec) Get a string vector from a json_value . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec Calls proc~~json_get_string_vec~~CallsGraph proc~json_get_string_vec json_core%json_get_string_vec none~get~2 json_core%get proc~json_get_string_vec->none~get~2 none~get~2->proc~json_get_string_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_string_vec~~CalledByGraph proc~json_get_string_vec json_core%json_get_string_vec none~get~2 json_core%get proc~json_get_string_vec->none~get~2 none~get~2->proc~json_get_string_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_string_vec ( json , me , vec ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ) :: initialized if ( json % exception_thrown ) return ! check for 0-length arrays first: select case ( me % var_type ) case ( json_array ) if ( json % count ( me ) == 0 ) then allocate ( vec ( 0 )) return end if end select initialized = . false . !the callback function is called for each element of the array: call json % get ( me , array_callback = get_chars_from_array ) if ( json % exception_thrown . and . allocated ( vec )) deallocate ( vec ) contains subroutine get_chars_from_array ( json , element , i , count ) !! callback function for chars implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: element integer ( IK ), intent ( in ) :: i !! index integer ( IK ), intent ( in ) :: count !! size of array character ( kind = CK , len = :), allocatable :: cval !size the output array: if (. not . initialized ) then allocate ( vec ( count )) initialized = . true . end if !populate the elements: call json % get ( element , value = cval ) if ( allocated ( cval )) then vec ( i ) = cval deallocate ( cval ) else vec ( i ) = CK_ '' end if end subroutine get_chars_from_array end subroutine json_get_string_vec","tags":"","loc":"proc/json_get_string_vec.html"},{"title":"json_get_string_vec_by_path – JSON-Fortran","text":"private subroutine json_get_string_vec_by_path(json, me, path, vec, found, default) Get a string vector from a json_value , given the path. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default Calls proc~~json_get_string_vec_by_path~~CallsGraph proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2 json_core%get proc~json_get_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_string_vec_by_path->proc~json_clear_exceptions none~get~2->proc~json_get_string_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_string_vec_by_path~~CalledByGraph proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2 json_core%get proc~json_get_string_vec_by_path->none~get~2 none~get~2->proc~json_get_string_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_string_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path character ( kind = CK , len =* ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found character ( kind = CK , len =* ), dimension (:), intent ( in ), optional :: default character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_string_vec_by_path' #include \"json_get_vec_by_path.inc\" end subroutine json_get_string_vec_by_path","tags":"","loc":"proc/json_get_string_vec_by_path.html"},{"title":"json_get_tail – JSON-Fortran","text":"private subroutine json_get_tail(json, p, tail) Returns a pointer to the tail of a json_value (the last child of an array of object).\nIf there is no tail, then a null() pointer is returned. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p JSON object type( json_value ), intent(out), pointer :: tail pointer to tail Calls proc~~json_get_tail~~CallsGraph proc~json_get_tail json_core%json_get_tail none~throw_exception json_core%throw_exception proc~json_get_tail->none~throw_exception proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_tail ( json , p , tail ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! JSON object type ( json_value ), pointer , intent ( out ) :: tail !! pointer to `tail` if ( associated ( p )) then tail => p % tail else nullify ( tail ) call json % throw_exception ( 'Error in json_get_tail: ' // & 'pointer is not associated.' ) end if end subroutine json_get_tail","tags":"","loc":"proc/json_get_tail.html"},{"title":"json_info – JSON-Fortran","text":"private subroutine json_info(json, p, var_type, n_children, name) Returns information about a json_value . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(out), optional :: var_type variable type integer(kind=IK), intent(out), optional :: n_children number of children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name Calls proc~~json_info~~CallsGraph proc~json_info json_core%json_info none~throw_exception json_core%throw_exception proc~json_info->none~throw_exception proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_info~~CalledByGraph proc~json_info json_core%json_info none~info~2 json_core%info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info json_core%json_matrix_info proc~json_matrix_info->none~info~2 none~get_child json_core%get_child proc~json_matrix_info->none~get_child proc~json_string_info json_core%json_string_info proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_info_by_path->none~info~2 none~get_path json_core%get_path none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~matrix_info~2 json_core%matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~string_info json_core%string_info none~string_info->proc~json_string_info proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_path proc~json_check_children_for_duplicate_keys->none~get_child proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec->none~get~2 proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_matrix_info_by_path->none~get~2 proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_variable_info->none~info proc~wrap_json_get_path->none~get_path proc~wrap_json_matrix_info_by_path->none~matrix_info~2 none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2->proc~json_get_alloc_string_vec none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~insert_after->proc~json_value_insert_after_child_by_index none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_value_replace->none~insert_after proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_info ( json , p , var_type , n_children , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p integer ( IK ), intent ( out ), optional :: var_type !! variable type integer ( IK ), intent ( out ), optional :: n_children !! number of children character ( kind = CK , len = :), allocatable , intent ( out ), optional :: name !! variable name if (. not . json % exception_thrown . and . associated ( p )) then if ( present ( var_type )) var_type = p % var_type if ( present ( n_children )) n_children = json % count ( p ) if ( present ( name )) then if ( allocated ( p % name )) then name = p % name else name = CK_ '' end if end if else ! error if (. not . json % exception_thrown ) then call json % throw_exception ( 'Error in json_info: ' // & 'pointer is not associated.' ) end if if ( present ( var_type )) var_type = json_unknown if ( present ( n_children )) n_children = 0 if ( present ( name )) name = CK_ '' end if end subroutine json_info","tags":"","loc":"proc/json_info.html"},{"title":"json_info_by_path – JSON-Fortran","text":"private subroutine json_info_by_path(json, p, path, found, var_type, n_children, name) Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable logical(kind=LK), intent(out), optional :: found true if it was found integer(kind=IK), intent(out), optional :: var_type variable type integer(kind=IK), intent(out), optional :: n_children number of children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name Calls proc~~json_info_by_path~~CallsGraph proc~json_info_by_path json_core%json_info_by_path none~get~2 json_core%get proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path none~info~2->proc~json_info_by_path proc~json_info json_core%json_info none~info~2->proc~json_info proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_info->none~throw_exception proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_info_by_path~~CalledByGraph proc~json_info_by_path json_core%json_info_by_path none~info~2 json_core%info proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info json_core%json_matrix_info proc~json_matrix_info->none~info~2 none~get_child json_core%get_child proc~json_matrix_info->none~get_child proc~json_string_info json_core%json_string_info proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_info_by_path->none~info~2 none~get_path json_core%get_path none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~matrix_info~2 json_core%matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~string_info json_core%string_info none~string_info->proc~json_string_info proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_path proc~json_check_children_for_duplicate_keys->none~get_child proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec->none~get~2 proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_matrix_info_by_path->none~get~2 proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_variable_info->none~info proc~wrap_json_get_path->none~get_path proc~wrap_json_matrix_info_by_path->none~matrix_info~2 none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2->proc~json_get_alloc_string_vec none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~insert_after->proc~json_value_insert_after_child_by_index none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_value_replace->none~insert_after proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_info_by_path ( json , p , path , found , var_type , n_children , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! a JSON linked list character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable logical ( LK ), intent ( out ), optional :: found !! true if it was found integer ( IK ), intent ( out ), optional :: var_type !! variable type integer ( IK ), intent ( out ), optional :: n_children !! number of children character ( kind = CK , len = :), allocatable , intent ( out ), optional :: name !! variable name type ( json_value ), pointer :: p_var !! temporary pointer logical ( LK ) :: ok !! if the variable was found #if defined __GFORTRAN__ character ( kind = CK , len = :), allocatable :: p_name !! temporary variable for getting name #endif call json % get ( p , path , p_var , found ) !check if it was found: if ( present ( found )) then ok = found else ok = . not . json % exception_thrown end if if (. not . ok ) then if ( present ( var_type )) var_type = json_unknown if ( present ( n_children )) n_children = 0 if ( present ( name )) name = CK_ '' else !get info: #if defined __GFORTRAN__ call json % info ( p_var , var_type , n_children ) if ( present ( name )) then !workaround for gfortran bug if ( allocated ( p_var % name )) then p_name = p_var % name name = p_name else name = CK_ '' end if end if #else call json % info ( p_var , var_type , n_children , name ) #endif end if end subroutine json_info_by_path","tags":"","loc":"proc/json_info_by_path.html"},{"title":"json_initialize – JSON-Fortran","text":"private subroutine json_initialize(me, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) Initialize the json_core instance. The routine may be called before any of the json_core methods are used in\n order to specify certain parameters. If it is not called, then the defaults\n are used. This routine is also called internally by various routines.\n It can also be called to clear exceptions, or to reset some\n of the variables (note that only the arguments present are changed). Modified Izaak Beekman : 02/24/2015 Note initialize_json_core , json_initialize , initialize_json_core_in_file , and initialize_json_file all have a similar interface. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: me logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: 1 : Default mode (see json_get_by_path_default ) 2 : as RFC 6901 “ JSON Pointer” paths\n (see json_get_by_path_rfc6901 ) 3 : JSONPath “bracket-notation”\n see json_get_by_path_jsonpath_bracket ) character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys If True [default] then no special checks\n are done to check for duplicate keys. If False, then after parsing, if any duplicate\n keys are found, an error is thrown. A call to json_value_validate will also check for\n duplicates. logical(kind=LK), intent(in), optional :: escape_solidus If True then the solidus “ / ” is always escaped\n “ \\/ ” when serializing JSON If False [default], then it is not escaped. Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : 1 : an exception will be raised if\n try to retrieve a null as a real. 2 : a null retrieved as a real\n will return a NaN. [default] 3 : a null retrieved as a real\n will return 0.0. integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: 1 : as strings (e.g., “NaN”,\n “Infinity”, “-Infinity”) [default] 2 : as JSON null values logical(kind=LK), intent(in), optional :: use_quiet_nan If true [default], null_to_real_mode=2 and string_to_real will use ieee_quiet_nan for NaN values. If false, ieee_signaling_nan will be used. logical(kind=LK), intent(in), optional :: strict_integer_type_checking If false, when parsing JSON , if an integer numeric value\n cannot be converted to an integer ( integer(IK) ),\n then an attempt is then make to convert it\n to a real ( real(RK) ). If true, an exception will be raised if the integer\n value cannot be read. (default is true) logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Calls proc~~json_initialize~~CallsGraph proc~json_initialize json_core%json_initialize none~throw_exception json_core%throw_exception proc~json_initialize->none~throw_exception proc~integer_to_string integer_to_string proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_initialize~~CalledByGraph proc~json_initialize json_core%json_initialize proc~initialize_json_core initialize_json_core proc~initialize_json_core->proc~json_initialize proc~initialize_json_core_in_file json_file%initialize_json_core_in_file proc~initialize_json_core_in_file->proc~json_initialize proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~json_initialize proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~json_initialize interface~json_core json_core interface~json_core->proc~initialize_json_core none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~initialize json_file%initialize none~initialize->proc~initialize_json_core_in_file none~load~2 json_core%load none~load~2->proc~json_parse_file proc~initialize_json_file initialize_json_file proc~initialize_json_file->none~initialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~initialize none~deserialize json_file%deserialize proc~initialize_json_file_from_string->none~deserialize proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~json_file_move_pointer json_file%json_file_move_pointer proc~json_file_move_pointer->none~initialize proc~wrap_json_parse_string->none~deserialize~2 interface~json_file json_file interface~json_file->proc~initialize_json_file interface~json_file->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_initialize ( me ,& #include \"json_initialize_dummy_arguments.inc\" ) implicit none class ( json_core ), intent ( inout ) :: me #include \"json_initialize_arguments.inc\" character ( kind = CDK , len = 10 ) :: w !! max string length character ( kind = CDK , len = 10 ) :: d !! real precision digits character ( kind = CDK , len = 10 ) :: e !! real exponent digits character ( kind = CDK , len = 2 ) :: sgn !! sign flag: `ss` or `sp` character ( kind = CDK , len = 2 ) :: rl_edit_desc !! `G`, `E`, `EN`, or `ES` integer ( IK ) :: istat !! `iostat` flag for !! write statements logical ( LK ) :: sgn_prnt !! print sign flag character ( kind = CK , len = max_integer_str_len ) :: istr !! for integer to !! string conversion !reset exception to false: call me % clear_exceptions () !Just in case, clear these global variables also: me % pushed_index = 0 me % pushed_char = CK_ '' me % char_count = 0 me % line_count = 1 me % ipos = 1 if ( use_unformatted_stream ) then me % filesize = 0 me % ichunk = 0 me % chunk = repeat ( space , stream_chunk_size ) ! default chunk size end if #ifdef USE_UCS4 ! reopen stdout and stderr with utf-8 encoding open ( output_unit , encoding = 'utf-8' ) open ( error_unit , encoding = 'utf-8' ) #endif !various optional inputs: if ( present ( spaces_per_tab )) & me % spaces_per_tab = spaces_per_tab if ( present ( stop_on_error )) & me % stop_on_error = stop_on_error if ( present ( verbose )) & me % is_verbose = verbose if ( present ( strict_type_checking )) & me % strict_type_checking = strict_type_checking if ( present ( trailing_spaces_significant )) & me % trailing_spaces_significant = trailing_spaces_significant if ( present ( case_sensitive_keys )) & me % case_sensitive_keys = case_sensitive_keys if ( present ( no_whitespace )) & me % no_whitespace = no_whitespace if ( present ( unescape_strings )) & me % unescaped_strings = unescape_strings if ( present ( path_mode )) then if ( path_mode == 1_IK . or . path_mode == 2_IK . or . path_mode == 3_IK ) then me % path_mode = path_mode else me % path_mode = 1_IK ! just to have a valid value call me % throw_exception ( 'Invalid path_mode.' ) end if end if ! if we are allowing comments in the file: ! [an empty string disables comments] if ( present ( comment_char )) then me % allow_comments = comment_char /= CK_ '' me % comment_char = trim ( adjustl ( comment_char )) end if ! path separator: if ( present ( path_separator )) then me % path_separator = path_separator end if ! printing vectors in compressed form: if ( present ( compress_vectors )) then me % compress_vectors = compress_vectors end if ! checking for duplicate keys: if ( present ( allow_duplicate_keys )) then me % allow_duplicate_keys = allow_duplicate_keys end if ! if escaping the forward slash: if ( present ( escape_solidus )) then me % escape_solidus = escape_solidus end if ! how to handle null to real conversions: if ( present ( null_to_real_mode )) then select case ( null_to_real_mode ) case ( 1_IK : 3_IK ) me % null_to_real_mode = null_to_real_mode case default me % null_to_real_mode = 2_IK ! just to have a valid value call integer_to_string ( null_to_real_mode , int_fmt , istr ) call me % throw_exception ( 'Invalid null_to_real_mode: ' // istr ) end select end if ! how to handle NaN and Infinities: if ( present ( non_normal_mode )) then select case ( non_normal_mode ) case ( 1_IK ) ! use strings me % non_normals_to_null = . false . case ( 2_IK ) ! use null me % non_normals_to_null = . true . case default call integer_to_string ( non_normal_mode , int_fmt , istr ) call me % throw_exception ( 'Invalid non_normal_mode: ' // istr ) end select end if if ( present ( use_quiet_nan )) then me % use_quiet_nan = use_quiet_nan end if if ( present ( strict_integer_type_checking )) then me % strict_integer_type_checking = strict_integer_type_checking end if if ( present ( allow_trailing_comma )) then me % allow_trailing_comma = allow_trailing_comma end if !Set the format for real numbers: ! [if not changing it, then it remains the same] if ( (. not . allocated ( me % real_fmt )) . or . & ! if this hasn't been done yet present ( compact_reals ) . or . & present ( print_signs ) . or . & present ( real_format ) ) then !allow the special case where real format is '*': ! [this overrides the other options] if ( present ( real_format )) then if ( real_format == star ) then if ( present ( compact_reals )) then ! we will also allow for compact reals with ! '*' format, if both arguments are present. me % compact_real = compact_reals else me % compact_real = . false . end if me % real_fmt = star return end if end if if ( present ( compact_reals )) me % compact_real = compact_reals !set defaults sgn_prnt = . false . if ( present ( print_signs ) ) sgn_prnt = print_signs if ( sgn_prnt ) then sgn = 'sp' else sgn = 'ss' end if rl_edit_desc = 'E' if ( present ( real_format ) ) then select case ( real_format ) case ( 'g' , 'G' , 'e' , 'E' , 'en' , 'EN' , 'es' , 'ES' ) rl_edit_desc = real_format case default call me % throw_exception ( 'Invalid real format, \"' // & trim ( real_format ) // '\", passed to json_initialize.' // & new_line ( 'a' ) // 'Acceptable formats are: \"G\", \"E\", \"EN\", and \"ES\".' ) end select end if ! set the default output/input format for reals: write ( w , '(ss,I0)' , iostat = istat ) max_numeric_str_len if ( istat == 0 ) write ( d , '(ss,I0)' , iostat = istat ) real_precision if ( istat == 0 ) write ( e , '(ss,I0)' , iostat = istat ) real_exponent_digits if ( istat == 0 ) then me % real_fmt = '(' // sgn // ',' // trim ( rl_edit_desc ) // & trim ( w ) // '.' // trim ( d ) // 'E' // trim ( e ) // ')' else me % real_fmt = '(' // sgn // ',' // trim ( rl_edit_desc ) // & '27.17E4)' !just use this one (should never happen) end if end if end subroutine json_initialize","tags":"","loc":"proc/json_initialize.html"},{"title":"json_matrix_info – JSON-Fortran","text":"private subroutine json_matrix_info(json, p, is_matrix, var_type, n_sets, set_size, name) Alternate version of json_info that returns matrix\n information about a json_value . A json_value is a valid rank 2 matrix if all of the following are true: The var_type is json_array Each child is also a json_array , each of which has the same number of elements Each individual element has the same variable type (integer, logical, etc.) The idea here is that if it is a valid matrix, it can be interoperable with\n a Fortran rank 2 array of the same type. Example The following example is an array with var_type=json_integer , n_sets=3 , and set_size=4 { \"matrix\" : [ [ 1 , 2 , 3 , 4 ], [ 5 , 6 , 7 , 8 ], [ 9 , 10 , 11 , 12 ] ] } Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a JSON linked list logical(kind=LK), intent(out) :: is_matrix true if it is a valid matrix integer(kind=IK), intent(out), optional :: var_type variable type of data in the matrix\n(if all elements have the same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name Calls proc~~json_matrix_info~~CallsGraph proc~json_matrix_info json_core%json_matrix_info none~get_child json_core%get_child proc~json_matrix_info->none~get_child none~info~2 json_core%info proc~json_matrix_info->none~info~2 none~throw_exception json_core%throw_exception proc~json_matrix_info->none~throw_exception proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~wrap_json_info_by_path->none~info~2 interface~to_unicode to_unicode proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->proc~flag_not_found proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~get_child proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~convert->none~info~2 proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->none~get~2 proc~json_string_info->proc~json_clear_exceptions proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_matrix_info~~CalledByGraph proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2 json_core%matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info->none~matrix_info Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_matrix_info ( json , p , is_matrix , var_type , n_sets , set_size , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! a JSON linked list logical ( LK ), intent ( out ) :: is_matrix !! true if it is a valid matrix 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 type ( json_value ), pointer :: p_row !! for getting a set type ( json_value ), pointer :: p_element !! for getting an element in a set integer ( IK ) :: vartype !! json variable type of `p` integer ( IK ) :: row_vartype !! json variable type of a row integer ( IK ) :: element_vartype !! json variable type of an element in a row integer ( IK ) :: nr !! number of children of `p` integer ( IK ) :: nc !! number of elements in first child of `p` integer ( IK ) :: icount !! number of elements in a set integer ( IK ) :: i !! counter integer ( IK ) :: j !! counter #if defined __GFORTRAN__ character ( kind = CK , len = :), allocatable :: p_name !! temporary variable for getting name #endif !get info about the variable: #if defined __GFORTRAN__ call json % info ( p , vartype , nr ) if ( present ( name )) then !workaround for gfortran bug if ( allocated ( p % name )) then p_name = p % name name = p_name else name = CK_ '' end if end if #else call json % info ( p , vartype , nr , name ) #endif is_matrix = ( vartype == json_array ) if ( is_matrix ) then main : do i = 1 , nr nullify ( p_row ) call json % get_child ( p , i , p_row ) if (. not . associated ( p_row )) then is_matrix = . false . call json % throw_exception ( 'Error in json_matrix_info: ' // & 'Malformed JSON linked list' ) exit main end if call json % info ( p_row , var_type = row_vartype , n_children = icount ) if ( row_vartype == json_array ) then if ( i == 1 ) nc = icount !number of columns in first row if ( icount == nc ) then !make sure each row has the same number of columns !see if all the variables in this row are the same type: do j = 1 , icount nullify ( p_element ) call json % get_child ( p_row , j , p_element ) if (. not . associated ( p_element )) then is_matrix = . false . call json % throw_exception ( 'Error in json_matrix_info: ' // & 'Malformed JSON linked list' ) exit main end if call json % info ( p_element , var_type = element_vartype ) if ( i == 1 . and . j == 1 ) vartype = element_vartype !type of first element !in the row if ( vartype /= element_vartype ) then !not all variables are the same time is_matrix = . false . exit main end if end do else is_matrix = . false . exit main end if else is_matrix = . false . exit main end if end do main end if if ( is_matrix ) then if ( present ( var_type )) var_type = vartype if ( present ( n_sets )) n_sets = nr if ( present ( set_size )) set_size = nc else if ( present ( var_type )) var_type = json_unknown if ( present ( n_sets )) n_sets = 0 if ( present ( set_size )) set_size = 0 end if end subroutine json_matrix_info","tags":"","loc":"proc/json_matrix_info.html"},{"title":"json_matrix_info_by_path – JSON-Fortran","text":"private subroutine json_matrix_info_by_path(json, p, path, is_matrix, found, var_type, n_sets, set_size, name) Returns matrix information about a json_value , given the path. See also json_matrix_info Note If found is present, no exceptions will be thrown if an\n error occurs. Otherwise, an exception will be thrown if the\n variable is not found. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a JSON linked list character(kind=CK, 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\nthe matrix (if all elements have\nthe same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name Calls proc~~json_matrix_info_by_path~~CallsGraph proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~get~2 json_core%get proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_matrix_info_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found none~get_child json_core%get_child proc~json_matrix_info->none~get_child none~info~2 json_core%info proc~json_matrix_info->none~info~2 proc~json_matrix_info->none~throw_exception proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_matrix_info_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->none~get_child proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~convert->none~info~2 proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_string_info->none~get~2 proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_matrix_info_by_path~~CalledByGraph proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 none~matrix_info~2->proc~json_matrix_info_by_path proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info->none~matrix_info Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_matrix_info_by_path ( json , p , path , is_matrix , found ,& var_type , n_sets , set_size , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! a JSON linked list character ( kind = CK , 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 type ( json_value ), pointer :: p_var logical ( LK ) :: ok #if defined __GFORTRAN__ character ( kind = CK , len = :), allocatable :: p_name !! temporary variable for getting name #endif call json % get ( p , path , p_var , found ) !check if it was found: if ( present ( found )) then ok = found else ok = . not . json % exception_thrown end if if (. not . ok ) then if ( present ( var_type )) var_type = json_unknown if ( present ( n_sets )) n_sets = 0 if ( present ( set_size )) set_size = 0 if ( present ( name )) name = CK_ '' else !get info about the variable: #if defined __GFORTRAN__ call json % matrix_info ( p_var , is_matrix , var_type , n_sets , set_size ) if ( present ( name )) then !workaround for gfortran bug if ( allocated ( p_var % name )) then p_name = p_var % name name = p_name else name = CK_ '' end if end if #else call json % matrix_info ( p_var , is_matrix , var_type , n_sets , set_size , name ) #endif if ( json % exception_thrown . and . present ( found )) then found = . false . call json % clear_exceptions () end if end if end subroutine json_matrix_info_by_path","tags":"","loc":"proc/json_matrix_info_by_path.html"},{"title":"json_parse_end – JSON-Fortran","text":"private subroutine json_parse_end(json, unit, str) An error checking routine to call after a file (or string) has been parsed.\nIt will throw an exception if there are any other non-whitespace characters\nin the file. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number character(kind=CK, len=*), intent(in) :: str string containing JSON data (only used if unit=0 ) Calls proc~~json_parse_end~~CallsGraph proc~json_parse_end json_core%json_parse_end none~throw_exception json_core%throw_exception proc~json_parse_end->none~throw_exception proc~pop_char json_core%pop_char proc~json_parse_end->proc~pop_char proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_parse_end~~CalledByGraph proc~json_parse_end json_core%json_parse_end proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~json_parse_end proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~json_parse_end none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_parse_end ( json , unit , str ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: unit !! file unit number character ( kind = CK , len =* ), intent ( in ) :: str !! string containing JSON !! data (only used if `unit=0`) logical ( LK ) :: eof !! end-of-file flag character ( kind = CK , len = 1 ) :: c !! character read from file !! (or string) by [[pop_char]] ! first check for exceptions: if ( json % exception_thrown ) return ! pop the next non whitespace character off the file call json % pop_char ( unit , str = str , eof = eof , skip_ws = . true ., & skip_comments = json % allow_comments , popped = c ) if (. not . eof ) then call json % throw_exception ( 'Error in json_parse_end:' // & ' Unexpected character found after parsing value. \"' // & c // '\"' ) end if end subroutine json_parse_end","tags":"","loc":"proc/json_parse_end.html"},{"title":"json_parse_file – JSON-Fortran","text":"private subroutine json_parse_file(json, file, p, unit) Parse the JSON file and populate the json_value tree. Inputs The inputs can be: file & unit : the specified unit is used to read JSON from file.\n [note if unit is already open, then the filename is ignored] file : JSON is read from file using internal unit number Example type ( json_core ) :: json type ( json_value ), pointer :: p call json % load ( file = 'myfile.json' , p = p ) History Jacob Williams : 01/13/2015 : added read from string option. Izaak Beekman : 03/08/2015 : moved read from string to separate\n subroutine, and error annotation to separate subroutine. Note When calling this routine, any exceptions thrown from previous\n calls will automatically be cleared. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CDK, len=*), intent(in) :: file JSON file name type( json_value ), pointer :: p output structure integer(kind=IK), intent(in), optional :: unit file unit number (/= 0) Calls proc~~json_parse_file~~CallsGraph proc~json_parse_file json_core%json_parse_file none~throw_exception json_core%throw_exception proc~json_parse_file->none~throw_exception proc~annotate_invalid_json json_core%annotate_invalid_json proc~json_parse_file->proc~annotate_invalid_json proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_file->proc~json_check_all_for_duplicate_keys proc~json_initialize json_core%json_initialize proc~json_parse_file->proc~json_initialize proc~json_parse_end json_core%json_parse_end proc~json_parse_file->proc~json_parse_end proc~json_prepare_parser json_core%json_prepare_parser proc~json_parse_file->proc~json_prepare_parser proc~json_value_create json_value_create proc~json_parse_file->proc~json_value_create proc~parse_value json_core%parse_value proc~json_parse_file->proc~parse_value proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~get_current_line_from_file_sequential json_core%get_current_line_from_file_sequential proc~annotate_invalid_json->proc~get_current_line_from_file_sequential proc~get_current_line_from_file_stream json_core%get_current_line_from_file_stream proc~annotate_invalid_json->proc~get_current_line_from_file_stream proc~integer_to_string integer_to_string proc~annotate_invalid_json->proc~integer_to_string proc~json_traverse json_core%json_traverse proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_initialize->none~throw_exception proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions proc~json_parse_end->none~throw_exception proc~pop_char json_core%pop_char proc~json_parse_end->proc~pop_char proc~parse_value->none~throw_exception proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_for_chars json_core%parse_for_chars proc~parse_value->proc~parse_for_chars proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~parse_string json_core%parse_string proc~parse_value->proc~parse_string proc~parse_value->proc~pop_char proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~to_array json_core%to_array proc~parse_value->proc~to_array proc~to_logical json_core%to_logical proc~parse_value->proc~to_logical proc~to_null json_core%to_null proc~parse_value->proc~to_null proc~to_object json_core%to_object proc~parse_value->proc~to_object proc~to_string json_core%to_string proc~parse_value->proc~to_string proc~json_traverse->none~throw_exception proc~parse_array->none~throw_exception proc~parse_array->proc~json_value_create proc~parse_array->proc~parse_value proc~parse_array->proc~pop_char none~add~4 json_core%add proc~parse_array->none~add~4 none~destroy~3 json_core%destroy proc~parse_array->none~destroy~3 proc~parse_for_chars->none~throw_exception proc~parse_for_chars->proc~pop_char proc~parse_number->proc~json_clear_exceptions proc~parse_number->proc~pop_char proc~parse_number->proc~push_char proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real proc~parse_object->none~throw_exception proc~parse_object->proc~json_value_create proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~pop_char proc~parse_object->none~add~4 proc~parse_object->none~destroy~3 proc~parse_string->none~throw_exception proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~push_char->none~throw_exception proc~push_char->proc~integer_to_string proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_logical->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_parse_file~~CalledByGraph proc~json_parse_file json_core%json_parse_file none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_parse_file ( json , file , p , unit ) implicit none class ( json_core ), intent ( inout ) :: json character ( kind = CDK , len =* ), intent ( in ) :: file !! JSON file name type ( json_value ), pointer :: p !! output structure integer ( IK ), intent ( in ), optional :: unit !! file unit number (/= 0) integer ( IK ) :: iunit !! file unit actually used integer ( IK ) :: istat !! iostat flag logical ( LK ) :: is_open !! if the file is already open logical ( LK ) :: has_duplicate !! if checking for duplicate keys character ( kind = CK , len = :), allocatable :: path !! path to any duplicate key ! clear any exceptions and initialize: call json % initialize () call json % prepare_parser () if ( present ( unit ) ) then if ( unit == 0 ) then call json % throw_exception ( 'Error in json_parse_file: unit number must not be 0.' ) return end if iunit = unit ! check to see if the file is already open ! if it is, then use it, otherwise open the file with the name given. inquire ( unit = iunit , opened = is_open , iostat = istat ) if ( istat == 0 . and . . not . is_open ) then ! open the file open ( unit = iunit , & file = file , & status = 'OLD' , & action = 'READ' , & form = form_spec , & access = access_spec , & iostat = istat & FILE_ENCODING ) else ! if the file is already open, then we need to make sure ! that it is open with the correct form/access/etc... end if else ! open the file with a new unit number: open ( newunit = iunit , & file = file , & status = 'OLD' , & action = 'READ' , & form = form_spec , & access = access_spec , & iostat = istat & FILE_ENCODING ) end if if ( istat == 0 ) then if ( use_unformatted_stream ) then ! save the file size to be read: inquire ( unit = iunit , size = json % filesize , iostat = istat ) end if ! create the value and associate the pointer call json_value_create ( p ) ! Note: the name of the root json_value doesn't really matter, ! but we'll allocate something here just in case. p % name = trim ( file ) !use the file name ! parse as a value call json % parse_value ( unit = iunit , str = CK_ '' , value = p ) call json % parse_end ( unit = iunit , str = CK_ '' ) ! check for errors: if ( json % exception_thrown ) then call json % annotate_invalid_json ( iunit , CK_ '' ) else if (. not . json % allow_duplicate_keys ) then call json % check_for_duplicate_keys ( p , has_duplicate , path = path ) if (. not . json % exception_thrown ) then if ( has_duplicate ) then call json % throw_exception ( 'Error in json_parse_file: ' // & 'Duplicate key found: ' // path ) end if end if end if end if ! close the file: close ( unit = iunit , iostat = istat ) else call json % throw_exception ( 'Error in json_parse_file: Error opening file: ' // trim ( file )) nullify ( p ) end if end subroutine json_parse_file","tags":"","loc":"proc/json_parse_file.html"},{"title":"json_parse_string – JSON-Fortran","text":"private subroutine json_parse_string(json, p, str) Parse the JSON string and populate the json_value tree. See also json_parse_file Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p output structure character(kind=CK, len=*), intent(in) :: str string with JSON data Calls proc~~json_parse_string~~CallsGraph proc~json_parse_string json_core%json_parse_string none~throw_exception json_core%throw_exception proc~json_parse_string->none~throw_exception proc~annotate_invalid_json json_core%annotate_invalid_json proc~json_parse_string->proc~annotate_invalid_json proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_initialize json_core%json_initialize proc~json_parse_string->proc~json_initialize proc~json_parse_end json_core%json_parse_end proc~json_parse_string->proc~json_parse_end proc~json_prepare_parser json_core%json_prepare_parser proc~json_parse_string->proc~json_prepare_parser proc~json_value_create json_value_create proc~json_parse_string->proc~json_value_create proc~parse_value json_core%parse_value proc~json_parse_string->proc~parse_value proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~get_current_line_from_file_sequential json_core%get_current_line_from_file_sequential proc~annotate_invalid_json->proc~get_current_line_from_file_sequential proc~get_current_line_from_file_stream json_core%get_current_line_from_file_stream proc~annotate_invalid_json->proc~get_current_line_from_file_stream proc~integer_to_string integer_to_string proc~annotate_invalid_json->proc~integer_to_string proc~json_traverse json_core%json_traverse proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_initialize->none~throw_exception proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions proc~json_parse_end->none~throw_exception proc~pop_char json_core%pop_char proc~json_parse_end->proc~pop_char proc~parse_value->none~throw_exception proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_for_chars json_core%parse_for_chars proc~parse_value->proc~parse_for_chars proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~parse_string json_core%parse_string proc~parse_value->proc~parse_string proc~parse_value->proc~pop_char proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~to_array json_core%to_array proc~parse_value->proc~to_array proc~to_logical json_core%to_logical proc~parse_value->proc~to_logical proc~to_null json_core%to_null proc~parse_value->proc~to_null proc~to_object json_core%to_object proc~parse_value->proc~to_object proc~to_string json_core%to_string proc~parse_value->proc~to_string proc~json_traverse->none~throw_exception proc~parse_array->none~throw_exception proc~parse_array->proc~json_value_create proc~parse_array->proc~parse_value proc~parse_array->proc~pop_char none~add~4 json_core%add proc~parse_array->none~add~4 none~destroy~3 json_core%destroy proc~parse_array->none~destroy~3 proc~parse_for_chars->none~throw_exception proc~parse_for_chars->proc~pop_char proc~parse_number->proc~json_clear_exceptions proc~parse_number->proc~pop_char proc~parse_number->proc~push_char proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real proc~parse_object->none~throw_exception proc~parse_object->proc~json_value_create proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~pop_char proc~parse_object->none~add~4 proc~parse_object->none~destroy~3 proc~parse_string->none~throw_exception proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~push_char->none~throw_exception proc~push_char->proc~integer_to_string proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_logical->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_parse_string~~CalledByGraph proc~json_parse_string json_core%json_parse_string none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_parse_string ( json , p , str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! output structure character ( kind = CK , len =* ), intent ( in ) :: str !! string with JSON data integer ( IK ), parameter :: iunit = 0 !! indicates that json data will be read from buffer logical ( LK ) :: has_duplicate !! if checking for duplicate keys character ( kind = CK , len = :), allocatable :: path !! path to any duplicate key ! clear any exceptions and initialize: call json % initialize () call json % prepare_parser () ! create the value and associate the pointer call json_value_create ( p ) ! Note: the name of the root json_value doesn't really matter, ! but we'll allocate something here just in case. p % name = CK_ '' ! parse as a value call json % parse_value ( unit = iunit , str = str , value = p ) call json % parse_end ( unit = iunit , str = str ) if ( json % exception_thrown ) then call json % annotate_invalid_json ( iunit , str ) else if (. not . json % allow_duplicate_keys ) then call json % check_for_duplicate_keys ( p , has_duplicate , path = path ) if (. not . json % exception_thrown ) then if ( has_duplicate ) then call json % throw_exception ( 'Error in json_parse_string: ' // & 'Duplicate key found: ' // path ) end if end if end if end if end subroutine json_parse_string","tags":"","loc":"proc/json_parse_string.html"},{"title":"json_prepare_parser – JSON-Fortran","text":"private subroutine json_prepare_parser(json) Internal routine to be called before parsing JSON .\nCurrently, all this does it allocate the comment_char if none was specified. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json Called by proc~~json_prepare_parser~~CalledByGraph proc~json_prepare_parser json_core%json_prepare_parser proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~json_prepare_parser proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~json_prepare_parser none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_prepare_parser ( json ) implicit none class ( json_core ), intent ( inout ) :: json if ( json % allow_comments . and . . not . allocated ( json % comment_char )) then ! comments are enabled, but user hasn't set the comment char, ! so in this case use the default: json % comment_char = CK_ '/!#' end if end subroutine json_prepare_parser","tags":"","loc":"proc/json_prepare_parser.html"},{"title":"json_print_error_message – JSON-Fortran","text":"private subroutine json_print_error_message(json, io_unit) Print any error message, and then clear the exceptions. Note This routine is used by the unit tests.\n It was originally in json_example.f90, and was\n moved here 2/26/2015 by Izaak Beekman. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer, intent(in), optional :: io_unit unit number for\nprinting error message Calls proc~~json_print_error_message~~CallsGraph proc~json_print_error_message json_core%json_print_error_message proc~json_check_for_errors json_core%json_check_for_errors proc~json_print_error_message->proc~json_check_for_errors proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_print_error_message->proc~json_clear_exceptions Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_print_error_message~~CalledByGraph proc~json_print_error_message json_core%json_print_error_message proc~json_file_print_error_message json_file%json_file_print_error_message proc~json_file_print_error_message->proc~json_print_error_message Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_print_error_message ( json , io_unit ) implicit none class ( json_core ), intent ( inout ) :: json integer , intent ( in ), optional :: io_unit !! unit number for !! printing error message character ( kind = CK , len = :), allocatable :: error_msg !! error message logical :: status_ok !! false if there were any errors thrown !get error message: call json % check_for_errors ( status_ok , error_msg ) !print it if there is one: if (. not . status_ok ) then if ( present ( io_unit )) then write ( io_unit , '(A)' ) error_msg else write ( output_unit , '(A)' ) error_msg end if deallocate ( error_msg ) call json % clear_exceptions () end if end subroutine json_print_error_message","tags":"","loc":"proc/json_print_error_message.html"},{"title":"json_print_to_console – JSON-Fortran","text":"private subroutine json_print_to_console(json, p) Print the json_value structure to the console ( output_unit ). Note Just a wrapper for json_print_to_unit . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p Source Code subroutine json_print_to_console ( json , p ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p call json % print ( p , int ( output_unit , IK )) end subroutine json_print_to_console","tags":"","loc":"proc/json_print_to_console.html"},{"title":"json_print_to_filename – JSON-Fortran","text":"private subroutine json_print_to_filename(json, p, filename) Print the json_value structure to a file. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CDK, len=*), intent(in) :: filename the filename to print to\n(should not already be open) Calls proc~~json_print_to_filename~~CallsGraph proc~json_print_to_filename json_core%json_print_to_filename none~throw_exception json_core%throw_exception proc~json_print_to_filename->none~throw_exception proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_print_to_filename ( json , p , filename ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p character ( kind = CDK , len =* ), intent ( in ) :: filename !! the filename to print to !! (should not already be open) integer ( IK ) :: iunit !! file unit for `open` statement integer ( IK ) :: istat !! `iostat` code for `open` statement open ( newunit = iunit , file = filename , status = 'REPLACE' , iostat = istat FILE_ENCODING ) if ( istat == 0 ) then call json % print ( p , iunit ) close ( iunit , iostat = istat ) else call json % throw_exception ( 'Error in json_print_to_filename: could not open file: ' // & trim ( filename )) end if end subroutine json_print_to_filename","tags":"","loc":"proc/json_print_to_filename.html"},{"title":"json_print_to_unit – JSON-Fortran","text":"private subroutine json_print_to_unit(json, p, iunit) Print the json_value structure to a file. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p integer(kind=IK), intent(in) :: iunit the file unit (the file must\nalready have been opened, can’t be -1). Calls proc~~json_print_to_unit~~CallsGraph proc~json_print_to_unit json_core%json_print_to_unit none~throw_exception json_core%throw_exception proc~json_print_to_unit->none~throw_exception proc~json_value_print json_core%json_value_print proc~json_print_to_unit->proc~json_value_print proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_value_print->none~throw_exception proc~json_value_print->proc~json_value_print proc~escape_string escape_string proc~json_value_print->proc~escape_string proc~integer_to_string integer_to_string proc~json_value_print->proc~integer_to_string proc~json_failed json_core%json_failed proc~json_value_print->proc~json_failed proc~json_is_vector json_core%json_is_vector proc~json_value_print->proc~json_is_vector proc~real_to_string real_to_string proc~json_value_print->proc~real_to_string proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_is_vector->none~throw_exception none~info~2 json_core%info proc~json_is_vector->none~info~2 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception proc~convert->none~info~2 none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~throw_exception proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_string_info->proc~json_clear_exceptions proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_print_to_unit ( json , p , iunit ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p integer ( IK ), intent ( in ) :: iunit !! the file unit (the file must !! already have been opened, can't be -1). character ( kind = CK , len = :), allocatable :: dummy !! dummy for `str` argument !! to [[json_value_print]] integer ( IK ) :: idummy !! dummy for `iloc` argument !! to [[json_value_print]] if ( iunit /= unit2str ) then idummy = 0_IK call json % json_value_print ( p , iunit , str = dummy , iloc = idummy , indent = 1_IK , colon = . true .) else call json % throw_exception ( 'Error in json_print_to_unit: iunit must not be -1.' ) end if end subroutine json_print_to_unit","tags":"","loc":"proc/json_print_to_unit.html"},{"title":"json_rename_by_path – JSON-Fortran","text":"private subroutine json_rename_by_path(json, me, path, name, found) Rename a json_value , given the path. Note this is a wrapper for json_value_rename . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path path to the variable to rename character(kind=CK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if there were no errors Calls proc~~json_rename_by_path~~CallsGraph proc~json_rename_by_path json_core%json_rename_by_path none~get~2 json_core%get proc~json_rename_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_rename_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_rename_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->proc~flag_not_found proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_rename_by_path ( json , me , path , name , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable to rename character ( kind = CK , len =* ), intent ( in ) :: name !! the new name logical ( LK ), intent ( out ), optional :: found !! if there were no errors type ( json_value ), pointer :: p if ( json % exception_thrown ) then if ( present ( found ) ) found = . false . return end if nullify ( p ) call json % get ( me = me , path = path , p = p ) if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_rename_by_path:' // & ' Unable to resolve path: ' // trim ( path ), found ) else call json % rename ( p , name ) nullify ( p ) end if if ( json % exception_thrown ) then if ( present ( found )) then found = . false . call json % clear_exceptions () end if else if ( present ( found )) found = . true . end if end subroutine json_rename_by_path","tags":"","loc":"proc/json_rename_by_path.html"},{"title":"json_rename_by_path_name_ascii – JSON-Fortran","text":"private subroutine json_rename_by_path_name_ascii(json, me, path, name, found) Alternate version of json_rename_by_path , where “name” is kind=CDK Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path character(kind=CDK, len=*), intent(in) :: name logical(kind=LK), intent(out), optional :: found Calls proc~~json_rename_by_path_name_ascii~~CallsGraph proc~json_rename_by_path_name_ascii json_core%json_rename_by_path_name_ascii interface~to_unicode to_unicode proc~json_rename_by_path_name_ascii->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_rename_by_path_name_ascii ( json , me , path , name , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path character ( kind = CDK , len =* ), intent ( in ) :: name logical ( LK ), intent ( out ), optional :: found call json % rename ( me , path , to_unicode ( name ), found ) end subroutine json_rename_by_path_name_ascii","tags":"","loc":"proc/json_rename_by_path_name_ascii.html"},{"title":"json_rename_by_path_path_ascii – JSON-Fortran","text":"private subroutine json_rename_by_path_path_ascii(json, me, path, name, found) Alternate version of json_rename_by_path , where “path” is kind=CDK Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=*), intent(in) :: name logical(kind=LK), intent(out), optional :: found Calls proc~~json_rename_by_path_path_ascii~~CallsGraph proc~json_rename_by_path_path_ascii json_core%json_rename_by_path_path_ascii interface~to_unicode to_unicode proc~json_rename_by_path_path_ascii->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_rename_by_path_path_ascii ( json , me , path , name , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path character ( kind = CK , len =* ), intent ( in ) :: name logical ( LK ), intent ( out ), optional :: found call json % rename ( me , to_unicode ( path ), name , found ) end subroutine json_rename_by_path_path_ascii","tags":"","loc":"proc/json_rename_by_path_path_ascii.html"},{"title":"json_string_info – JSON-Fortran","text":"private subroutine json_string_info(json, p, ilen, max_str_len, found) Returns information about character strings returned from a json_value . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(out), optional, dimension(:), allocatable :: ilen if p is an array, this\nis the actual length\nof each character\nstring in the array.\nif not an array, this\nis returned unallocated. integer(kind=IK), intent(out), optional :: max_str_len The maximum length required to\nhold the string representation returned\nby a call to a get routine. If a scalar,\nthis is just the length of the scalar. If\na vector, this is the maximum length of\nany element. logical(kind=LK), intent(out), optional :: found true if there were no errors.\nif not present, an error will\nthrow an exception Calls proc~~json_string_info~~CallsGraph proc~json_string_info json_core%json_string_info none~get~2 json_core%get proc~json_string_info->none~get~2 none~info~2 json_core%info proc~json_string_info->none~info~2 none~throw_exception json_core%throw_exception proc~json_string_info->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_string_info->proc~json_clear_exceptions proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_string_info~~CalledByGraph proc~json_string_info json_core%json_string_info none~get~2 json_core%get proc~json_string_info->none~get~2 none~info~2 json_core%info proc~json_string_info->none~info~2 none~string_info json_core%string_info none~string_info->proc~json_string_info proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec->none~get~2 none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_string_info ( json , p , ilen , max_str_len , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p integer ( IK ), dimension (:), allocatable , intent ( out ), optional :: ilen !! if `p` is an array, this !! is the actual length !! of each character !! string in the array. !! if not an array, this !! is returned unallocated. integer ( IK ), intent ( out ), optional :: max_str_len !! The maximum length required to !! hold the string representation returned !! by a call to a `get` routine. If a scalar, !! this is just the length of the scalar. If !! a vector, this is the maximum length of !! any element. logical ( LK ), intent ( out ), optional :: found !! true if there were no errors. !! if not present, an error will !! throw an exception character ( kind = CK , len = :), allocatable :: cval !! for getting values as strings. logical ( LK ) :: initialized !! if the output array has been sized logical ( LK ) :: get_max_len !! if we are returning the `max_str_len` logical ( LK ) :: get_ilen !! if we are returning the `ilen` array integer ( IK ) :: var_type !! variable type get_max_len = present ( max_str_len ) get_ilen = present ( ilen ) if (. not . json % exception_thrown ) then if ( present ( found )) found = . true . initialized = . false . if ( get_max_len ) max_str_len = 0 select case ( p % var_type ) case ( json_array ) ! it's an array ! call routine for each element call json % get ( p , array_callback = get_string_lengths ) case default ! not an array if ( json % strict_type_checking ) then ! only allowing strings to be returned ! as strings, so we can check size directly call json % info ( p , var_type = var_type ) if ( var_type == json_string ) then if ( allocated ( p % str_value ) . and . get_max_len ) & max_str_len = len ( p % str_value ) else ! it isn't a string, so there is no length call json % throw_exception ( 'Error in json_string_info: ' // & 'When strict_type_checking is true ' // & 'the variable must be a character string.' ,& found ) end if else ! in this case, we have to get the value ! as a string to know what size it is. call json % get ( p , value = cval ) if (. not . json % exception_thrown ) then if ( allocated ( cval ) . and . get_max_len ) & max_str_len = len ( cval ) end if end if end select end if if ( json % exception_thrown ) then if ( present ( found )) then call json % clear_exceptions () found = . false . end if if ( get_max_len ) max_str_len = 0 if ( get_ilen ) then if ( allocated ( ilen )) deallocate ( ilen ) end if end if contains subroutine get_string_lengths ( json , element , i , count ) !! callback function to call for each element in the array. implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: element integer ( IK ), intent ( in ) :: i !! index integer ( IK ), intent ( in ) :: count !! size of array character ( kind = CK , len = :), allocatable :: cval integer ( IK ) :: var_type if ( json % exception_thrown ) return if (. not . initialized ) then if ( get_ilen ) allocate ( ilen ( count )) initialized = . true . end if if ( json % strict_type_checking ) then ! only allowing strings to be returned ! as strings, so we can check size directly call json % info ( element , var_type = var_type ) if ( var_type == json_string ) then if ( allocated ( element % str_value )) then if ( get_max_len ) then if ( len ( element % str_value ) > max_str_len ) & max_str_len = len ( element % str_value ) end if if ( get_ilen ) ilen ( i ) = len ( element % str_value ) else if ( get_ilen ) ilen ( i ) = 0 end if else ! it isn't a string, so there is no length call json % throw_exception ( 'Error in json_string_info: ' // & 'When strict_type_checking is true ' // & 'the array must contain only ' // & 'character strings.' , found ) end if else ! in this case, we have to get the value ! as a string to know what size it is. call json % get ( element , value = cval ) if ( json % exception_thrown ) return if ( allocated ( cval )) then if ( get_max_len ) then if ( len ( cval ) > max_str_len ) max_str_len = len ( cval ) end if if ( get_ilen ) ilen ( i ) = len ( cval ) else if ( get_ilen ) ilen ( i ) = 0 end if end if end subroutine get_string_lengths end subroutine json_string_info","tags":"","loc":"proc/json_string_info.html"},{"title":"json_throw_exception – JSON-Fortran","text":"private subroutine json_throw_exception(json, msg, found) Throw an exception in the json_core .\n This routine sets the error flag, and prevents any subsequent routine\n from doing anything, until json_clear_exceptions is called. Note If is_verbose is true, this will also print a\n traceback if the Intel compiler is used. Note If stop_on_error is true, then the program is stopped. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CK, len=*), intent(in) :: msg the error message logical(kind=LK), intent(inout), optional :: found if the caller is handling the\nexception with an optimal return\nargument. If so, json%stop_on_error is ignored. Called by proc~~json_throw_exception~~CalledByGraph proc~json_throw_exception json_core%json_throw_exception none~throw_exception json_core%throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~convert json_core%convert proc~convert->none~throw_exception none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~throw_exception none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~throw_exception proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~throw_exception proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~throw_exception proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~throw_exception proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~throw_exception none~get_child json_core%get_child proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_count json_core%json_count proc~json_count->none~throw_exception proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->none~throw_exception proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_file_move_pointer json_file%json_file_move_pointer proc~json_file_move_pointer->none~throw_exception none~initialize json_file%initialize proc~json_file_move_pointer->none~initialize proc~json_file_print_to_unit json_file%json_file_print_to_unit proc~json_file_print_to_unit->none~throw_exception proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path proc~json_get_alloc_string_vec_by_path->none~throw_exception none~get~2 json_core%get proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array json_core%json_get_array proc~json_get_array->none~throw_exception proc~json_get_array_by_path json_core%json_get_array_by_path proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->none~get_child proc~json_get_integer json_core%json_get_integer proc~json_get_integer->none~throw_exception proc~json_get_integer_by_path json_core%json_get_integer_by_path proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical json_core%json_get_logical proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path json_core%json_get_logical_by_path proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_next json_core%json_get_next proc~json_get_next->none~throw_exception proc~json_get_parent json_core%json_get_parent proc~json_get_parent->none~throw_exception proc~json_get_path json_core%json_get_path proc~json_get_path->none~throw_exception proc~json_get_path->none~info~2 proc~json_get_previous json_core%json_get_previous proc~json_get_previous->none~throw_exception proc~json_get_real json_core%json_get_real proc~json_get_real->none~throw_exception proc~json_get_real_by_path json_core%json_get_real_by_path proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string json_core%json_get_string proc~json_get_string->none~throw_exception proc~json_get_string_by_path json_core%json_get_string_by_path proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->none~get~2 proc~json_get_tail json_core%json_get_tail proc~json_get_tail->none~throw_exception proc~json_info json_core%json_info proc~json_info->none~throw_exception proc~json_initialize json_core%json_initialize proc~json_initialize->none~throw_exception proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~throw_exception proc~json_is_vector->none~info~2 proc~json_matrix_info json_core%json_matrix_info proc~json_matrix_info->none~throw_exception proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_parse_end json_core%json_parse_end proc~json_parse_end->none~throw_exception proc~json_parse_file json_core%json_parse_file proc~json_parse_file->none~throw_exception proc~json_parse_file->proc~json_initialize proc~json_parse_file->proc~json_parse_end proc~parse_value json_core%parse_value proc~json_parse_file->proc~parse_value proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_file->proc~json_check_all_for_duplicate_keys proc~json_parse_string json_core%json_parse_string proc~json_parse_string->none~throw_exception proc~json_parse_string->proc~json_initialize proc~json_parse_string->proc~json_parse_end proc~json_parse_string->proc~parse_value proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_print_to_filename json_core%json_print_to_filename proc~json_print_to_filename->none~throw_exception proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->none~throw_exception proc~json_value_print json_core%json_value_print proc~json_print_to_unit->proc~json_value_print proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~throw_exception proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~throw_exception proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_traverse json_core%json_traverse proc~json_traverse->none~throw_exception proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~throw_exception proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~throw_exception proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~throw_exception proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~throw_exception proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~throw_exception proc~json_value_add_member->none~info~2 proc~json_value_get_child json_core%json_value_get_child proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index json_core%json_value_get_child_by_index proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_name json_core%json_value_get_child_by_name proc~json_value_get_child_by_name->none~throw_exception proc~json_value_print->none~throw_exception proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~json_value_swap json_core%json_value_swap proc~json_value_swap->none~throw_exception proc~json_value_is_child_of json_core%json_value_is_child_of proc~json_value_swap->proc~json_value_is_child_of proc~json_value_validate json_core%json_value_validate proc~json_value_validate->none~throw_exception proc~json_value_validate->proc~json_check_all_for_duplicate_keys proc~parse_array json_core%parse_array proc~parse_array->none~throw_exception proc~parse_array->proc~parse_value proc~parse_for_chars json_core%parse_for_chars proc~parse_for_chars->none~throw_exception proc~parse_object json_core%parse_object proc~parse_object->none~throw_exception proc~parse_object->proc~parse_object proc~parse_string json_core%parse_string proc~parse_object->proc~parse_string proc~parse_object->proc~parse_value proc~parse_string->none~throw_exception proc~parse_value->none~throw_exception proc~parse_value->proc~parse_array proc~parse_value->proc~parse_for_chars proc~parse_value->proc~parse_object proc~parse_value->proc~parse_string proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~push_char->none~throw_exception proc~string_to_dble json_core%string_to_dble proc~string_to_dble->none~throw_exception proc~string_to_int json_core%string_to_int proc~string_to_int->none~throw_exception proc~wrap_json_throw_exception->none~throw_exception none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~get_child->proc~json_value_get_child none~get_child->proc~json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~get~2->proc~json_get_alloc_string_vec_by_path none~get~2->proc~json_get_array none~get~2->proc~json_get_array_by_path none~get~2->proc~json_get_by_path none~get~2->proc~json_get_integer none~get~2->proc~json_get_integer_by_path none~get~2->proc~json_get_integer_vec_by_path none~get~2->proc~json_get_logical none~get~2->proc~json_get_logical_by_path none~get~2->proc~json_get_logical_vec_by_path none~get~2->proc~json_get_real none~get~2->proc~json_get_real_by_path none~get~2->proc~json_get_real_vec_by_path none~get~2->proc~json_get_string none~get~2->proc~json_get_string_by_path none~get~2->proc~json_get_string_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~load~2 json_core%load none~load~2->proc~json_parse_file none~matrix_info~2 json_core%matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~string_info json_core%string_info none~string_info->proc~json_string_info proc~initialize_json_core initialize_json_core proc~initialize_json_core->proc~json_initialize proc~initialize_json_core_in_file json_file%initialize_json_core_in_file proc~initialize_json_core_in_file->proc~json_initialize proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_file_traverse json_file%json_file_traverse proc~json_file_traverse->proc~json_traverse proc~json_value_is_child_of->proc~json_traverse proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~parse_number->proc~push_char proc~parse_number->proc~string_to_dble proc~parse_number->proc~string_to_int proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path interface~json_core json_core interface~json_core->proc~initialize_json_core none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~initialize->proc~initialize_json_core_in_file proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_alloc_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~string_info proc~json_get_integer_vec->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path->none~get~2 proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_path->none~get_path proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_parse_string->none~deserialize~2 proc~wrap_json_value_get_child_by_name->none~get~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~initialize_json_file initialize_json_file proc~initialize_json_file->none~initialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~initialize proc~initialize_json_file_from_string->none~deserialize proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path interface~json_file json_file interface~json_file->proc~initialize_json_file interface~json_file->proc~initialize_json_file_from_string proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string_v2->none~deserialize proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_value_replace->none~insert_after proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_file_load_from_string->none~deserialize proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_throw_exception ( json , msg , found ) #ifdef __INTEL_COMPILER use ifcore , only : tracebackqq #endif implicit none class ( json_core ), intent ( inout ) :: json character ( kind = CK , len =* ), intent ( in ) :: msg !! the error message logical ( LK ), intent ( inout ), optional :: found !! if the caller is handling the !! exception with an optimal return !! argument. If so, `json%stop_on_error` !! is ignored. logical ( LK ) :: stop_on_error json % exception_thrown = . true . json % err_message = trim ( msg ) stop_on_error = json % stop_on_error . and . . not . present ( found ) if ( stop_on_error ) then #ifdef __INTEL_COMPILER ! for Intel, we raise a traceback and quit call tracebackqq ( string = trim ( msg ), user_exit_code = 0 ) #else write ( error_unit , '(A)' ) 'JSON-Fortran Exception: ' // trim ( msg ) error stop 1 #endif elseif ( json % is_verbose ) then write ( output_unit , '(A)' ) '***********************' write ( output_unit , '(A)' ) 'JSON-Fortran Exception: ' // trim ( msg ) !#if defined __GFORTRAN__ ! call backtrace() ! (have to compile with -fbacktrace -fall-intrinsics flags) !#endif #ifdef __INTEL_COMPILER call tracebackqq ( user_exit_code =- 1 ) ! print a traceback and return #endif write ( output_unit , '(A)' ) '***********************' end if end subroutine json_throw_exception","tags":"","loc":"proc/json_throw_exception.html"},{"title":"json_traverse – JSON-Fortran","text":"private subroutine json_traverse(json, p, traverse_callback) Traverse a JSON structure.\nThis routine calls the user-specified json_traverse_callback_func for each element of the structure. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p procedure( json_traverse_callback_func ) :: traverse_callback Calls proc~~json_traverse~~CallsGraph proc~json_traverse json_core%json_traverse none~throw_exception json_core%throw_exception proc~json_traverse->none~throw_exception proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_traverse~~CalledByGraph proc~json_traverse json_core%json_traverse proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_file_traverse json_file%json_file_traverse proc~json_file_traverse->proc~json_traverse proc~json_value_is_child_of json_core%json_value_is_child_of proc~json_value_is_child_of->proc~json_traverse proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~json_check_all_for_duplicate_keys proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_value_swap json_core%json_value_swap proc~json_value_swap->proc~json_value_is_child_of proc~json_value_validate json_core%json_value_validate proc~json_value_validate->proc~json_check_all_for_duplicate_keys none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_traverse ( json , p , traverse_callback ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p procedure ( json_traverse_callback_func ) :: traverse_callback logical ( LK ) :: finished !! can be used to stop the process if (. not . json % exception_thrown ) call traverse ( p ) contains recursive subroutine traverse ( p ) !! recursive [[json_value]] traversal. implicit none type ( json_value ), pointer , intent ( in ) :: p type ( json_value ), pointer :: element !! a child element integer ( IK ) :: i !! counter integer ( IK ) :: icount !! number of children if ( json % exception_thrown ) return call traverse_callback ( json , p , finished ) ! first call for this object if ( finished ) return !for arrays and objects, have to also call for all children: if ( p % var_type == json_array . or . p % var_type == json_object ) then icount = json % count ( p ) ! number of children if ( icount > 0 ) then element => p % children ! first one do i = 1 , icount ! call for each child if (. not . associated ( element )) then call json % throw_exception ( 'Error in json_traverse: ' // & 'Malformed JSON linked list' ) return end if call traverse ( element ) if ( finished . or . json % exception_thrown ) exit element => element % next end do end if nullify ( element ) end if end subroutine traverse end subroutine json_traverse","tags":"","loc":"proc/json_traverse.html"},{"title":"json_update_integer – JSON-Fortran","text":"private subroutine json_update_integer(json, p, path, val, found) Given the path string, if the variable is present,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Note If the variable is not a scalar, an exception will be thrown. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure integer(kind=IK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. Calls proc~~json_update_integer~~CallsGraph proc~json_update_integer json_core%json_update_integer none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 none~get~2 json_core%get proc~json_update_integer->none~get~2 none~info~2 json_core%info proc~json_update_integer->none~info~2 none~throw_exception json_core%throw_exception proc~json_update_integer->none~throw_exception proc~to_integer json_core%to_integer proc~json_update_integer->proc~to_integer proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~destroy_json_data destroy_json_data proc~to_integer->proc~destroy_json_data interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~throw_exception proc~json_add_string_by_path->proc~json_clear_exceptions none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->none~create_array proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~integer_to_string proc~json_create_by_path->proc~json_clear_exceptions proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~to_string->proc~destroy_json_data proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_update_integer ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable in the structure integer ( IK ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. type ( json_value ), pointer :: p_var integer ( IK ) :: var_type call json % get ( p , path , p_var , found ) if ( found ) then call json % info ( p_var , var_type ) select case ( var_type ) case ( json_null , json_logical , json_integer , json_real , json_string ) call json % to_integer ( p_var , val ) !update the value case default found = . false . call json % throw_exception ( 'Error in json_update_integer: ' // & 'the variable is not a scalar value' , found ) end select else call json % add_by_path ( p , path , val ) !add the new element end if end subroutine json_update_integer","tags":"","loc":"proc/json_update_integer.html"},{"title":"json_update_logical – JSON-Fortran","text":"private subroutine json_update_logical(json, p, path, val, found) Given the path string, if the variable is present,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Note If the variable is not a scalar, an exception will be thrown. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure logical(kind=LK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. Calls proc~~json_update_logical~~CallsGraph proc~json_update_logical json_core%json_update_logical none~add_by_path~2 json_core%add_by_path proc~json_update_logical->none~add_by_path~2 none~get~2 json_core%get proc~json_update_logical->none~get~2 none~info~2 json_core%info proc~json_update_logical->none~info~2 none~throw_exception json_core%throw_exception proc~json_update_logical->none~throw_exception proc~to_logical json_core%to_logical proc~json_update_logical->proc~to_logical proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~destroy_json_data destroy_json_data proc~to_logical->proc~destroy_json_data interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~throw_exception proc~json_add_string_by_path->proc~json_clear_exceptions none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->none~create_array proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~integer_to_string proc~json_create_by_path->proc~json_clear_exceptions proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~to_string->proc~destroy_json_data proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_update_logical ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable in the structure logical ( LK ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. type ( json_value ), pointer :: p_var integer ( IK ) :: var_type call json % get ( p , path , p_var , found ) if ( found ) then call json % info ( p_var , var_type ) select case ( var_type ) case ( json_null , json_logical , json_integer , json_real , json_string ) call json % to_logical ( p_var , val ) !update the value case default found = . false . call json % throw_exception ( 'Error in json_update_logical: ' // & 'the variable is not a scalar value' , found ) end select else call json % add_by_path ( p , path , val ) !add the new element end if end subroutine json_update_logical","tags":"","loc":"proc/json_update_logical.html"},{"title":"json_update_real – JSON-Fortran","text":"private subroutine json_update_real(json, p, path, val, found) Given the path string, if the variable is present,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Note If the variable is not a scalar, an exception will be thrown. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure real(kind=RK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. Calls proc~~json_update_real~~CallsGraph proc~json_update_real json_core%json_update_real none~add_by_path~2 json_core%add_by_path proc~json_update_real->none~add_by_path~2 none~get~2 json_core%get proc~json_update_real->none~get~2 none~info~2 json_core%info proc~json_update_real->none~info~2 none~throw_exception json_core%throw_exception proc~json_update_real->none~throw_exception proc~to_real json_core%to_real proc~json_update_real->proc~to_real proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~destroy_json_data destroy_json_data proc~to_real->proc~destroy_json_data interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~throw_exception proc~json_add_string_by_path->proc~json_clear_exceptions none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->none~create_array proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~integer_to_string proc~json_create_by_path->proc~json_clear_exceptions proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~to_string->proc~destroy_json_data proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_update_real ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable in the structure real ( RK ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. type ( json_value ), pointer :: p_var integer ( IK ) :: var_type call json % get ( p , path , p_var , found ) if ( found ) then call json % info ( p_var , var_type ) select case ( var_type ) case ( json_null , json_logical , json_integer , json_real , json_string ) call json % to_real ( p_var , val ) !update the value case default found = . false . call json % throw_exception ( 'Error in json_update_real: ' // & 'the variable is not a scalar value' , found ) end select else call json % add_by_path ( p , path , val ) !add the new element end if end subroutine json_update_real","tags":"","loc":"proc/json_update_real.html"},{"title":"json_update_real32 – JSON-Fortran","text":"private subroutine json_update_real32(json, p, path, val, found) Alternate version of json_update_real , where val is real32 . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure real(kind=real32), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. Calls proc~~json_update_real32~~CallsGraph proc~json_update_real32 json_core%json_update_real32 none~update~4 json_core%update proc~json_update_real32->none~update~4 proc~json_update_string_name_ascii json_core%json_update_string_name_ascii none~update~4->proc~json_update_string_name_ascii proc~json_update_string_val_ascii json_core%json_update_string_val_ascii none~update~4->proc~json_update_string_val_ascii proc~json_update_string_name_ascii->none~update~4 interface~to_unicode to_unicode proc~json_update_string_name_ascii->interface~to_unicode proc~json_update_string_val_ascii->none~update~4 proc~json_update_string_val_ascii->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_update_real32 ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable in the structure real ( real32 ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. call json % update ( p , path , real ( val , RK ), found ) end subroutine json_update_real32","tags":"","loc":"proc/json_update_real32.html"},{"title":"json_update_string – JSON-Fortran","text":"private subroutine json_update_string(json, p, path, val, found, trim_str, adjustl_str) Given the path string, if the variable is present,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Note If the variable is not a scalar, an exception will be thrown. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure character(kind=CK, len=*), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) Calls proc~~json_update_string~~CallsGraph proc~json_update_string json_core%json_update_string none~add_by_path~2 json_core%add_by_path proc~json_update_string->none~add_by_path~2 none~get~2 json_core%get proc~json_update_string->none~get~2 none~info~2 json_core%info proc~json_update_string->none~info~2 none~throw_exception json_core%throw_exception proc~json_update_string->none~throw_exception proc~to_string json_core%to_string proc~json_update_string->proc~to_string proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~destroy_json_data destroy_json_data proc~to_string->proc~destroy_json_data interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~throw_exception proc~json_add_string_by_path->proc~json_clear_exceptions none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->none~create_array proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~integer_to_string proc~json_create_by_path->proc~json_clear_exceptions proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~to_string proc~json_value_create_string->proc~json_value_create proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_update_string ( json , p , path , val , found , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable in the structure character ( kind = CK , len =* ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` !! (only used if `val` is present) logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (only used if `val` is present) !! (note that ADJUSTL is done before TRIM) type ( json_value ), pointer :: p_var integer ( IK ) :: var_type call json % get ( p , path , p_var , found ) if ( found ) then call json % info ( p_var , var_type ) select case ( var_type ) case ( json_null , json_logical , json_integer , json_real , json_string ) call json % to_string ( p_var , val , trim_str = trim_str , adjustl_str = adjustl_str ) ! update the value case default found = . false . call json % throw_exception ( 'Error in json_update_string: ' // & 'the variable is not a scalar value' , found ) end select else call json % add_by_path ( p , path , val ) !add the new element end if end subroutine json_update_string","tags":"","loc":"proc/json_update_string.html"},{"title":"json_update_string_name_ascii – JSON-Fortran","text":"private subroutine json_update_string_name_ascii(json, p, path, val, found, trim_str, adjustl_str) Alternate version of json_update_string , where path is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure character(kind=CK, len=*), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) Calls proc~~json_update_string_name_ascii~~CallsGraph proc~json_update_string_name_ascii json_core%json_update_string_name_ascii interface~to_unicode to_unicode proc~json_update_string_name_ascii->interface~to_unicode none~update~4 json_core%update proc~json_update_string_name_ascii->none~update~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~update~4->proc~json_update_string_name_ascii proc~json_update_string_val_ascii json_core%json_update_string_val_ascii none~update~4->proc~json_update_string_val_ascii proc~json_update_string_val_ascii->interface~to_unicode proc~json_update_string_val_ascii->none~update~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_update_string_name_ascii~~CalledByGraph proc~json_update_string_name_ascii json_core%json_update_string_name_ascii none~update~4 json_core%update proc~json_update_string_name_ascii->none~update~4 none~update~4->proc~json_update_string_name_ascii proc~json_update_string_val_ascii json_core%json_update_string_val_ascii none~update~4->proc~json_update_string_val_ascii proc~json_file_update_integer json_file%json_file_update_integer proc~json_file_update_integer->none~update~4 proc~json_file_update_logical json_file%json_file_update_logical proc~json_file_update_logical->none~update~4 proc~json_file_update_real json_file%json_file_update_real proc~json_file_update_real->none~update~4 proc~json_file_update_string json_file%json_file_update_string proc~json_file_update_string->none~update~4 proc~json_update_real32 json_core%json_update_real32 proc~json_update_real32->none~update~4 proc~json_update_string_val_ascii->none~update~4 proc~wrap_json_update_integer json_core%wrap_json_update_integer proc~wrap_json_update_integer->none~update~4 proc~wrap_json_update_logical json_core%wrap_json_update_logical proc~wrap_json_update_logical->none~update~4 proc~wrap_json_update_real json_core%wrap_json_update_real proc~wrap_json_update_real->none~update~4 proc~wrap_json_update_real32 json_core%wrap_json_update_real32 proc~wrap_json_update_real32->none~update~4 proc~wrap_json_update_string json_core%wrap_json_update_string proc~wrap_json_update_string->none~update~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_update_string_name_ascii ( json , p , path , val , found , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable in the structure character ( kind = CK , len =* ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` !! (only used if `val` is present) logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (only used if `val` is present) !! (note that ADJUSTL is done before TRIM) call json % update ( p , to_unicode ( path ), val , found , trim_str , adjustl_str ) end subroutine json_update_string_name_ascii","tags":"","loc":"proc/json_update_string_name_ascii.html"},{"title":"json_update_string_val_ascii – JSON-Fortran","text":"private subroutine json_update_string_val_ascii(json, p, path, val, found, trim_str, adjustl_str) Alternate version of json_update_string , where val is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure character(kind=CDK, len=*), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) Calls proc~~json_update_string_val_ascii~~CallsGraph proc~json_update_string_val_ascii json_core%json_update_string_val_ascii interface~to_unicode to_unicode proc~json_update_string_val_ascii->interface~to_unicode none~update~4 json_core%update proc~json_update_string_val_ascii->none~update~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~update~4->proc~json_update_string_val_ascii proc~json_update_string_name_ascii json_core%json_update_string_name_ascii none~update~4->proc~json_update_string_name_ascii proc~json_update_string_name_ascii->interface~to_unicode proc~json_update_string_name_ascii->none~update~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_update_string_val_ascii~~CalledByGraph proc~json_update_string_val_ascii json_core%json_update_string_val_ascii none~update~4 json_core%update proc~json_update_string_val_ascii->none~update~4 none~update~4->proc~json_update_string_val_ascii proc~json_update_string_name_ascii json_core%json_update_string_name_ascii none~update~4->proc~json_update_string_name_ascii proc~json_file_update_integer json_file%json_file_update_integer proc~json_file_update_integer->none~update~4 proc~json_file_update_logical json_file%json_file_update_logical proc~json_file_update_logical->none~update~4 proc~json_file_update_real json_file%json_file_update_real proc~json_file_update_real->none~update~4 proc~json_file_update_string json_file%json_file_update_string proc~json_file_update_string->none~update~4 proc~json_update_real32 json_core%json_update_real32 proc~json_update_real32->none~update~4 proc~json_update_string_name_ascii->none~update~4 proc~wrap_json_update_integer json_core%wrap_json_update_integer proc~wrap_json_update_integer->none~update~4 proc~wrap_json_update_logical json_core%wrap_json_update_logical proc~wrap_json_update_logical->none~update~4 proc~wrap_json_update_real json_core%wrap_json_update_real proc~wrap_json_update_real->none~update~4 proc~wrap_json_update_real32 json_core%wrap_json_update_real32 proc~wrap_json_update_real32->none~update~4 proc~wrap_json_update_string json_core%wrap_json_update_string proc~wrap_json_update_string->none~update~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_update_string_val_ascii ( json , p , path , val , found , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable in the structure character ( kind = CDK , len =* ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` !! (only used if `val` is present) logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (only used if `val` is present) !! (note that ADJUSTL is done before TRIM) call json % update ( p , path , to_unicode ( val ), found , trim_str , adjustl_str ) end subroutine json_update_string_val_ascii","tags":"","loc":"proc/json_update_string_val_ascii.html"},{"title":"json_value_add_integer – JSON-Fortran","text":"private subroutine json_value_add_integer(json, p, name, val) Add an integer value child to the json_value variable. Note This routine is part of the public API that can be\n used to build a JSON structure using json_value pointers. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name integer(kind=IK), intent(in) :: val Calls proc~~json_value_add_integer~~CallsGraph proc~json_value_add_integer json_core%json_value_add_integer none~add~4 json_core%add proc~json_value_add_integer->none~add~4 none~create_integer json_core%create_integer proc~json_value_add_integer->none~create_integer proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_create_integer json_core%json_value_create_integer none~create_integer->proc~json_value_create_integer proc~wrap_json_value_create_integer json_core%wrap_json_value_create_integer none~create_integer->proc~wrap_json_value_create_integer proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_create json_value_create proc~json_value_create_integer->proc~json_value_create proc~to_integer json_core%to_integer proc~json_value_create_integer->proc~to_integer proc~wrap_json_value_create_integer->none~create_integer proc~wrap_json_value_create_integer->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_data destroy_json_data proc~to_integer->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_add_integer ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name integer ( IK ), intent ( in ) :: val type ( json_value ), pointer :: var !create the variable: call json % create_integer ( var , val , name ) !add it: call json % add ( p , var ) end subroutine json_value_add_integer","tags":"","loc":"proc/json_value_add_integer.html"},{"title":"json_value_add_integer_vec – JSON-Fortran","text":"private subroutine json_value_add_integer_vec(json, p, name, val) Add a integer vector child to the json_value variable. Note This routine is part of the public API that can be\n used to build a JSON structure using json_value pointers. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the variable integer(kind=IK), intent(in), dimension(:) :: val value Calls proc~~json_value_add_integer_vec~~CallsGraph proc~json_value_add_integer_vec json_core%json_value_add_integer_vec none~add~4 json_core%add proc~json_value_add_integer_vec->none~add~4 none~create_array json_core%create_array proc~json_value_add_integer_vec->none~create_array proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_array->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_add_integer_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! name of the variable integer ( IK ), dimension (:), intent ( in ) :: val !! value type ( json_value ), pointer :: var integer ( IK ) :: i !! counter !create a variable as an array: call json % create_array ( var , name ) !populate the array: do i = 1 , size ( val ) call json % add ( var , CK_ '' , val ( i )) end do !add it: call json % add ( p , var ) end subroutine json_value_add_integer_vec","tags":"","loc":"proc/json_value_add_integer_vec.html"},{"title":"json_value_add_logical – JSON-Fortran","text":"private subroutine json_value_add_logical(json, p, name, val) Add a logical value child to the json_value variable. Note This routine is part of the public API that can be\n used to build a JSON structure using json_value pointers. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the variable logical(kind=LK), intent(in) :: val value Calls proc~~json_value_add_logical~~CallsGraph proc~json_value_add_logical json_core%json_value_add_logical none~add~4 json_core%add proc~json_value_add_logical->none~add~4 none~create_logical json_core%create_logical proc~json_value_add_logical->none~create_logical proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_create_logical json_core%json_value_create_logical none~create_logical->proc~json_value_create_logical proc~wrap_json_value_create_logical json_core%wrap_json_value_create_logical none~create_logical->proc~wrap_json_value_create_logical proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_create json_value_create proc~json_value_create_logical->proc~json_value_create proc~to_logical json_core%to_logical proc~json_value_create_logical->proc~to_logical proc~wrap_json_value_create_logical->none~create_logical proc~wrap_json_value_create_logical->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_data destroy_json_data proc~to_logical->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_add_logical ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! name of the variable logical ( LK ), intent ( in ) :: val !! value type ( json_value ), pointer :: var !create the variable: call json % create_logical ( var , val , name ) !add it: call json % add ( p , var ) end subroutine json_value_add_logical","tags":"","loc":"proc/json_value_add_logical.html"},{"title":"json_value_add_logical_vec – JSON-Fortran","text":"private subroutine json_value_add_logical_vec(json, p, name, val) Add a logical vector child to the json_value variable. Note This routine is part of the public API that can be\n used to build a JSON structure using json_value pointers. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the vector logical(kind=LK), intent(in), dimension(:) :: val value Calls proc~~json_value_add_logical_vec~~CallsGraph proc~json_value_add_logical_vec json_core%json_value_add_logical_vec none~add~4 json_core%add proc~json_value_add_logical_vec->none~add~4 none~create_array json_core%create_array proc~json_value_add_logical_vec->none~create_array proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_array->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_add_logical_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! name of the vector logical ( LK ), dimension (:), intent ( in ) :: val !! value type ( json_value ), pointer :: var integer ( IK ) :: i !! counter !create the variable as an array: call json % create_array ( var , name ) !populate the array: do i = 1 , size ( val ) call json % add ( var , CK_ '' , val ( i )) end do !add it: call json % add ( p , var ) end subroutine json_value_add_logical_vec","tags":"","loc":"proc/json_value_add_logical_vec.html"},{"title":"json_value_add_member – JSON-Fortran","text":"private subroutine json_value_add_member(json, p, member) Adds member as a child of p . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p p must be a json_object or a json_array type( json_value ), pointer :: member the child member\nto add to p Calls proc~~json_value_add_member~~CallsGraph proc~json_value_add_member json_core%json_value_add_member none~info~2 json_core%info proc~json_value_add_member->none~info~2 none~throw_exception json_core%throw_exception proc~json_value_add_member->none~throw_exception proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~wrap_json_info_by_path->none~info~2 interface~to_unicode to_unicode proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->none~get~2 proc~json_string_info->proc~json_clear_exceptions proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_add_member ( json , p , member ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! `p` must be a `json_object` !! or a `json_array` type ( json_value ), pointer :: member !! the child member !! to add to `p` integer ( IK ) :: var_type !! variable type of `p` if (. not . json % exception_thrown ) then if ( associated ( p )) then call json % info ( p , var_type = var_type ) select case ( var_type ) case ( json_object , json_array ) ! associate the parent member % parent => p ! add to linked list if ( associated ( p % children )) then p % tail % next => member member % previous => p % tail else p % children => member member % previous => null () !first in the list end if ! new member is now the last one in the list p % tail => member p % n_children = p % n_children + 1 case default call json % throw_exception ( 'Error in json_value_add_member: ' // & 'can only add child to object or array' ) end select else call json % throw_exception ( 'Error in json_value_add_member: ' // & 'the pointer is not associated' ) end if end if end subroutine json_value_add_member","tags":"","loc":"proc/json_value_add_member.html"},{"title":"json_value_add_null – JSON-Fortran","text":"private subroutine json_value_add_null(json, p, name) Add a NULL value child to the json_value variable. Note This routine is part of the public API that can be\n used to build a JSON structure using json_value pointers. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name Calls proc~~json_value_add_null~~CallsGraph proc~json_value_add_null json_core%json_value_add_null none~add~4 json_core%add proc~json_value_add_null->none~add~4 none~create_null json_core%create_null proc~json_value_add_null->none~create_null proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_create json_value_create proc~json_value_create_null->proc~json_value_create proc~to_null json_core%to_null proc~json_value_create_null->proc~to_null proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_null->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_data destroy_json_data proc~to_null->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_add_null ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name type ( json_value ), pointer :: var !create the variable: call json % create_null ( var , name ) !add it: call json % add ( p , var ) end subroutine json_value_add_null","tags":"","loc":"proc/json_value_add_null.html"},{"title":"json_value_add_real – JSON-Fortran","text":"private subroutine json_value_add_real(json, p, name, val) Add a real value child to the json_value variable. Note This routine is part of the public API that can be\n used to build a JSON structure using json_value pointers. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name variable name real(kind=RK), intent(in) :: val real value Calls proc~~json_value_add_real~~CallsGraph proc~json_value_add_real json_core%json_value_add_real none~add~4 json_core%add proc~json_value_add_real->none~add~4 none~create_real~2 json_core%create_real proc~json_value_add_real->none~create_real~2 proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_create_real32 json_core%json_value_create_real32 none~create_real~2->proc~json_value_create_real32 proc~wrap_json_value_create_real32 json_core%wrap_json_value_create_real32 none~create_real~2->proc~wrap_json_value_create_real32 proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_create_real32->none~create_real~2 proc~wrap_json_value_create_real32->none~create_real~2 proc~wrap_json_value_create_real32->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_add_real ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! variable name real ( RK ), intent ( in ) :: val !! real value type ( json_value ), pointer :: var !create the variable: call json % create_real ( var , val , name ) !add it: call json % add ( p , var ) end subroutine json_value_add_real","tags":"","loc":"proc/json_value_add_real.html"},{"title":"json_value_add_real32 – JSON-Fortran","text":"private subroutine json_value_add_real32(json, p, name, val) Alternate version of json_value_add_real where val is real32 . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name variable name real(kind=real32), intent(in) :: val real value Calls proc~~json_value_add_real32~~CallsGraph proc~json_value_add_real32 json_core%json_value_add_real32 none~add~4 json_core%add proc~json_value_add_real32->none~add~4 proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_add_real32 ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! variable name real ( real32 ), intent ( in ) :: val !! real value call json % add ( p , name , real ( val , RK )) end subroutine json_value_add_real32","tags":"","loc":"proc/json_value_add_real32.html"},{"title":"json_value_add_real32_vec – JSON-Fortran","text":"private subroutine json_value_add_real32_vec(json, p, name, val) Alternate version of json_value_add_real_vec where val is real32 . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name real(kind=real32), intent(in), dimension(:) :: val Calls proc~~json_value_add_real32_vec~~CallsGraph proc~json_value_add_real32_vec json_core%json_value_add_real32_vec none~add~4 json_core%add proc~json_value_add_real32_vec->none~add~4 proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_add_real32_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name real ( real32 ), dimension (:), intent ( in ) :: val call json % add ( p , name , real ( val , RK )) end subroutine json_value_add_real32_vec","tags":"","loc":"proc/json_value_add_real32_vec.html"},{"title":"json_value_add_real_vec – JSON-Fortran","text":"private subroutine json_value_add_real_vec(json, p, name, val) Add a real vector child to the json_value variable. Note This routine is part of the public API that can be\n used to build a JSON structure using json_value pointers. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name real(kind=RK), intent(in), dimension(:) :: val Calls proc~~json_value_add_real_vec~~CallsGraph proc~json_value_add_real_vec json_core%json_value_add_real_vec none~add~4 json_core%add proc~json_value_add_real_vec->none~add~4 none~create_array json_core%create_array proc~json_value_add_real_vec->none~create_array proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_array->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_add_real_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name real ( RK ), dimension (:), intent ( in ) :: val type ( json_value ), pointer :: var integer ( IK ) :: i !! counter !create the variable as an array: call json % create_array ( var , name ) !populate the array: do i = 1 , size ( val ) call json % add ( var , CK_ '' , val ( i )) end do !add it: call json % add ( p , var ) end subroutine json_value_add_real_vec","tags":"","loc":"proc/json_value_add_real_vec.html"},{"title":"json_value_add_string – JSON-Fortran","text":"private subroutine json_value_add_string(json, p, name, val, trim_str, adjustl_str) Add a character string child to the json_value variable. Note This routine is part of the public API that can be\n used to build a JSON structure using json_value pointers. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the variable character(kind=CK, len=*), intent(in) :: val value logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val Calls proc~~json_value_add_string~~CallsGraph proc~json_value_add_string json_core%json_value_add_string none~add~4 json_core%add proc~json_value_add_string->none~add~4 none~create_string json_core%create_string proc~json_value_add_string->none~create_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_create json_value_create proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string proc~wrap_json_value_create_string->none~create_string proc~wrap_json_value_create_string->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_data destroy_json_data proc~to_string->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_add_string ( json , p , name , val , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! name of the variable character ( kind = CK , len =* ), intent ( in ) :: val !! value logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` type ( json_value ), pointer :: var !create the variable: call json % create_string ( var , val , name , trim_str , adjustl_str ) !add it: call json % add ( p , var ) end subroutine json_value_add_string","tags":"","loc":"proc/json_value_add_string.html"},{"title":"json_value_add_string_name_ascii – JSON-Fortran","text":"private subroutine json_value_add_string_name_ascii(json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string where name is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable character(kind=CK, len=*), intent(in) :: val value logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val Calls proc~~json_value_add_string_name_ascii~~CallsGraph proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode none~add~4 json_core%add proc~json_value_add_string_name_ascii->none~add~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_add_string_name_ascii~~CalledByGraph proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4 json_core%add proc~json_value_add_string_name_ascii->none~add~4 none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~add~4 none~create json_core%create proc~json_add_integer_vec_by_path->none~create none~info~2 json_core%info proc~json_add_integer_vec_by_path->none~info~2 proc~json_value_replace json_core%json_value_replace proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~add~4 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~add~4 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_value_add_integer json_core%json_value_add_integer proc~json_value_add_integer->none~add~4 proc~json_value_add_integer_vec json_core%json_value_add_integer_vec proc~json_value_add_integer_vec->none~add~4 proc~json_value_add_logical json_core%json_value_add_logical proc~json_value_add_logical->none~add~4 proc~json_value_add_logical_vec json_core%json_value_add_logical_vec proc~json_value_add_logical_vec->none~add~4 proc~json_value_add_null json_core%json_value_add_null proc~json_value_add_null->none~add~4 proc~json_value_add_real json_core%json_value_add_real proc~json_value_add_real->none~add~4 proc~json_value_add_real32 json_core%json_value_add_real32 proc~json_value_add_real32->none~add~4 proc~json_value_add_real32_vec json_core%json_value_add_real32_vec proc~json_value_add_real32_vec->none~add~4 proc~json_value_add_real_vec json_core%json_value_add_real_vec proc~json_value_add_real_vec->none~add~4 proc~json_value_add_string json_core%json_value_add_string proc~json_value_add_string->none~add~4 proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec json_core%json_value_add_string_vec proc~json_value_add_string_vec->none~add~4 proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->none~add~4 proc~parse_array json_core%parse_array proc~parse_array->none~add~4 proc~parse_value json_core%parse_value proc~parse_array->proc~parse_value proc~parse_object json_core%parse_object proc~parse_object->none~add~4 proc~parse_object->proc~parse_object proc~parse_object->proc~parse_value proc~wrap_json_value_add_integer json_core%wrap_json_value_add_integer proc~wrap_json_value_add_integer->none~add~4 proc~wrap_json_value_add_integer_vec json_core%wrap_json_value_add_integer_vec proc~wrap_json_value_add_integer_vec->none~add~4 proc~wrap_json_value_add_logical json_core%wrap_json_value_add_logical proc~wrap_json_value_add_logical->none~add~4 proc~wrap_json_value_add_logical_vec json_core%wrap_json_value_add_logical_vec proc~wrap_json_value_add_logical_vec->none~add~4 proc~wrap_json_value_add_null json_core%wrap_json_value_add_null proc~wrap_json_value_add_null->none~add~4 proc~wrap_json_value_add_real json_core%wrap_json_value_add_real proc~wrap_json_value_add_real->none~add~4 proc~wrap_json_value_add_real32 json_core%wrap_json_value_add_real32 proc~wrap_json_value_add_real32->none~add~4 proc~wrap_json_value_add_real32_vec json_core%wrap_json_value_add_real32_vec proc~wrap_json_value_add_real32_vec->none~add~4 proc~wrap_json_value_add_real_vec json_core%wrap_json_value_add_real_vec proc~wrap_json_value_add_real_vec->none~add~4 proc~wrap_json_value_add_string json_core%wrap_json_value_add_string proc~wrap_json_value_add_string->none~add~4 proc~wrap_json_value_add_string_vec json_core%wrap_json_value_add_string_vec proc~wrap_json_value_add_string_vec->none~add~4 proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~parse_value->proc~parse_array proc~parse_value->proc~parse_object proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~convert->none~info~2 proc~convert->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_add_string_name_ascii ( json , p , name , val , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! name of the variable character ( kind = CK , len =* ), intent ( in ) :: val !! value logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` call json % add ( p , to_unicode ( name ), val , trim_str , adjustl_str ) end subroutine json_value_add_string_name_ascii","tags":"","loc":"proc/json_value_add_string_name_ascii.html"},{"title":"json_value_add_string_val_ascii – JSON-Fortran","text":"private subroutine json_value_add_string_val_ascii(json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string where val is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the variable character(kind=CDK, len=*), intent(in) :: val value logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val Calls proc~~json_value_add_string_val_ascii~~CallsGraph proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii interface~to_unicode to_unicode proc~json_value_add_string_val_ascii->interface~to_unicode none~add~4 json_core%add proc~json_value_add_string_val_ascii->none~add~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_add_string_val_ascii~~CalledByGraph proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4 json_core%add proc~json_value_add_string_val_ascii->none~add~4 none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~add~4 none~create json_core%create proc~json_add_integer_vec_by_path->none~create none~info~2 json_core%info proc~json_add_integer_vec_by_path->none~info~2 proc~json_value_replace json_core%json_value_replace proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~add~4 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~add~4 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_value_add_integer json_core%json_value_add_integer proc~json_value_add_integer->none~add~4 proc~json_value_add_integer_vec json_core%json_value_add_integer_vec proc~json_value_add_integer_vec->none~add~4 proc~json_value_add_logical json_core%json_value_add_logical proc~json_value_add_logical->none~add~4 proc~json_value_add_logical_vec json_core%json_value_add_logical_vec proc~json_value_add_logical_vec->none~add~4 proc~json_value_add_null json_core%json_value_add_null proc~json_value_add_null->none~add~4 proc~json_value_add_real json_core%json_value_add_real proc~json_value_add_real->none~add~4 proc~json_value_add_real32 json_core%json_value_add_real32 proc~json_value_add_real32->none~add~4 proc~json_value_add_real32_vec json_core%json_value_add_real32_vec proc~json_value_add_real32_vec->none~add~4 proc~json_value_add_real_vec json_core%json_value_add_real_vec proc~json_value_add_real_vec->none~add~4 proc~json_value_add_string json_core%json_value_add_string proc~json_value_add_string->none~add~4 proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_vec json_core%json_value_add_string_vec proc~json_value_add_string_vec->none~add~4 proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->none~add~4 proc~parse_array json_core%parse_array proc~parse_array->none~add~4 proc~parse_value json_core%parse_value proc~parse_array->proc~parse_value proc~parse_object json_core%parse_object proc~parse_object->none~add~4 proc~parse_object->proc~parse_object proc~parse_object->proc~parse_value proc~wrap_json_value_add_integer json_core%wrap_json_value_add_integer proc~wrap_json_value_add_integer->none~add~4 proc~wrap_json_value_add_integer_vec json_core%wrap_json_value_add_integer_vec proc~wrap_json_value_add_integer_vec->none~add~4 proc~wrap_json_value_add_logical json_core%wrap_json_value_add_logical proc~wrap_json_value_add_logical->none~add~4 proc~wrap_json_value_add_logical_vec json_core%wrap_json_value_add_logical_vec proc~wrap_json_value_add_logical_vec->none~add~4 proc~wrap_json_value_add_null json_core%wrap_json_value_add_null proc~wrap_json_value_add_null->none~add~4 proc~wrap_json_value_add_real json_core%wrap_json_value_add_real proc~wrap_json_value_add_real->none~add~4 proc~wrap_json_value_add_real32 json_core%wrap_json_value_add_real32 proc~wrap_json_value_add_real32->none~add~4 proc~wrap_json_value_add_real32_vec json_core%wrap_json_value_add_real32_vec proc~wrap_json_value_add_real32_vec->none~add~4 proc~wrap_json_value_add_real_vec json_core%wrap_json_value_add_real_vec proc~wrap_json_value_add_real_vec->none~add~4 proc~wrap_json_value_add_string json_core%wrap_json_value_add_string proc~wrap_json_value_add_string->none~add~4 proc~wrap_json_value_add_string_vec json_core%wrap_json_value_add_string_vec proc~wrap_json_value_add_string_vec->none~add~4 proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~parse_value->proc~parse_array proc~parse_value->proc~parse_object proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~convert->none~info~2 proc~convert->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_add_string_val_ascii ( json , p , name , val , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! name of the variable character ( kind = CDK , len =* ), intent ( in ) :: val !! value logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` call json % add ( p , name , to_unicode ( val ), trim_str , adjustl_str ) end subroutine json_value_add_string_val_ascii","tags":"","loc":"proc/json_value_add_string_val_ascii.html"},{"title":"json_value_add_string_vec – JSON-Fortran","text":"private subroutine json_value_add_string_vec(json, p, name, val, trim_str, adjustl_str) Add a character string vector child to the json_value variable. Note This routine is part of the public API that can be\n used to build a JSON structure using json_value pointers. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name variable name character(kind=CK, len=*), intent(in), dimension(:) :: val array of strings logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element Calls proc~~json_value_add_string_vec~~CallsGraph proc~json_value_add_string_vec json_core%json_value_add_string_vec none~add~4 json_core%add proc~json_value_add_string_vec->none~add~4 none~create_array json_core%create_array proc~json_value_add_string_vec->none~create_array proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_array->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_add_string_vec ( json , p , name , val , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! variable name character ( kind = CK , len =* ), dimension (:), intent ( in ) :: val !! array of strings logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element type ( json_value ), pointer :: var integer ( IK ) :: i !! counter !create the variable as an array: call json % create_array ( var , name ) !populate the array: do i = 1 , size ( val ) call json % add ( var , CK_ '' , val ( i ), trim_str , adjustl_str ) end do !add it: call json % add ( p , var ) end subroutine json_value_add_string_vec","tags":"","loc":"proc/json_value_add_string_vec.html"},{"title":"json_value_add_string_vec_name_ascii – JSON-Fortran","text":"private subroutine json_value_add_string_vec_name_ascii(json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string_vec where name is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name character(kind=CK, len=*), intent(in), dimension(:) :: val logical(kind=LK), intent(in), optional :: trim_str logical(kind=LK), intent(in), optional :: adjustl_str Calls proc~~json_value_add_string_vec_name_ascii~~CallsGraph proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii interface~to_unicode to_unicode proc~json_value_add_string_vec_name_ascii->interface~to_unicode none~add~4 json_core%add proc~json_value_add_string_vec_name_ascii->none~add~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_add_string_vec_name_ascii~~CalledByGraph proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4 json_core%add proc~json_value_add_string_vec_name_ascii->none~add~4 none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~add~4 none~create json_core%create proc~json_add_integer_vec_by_path->none~create none~info~2 json_core%info proc~json_add_integer_vec_by_path->none~info~2 proc~json_value_replace json_core%json_value_replace proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~add~4 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~add~4 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_value_add_integer json_core%json_value_add_integer proc~json_value_add_integer->none~add~4 proc~json_value_add_integer_vec json_core%json_value_add_integer_vec proc~json_value_add_integer_vec->none~add~4 proc~json_value_add_logical json_core%json_value_add_logical proc~json_value_add_logical->none~add~4 proc~json_value_add_logical_vec json_core%json_value_add_logical_vec proc~json_value_add_logical_vec->none~add~4 proc~json_value_add_null json_core%json_value_add_null proc~json_value_add_null->none~add~4 proc~json_value_add_real json_core%json_value_add_real proc~json_value_add_real->none~add~4 proc~json_value_add_real32 json_core%json_value_add_real32 proc~json_value_add_real32->none~add~4 proc~json_value_add_real32_vec json_core%json_value_add_real32_vec proc~json_value_add_real32_vec->none~add~4 proc~json_value_add_real_vec json_core%json_value_add_real_vec proc~json_value_add_real_vec->none~add~4 proc~json_value_add_string json_core%json_value_add_string proc~json_value_add_string->none~add~4 proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec json_core%json_value_add_string_vec proc~json_value_add_string_vec->none~add~4 proc~json_value_add_string_vec_val_ascii->none~add~4 proc~parse_array json_core%parse_array proc~parse_array->none~add~4 proc~parse_value json_core%parse_value proc~parse_array->proc~parse_value proc~parse_object json_core%parse_object proc~parse_object->none~add~4 proc~parse_object->proc~parse_object proc~parse_object->proc~parse_value proc~wrap_json_value_add_integer json_core%wrap_json_value_add_integer proc~wrap_json_value_add_integer->none~add~4 proc~wrap_json_value_add_integer_vec json_core%wrap_json_value_add_integer_vec proc~wrap_json_value_add_integer_vec->none~add~4 proc~wrap_json_value_add_logical json_core%wrap_json_value_add_logical proc~wrap_json_value_add_logical->none~add~4 proc~wrap_json_value_add_logical_vec json_core%wrap_json_value_add_logical_vec proc~wrap_json_value_add_logical_vec->none~add~4 proc~wrap_json_value_add_null json_core%wrap_json_value_add_null proc~wrap_json_value_add_null->none~add~4 proc~wrap_json_value_add_real json_core%wrap_json_value_add_real proc~wrap_json_value_add_real->none~add~4 proc~wrap_json_value_add_real32 json_core%wrap_json_value_add_real32 proc~wrap_json_value_add_real32->none~add~4 proc~wrap_json_value_add_real32_vec json_core%wrap_json_value_add_real32_vec proc~wrap_json_value_add_real32_vec->none~add~4 proc~wrap_json_value_add_real_vec json_core%wrap_json_value_add_real_vec proc~wrap_json_value_add_real_vec->none~add~4 proc~wrap_json_value_add_string json_core%wrap_json_value_add_string proc~wrap_json_value_add_string->none~add~4 proc~wrap_json_value_add_string_vec json_core%wrap_json_value_add_string_vec proc~wrap_json_value_add_string_vec->none~add~4 proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~parse_value->proc~parse_array proc~parse_value->proc~parse_object proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~convert->none~info~2 proc~convert->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_add_string_vec_name_ascii ( json , p , name , val , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name character ( kind = CK , len =* ), dimension (:), intent ( in ) :: val logical ( LK ), intent ( in ), optional :: trim_str logical ( LK ), intent ( in ), optional :: adjustl_str call json % add ( p , to_unicode ( name ), val , trim_str , adjustl_str ) end subroutine json_value_add_string_vec_name_ascii","tags":"","loc":"proc/json_value_add_string_vec_name_ascii.html"},{"title":"json_value_add_string_vec_val_ascii – JSON-Fortran","text":"private subroutine json_value_add_string_vec_val_ascii(json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string_vec where val is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name character(kind=CDK, len=*), intent(in), dimension(:) :: val logical(kind=LK), intent(in), optional :: trim_str logical(kind=LK), intent(in), optional :: adjustl_str Calls proc~~json_value_add_string_vec_val_ascii~~CallsGraph proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii interface~to_unicode to_unicode proc~json_value_add_string_vec_val_ascii->interface~to_unicode none~add~4 json_core%add proc~json_value_add_string_vec_val_ascii->none~add~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_add_string_vec_val_ascii~~CalledByGraph proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4 json_core%add proc~json_value_add_string_vec_val_ascii->none~add~4 none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~add~4 none~create json_core%create proc~json_add_integer_vec_by_path->none~create none~info~2 json_core%info proc~json_add_integer_vec_by_path->none~info~2 proc~json_value_replace json_core%json_value_replace proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~add~4 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~add~4 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_value_add_integer json_core%json_value_add_integer proc~json_value_add_integer->none~add~4 proc~json_value_add_integer_vec json_core%json_value_add_integer_vec proc~json_value_add_integer_vec->none~add~4 proc~json_value_add_logical json_core%json_value_add_logical proc~json_value_add_logical->none~add~4 proc~json_value_add_logical_vec json_core%json_value_add_logical_vec proc~json_value_add_logical_vec->none~add~4 proc~json_value_add_null json_core%json_value_add_null proc~json_value_add_null->none~add~4 proc~json_value_add_real json_core%json_value_add_real proc~json_value_add_real->none~add~4 proc~json_value_add_real32 json_core%json_value_add_real32 proc~json_value_add_real32->none~add~4 proc~json_value_add_real32_vec json_core%json_value_add_real32_vec proc~json_value_add_real32_vec->none~add~4 proc~json_value_add_real_vec json_core%json_value_add_real_vec proc~json_value_add_real_vec->none~add~4 proc~json_value_add_string json_core%json_value_add_string proc~json_value_add_string->none~add~4 proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec json_core%json_value_add_string_vec proc~json_value_add_string_vec->none~add~4 proc~json_value_add_string_vec_name_ascii->none~add~4 proc~parse_array json_core%parse_array proc~parse_array->none~add~4 proc~parse_value json_core%parse_value proc~parse_array->proc~parse_value proc~parse_object json_core%parse_object proc~parse_object->none~add~4 proc~parse_object->proc~parse_object proc~parse_object->proc~parse_value proc~wrap_json_value_add_integer json_core%wrap_json_value_add_integer proc~wrap_json_value_add_integer->none~add~4 proc~wrap_json_value_add_integer_vec json_core%wrap_json_value_add_integer_vec proc~wrap_json_value_add_integer_vec->none~add~4 proc~wrap_json_value_add_logical json_core%wrap_json_value_add_logical proc~wrap_json_value_add_logical->none~add~4 proc~wrap_json_value_add_logical_vec json_core%wrap_json_value_add_logical_vec proc~wrap_json_value_add_logical_vec->none~add~4 proc~wrap_json_value_add_null json_core%wrap_json_value_add_null proc~wrap_json_value_add_null->none~add~4 proc~wrap_json_value_add_real json_core%wrap_json_value_add_real proc~wrap_json_value_add_real->none~add~4 proc~wrap_json_value_add_real32 json_core%wrap_json_value_add_real32 proc~wrap_json_value_add_real32->none~add~4 proc~wrap_json_value_add_real32_vec json_core%wrap_json_value_add_real32_vec proc~wrap_json_value_add_real32_vec->none~add~4 proc~wrap_json_value_add_real_vec json_core%wrap_json_value_add_real_vec proc~wrap_json_value_add_real_vec->none~add~4 proc~wrap_json_value_add_string json_core%wrap_json_value_add_string proc~wrap_json_value_add_string->none~add~4 proc~wrap_json_value_add_string_vec json_core%wrap_json_value_add_string_vec proc~wrap_json_value_add_string_vec->none~add~4 proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~parse_value->proc~parse_array proc~parse_value->proc~parse_object proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~convert->none~info~2 proc~convert->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_add_string_vec_val_ascii ( json , p , name , val , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name character ( kind = CDK , len =* ), dimension (:), intent ( in ) :: val logical ( LK ), intent ( in ), optional :: trim_str logical ( LK ), intent ( in ), optional :: adjustl_str call json % add ( p , name , to_unicode ( val ), trim_str , adjustl_str ) end subroutine json_value_add_string_vec_val_ascii","tags":"","loc":"proc/json_value_add_string_vec_val_ascii.html"},{"title":"json_value_clone_func – JSON-Fortran","text":"private recursive subroutine json_value_clone_func(from, to, parent, previous, tail) Recursive deep copy function called by json_clone . Note If new data is added to the json_value type,\n then this would need to be updated. Type Bound json_core Arguments Type Intent Optional Attributes Name type( json_value ), pointer :: from this is the structure to clone type( json_value ), pointer :: to the clone is put here (it\nmust not already be associated) type( json_value ), optional, pointer :: parent to%parent type( json_value ), optional, pointer :: previous to%previous logical, optional :: tail if “to” is the tail of\nits parent’s children Called by proc~~json_value_clone_func~~CalledByGraph proc~json_value_clone_func json_core%json_value_clone_func proc~json_value_clone_func->proc~json_value_clone_func proc~json_clone json_core%json_clone proc~json_clone->proc~json_value_clone_func proc~assign_json_file json_file%assign_json_file proc~assign_json_file->proc~json_clone Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code recursive subroutine json_value_clone_func ( from , to , parent , previous , tail ) implicit none type ( json_value ), pointer :: from !! this is the structure to clone type ( json_value ), pointer :: to !! the clone is put here (it !! must not already be associated) type ( json_value ), pointer , optional :: parent !! to%parent type ( json_value ), pointer , optional :: previous !! to%previous logical , optional :: tail !! if \"to\" is the tail of !! its parent's children nullify ( to ) if ( associated ( from )) then allocate ( to ) !copy over the data variables: ! [note: the allocate() statements don't work here for the ! deferred-length characters in gfortran-4.9] if ( allocated ( from % name )) to % name = from % name if ( allocated ( from % dbl_value )) allocate ( to % dbl_value , source = from % dbl_value ) if ( allocated ( from % log_value )) allocate ( to % log_value , source = from % log_value ) if ( allocated ( from % str_value )) to % str_value = from % str_value if ( allocated ( from % int_value )) allocate ( to % int_value , source = from % int_value ) to % var_type = from % var_type to % n_children = from % n_children ! allocate and associate the pointers as necessary: if ( present ( parent )) to % parent => parent if ( present ( previous )) to % previous => previous if ( present ( tail )) then if ( tail . and . associated ( to % parent )) to % parent % tail => to end if if ( associated ( from % next ) . and . associated ( to % parent )) then ! we only clone the next entry in an array ! if the parent has also been cloned call json_value_clone_func ( from = from % next ,& to = to % next ,& previous = to ,& parent = to % parent ,& tail = (. not . associated ( from % next % next ))) end if if ( associated ( from % children )) then call json_value_clone_func ( from = from % children ,& to = to % children ,& parent = to ,& tail = (. not . associated ( from % children % next ))) end if end if end subroutine json_value_clone_func","tags":"","loc":"proc/json_value_clone_func.html"},{"title":"json_value_create – JSON-Fortran","text":"private subroutine json_value_create(p) Allocate a json_value pointer variable.\n This should be called before adding data to it. Example type ( json_value ), pointer :: var call json_value_create ( var ) call json % to_real ( var , 1.0_RK ) Notes This routine does not check for exceptions. The pointer should not already be allocated, or a memory leak will occur. Arguments Type Intent Optional Attributes Name type( json_value ), pointer :: p Called by proc~~json_value_create~~CalledByGraph proc~json_value_create json_value_create proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->proc~json_value_create none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~json_value_create proc~parse_value json_core%parse_value proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~json_value_create proc~json_parse_string->proc~parse_value proc~json_value_create_array json_core%json_value_create_array proc~json_value_create_array->proc~json_value_create proc~json_value_create_integer json_core%json_value_create_integer proc~json_value_create_integer->proc~json_value_create proc~json_value_create_logical json_core%json_value_create_logical proc~json_value_create_logical->proc~json_value_create proc~json_value_create_null json_core%json_value_create_null proc~json_value_create_null->proc~json_value_create proc~json_value_create_object json_core%json_value_create_object proc~json_value_create_object->proc~json_value_create proc~json_value_create_real json_core%json_value_create_real proc~json_value_create_real->proc~json_value_create proc~json_value_create_string json_core%json_value_create_string proc~json_value_create_string->proc~json_value_create proc~parse_array json_core%parse_array proc~parse_array->proc~json_value_create proc~parse_array->proc~parse_value proc~parse_object json_core%parse_object proc~parse_object->proc~json_value_create proc~parse_object->proc~parse_object proc~parse_object->proc~parse_value none~create_array json_core%create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array none~create_integer json_core%create_integer none~create_integer->proc~json_value_create_integer proc~wrap_json_value_create_integer json_core%wrap_json_value_create_integer none~create_integer->proc~wrap_json_value_create_integer none~create_logical json_core%create_logical none~create_logical->proc~json_value_create_logical proc~wrap_json_value_create_logical json_core%wrap_json_value_create_logical none~create_logical->proc~wrap_json_value_create_logical none~create_null json_core%create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null none~create_object json_core%create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object none~create_string json_core%create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~parse_value->proc~parse_array proc~parse_value->proc~parse_object none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~convert->none~create_array proc~convert->none~create_null proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create_integer proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create_array proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create_logical proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create_array proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create_array proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create_string proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~create_object none~add_by_path~2 json_core%add_by_path proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~create_object proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~create_object proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~create_object proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~create_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~create_object proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~create_object proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~create_object proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->none~create_object proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->none~create_object proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~create_object proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~json_value_add_integer json_core%json_value_add_integer proc~json_value_add_integer->none~create_integer proc~json_value_add_integer_vec json_core%json_value_add_integer_vec proc~json_value_add_integer_vec->none~create_array proc~json_value_add_logical json_core%json_value_add_logical proc~json_value_add_logical->none~create_logical proc~json_value_add_logical_vec json_core%json_value_add_logical_vec proc~json_value_add_logical_vec->none~create_array proc~json_value_add_null json_core%json_value_add_null proc~json_value_add_null->none~create_null proc~json_value_add_real_vec json_core%json_value_add_real_vec proc~json_value_add_real_vec->none~create_array proc~json_value_add_string json_core%json_value_add_string proc~json_value_add_string->none~create_string proc~json_value_add_string_vec json_core%json_value_add_string_vec proc~json_value_add_string_vec->none~create_array proc~wrap_json_parse_string->none~deserialize~2 proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_integer->none~create_integer proc~wrap_json_value_create_logical->none~create_logical proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->none~create_object proc~wrap_json_value_create_string->none~create_string none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~info~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~info~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~info~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_create ( p ) implicit none type ( json_value ), pointer :: p nullify ( p ) allocate ( p ) end subroutine json_value_create","tags":"","loc":"proc/json_value_create.html"},{"title":"json_value_create_array – JSON-Fortran","text":"private subroutine json_value_create_array(json, p, name) Allocate a json_value pointer and make it an array variable.\n The pointer should not already be allocated. Example type ( json_value ), pointer :: p type ( json_core ) :: json call json % create_array ( p , 'arrayname' ) Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name Calls proc~~json_value_create_array~~CallsGraph proc~json_value_create_array json_core%json_value_create_array proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_create_array~~CalledByGraph proc~json_value_create_array json_core%json_value_create_array none~create_array json_core%create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~convert json_core%convert proc~convert->none~create_array none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create_array none~create json_core%create proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create_array proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create_array proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_integer_vec json_core%json_value_add_integer_vec proc~json_value_add_integer_vec->none~create_array proc~json_value_add_logical_vec json_core%json_value_add_logical_vec proc~json_value_add_logical_vec->none~create_array proc~json_value_add_real_vec json_core%json_value_add_real_vec proc~json_value_add_real_vec->none~create_array proc~json_value_add_string_vec json_core%json_value_add_string_vec proc~json_value_add_string_vec->none~create_array proc~wrap_json_value_create_array->none~create_array proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~convert none~get_child json_core%get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_create_array ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name call json_value_create ( p ) call json % to_array ( p , name ) end subroutine json_value_create_array","tags":"","loc":"proc/json_value_create_array.html"},{"title":"json_value_create_integer – JSON-Fortran","text":"private subroutine json_value_create_integer(json, p, val, name) Allocate a json_value pointer and make it an integer(IK) variable.\n The pointer should not already be allocated. Example type ( json_value ), pointer :: p type ( json_core ) :: json call json % create_integer ( p , 'value' , 1 ) Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(in) :: val character(kind=CK, len=*), intent(in) :: name Calls proc~~json_value_create_integer~~CallsGraph proc~json_value_create_integer json_core%json_value_create_integer proc~json_value_create json_value_create proc~json_value_create_integer->proc~json_value_create proc~to_integer json_core%to_integer proc~json_value_create_integer->proc~to_integer proc~destroy_json_data destroy_json_data proc~to_integer->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_create_integer~~CalledByGraph proc~json_value_create_integer json_core%json_value_create_integer none~create_integer json_core%create_integer none~create_integer->proc~json_value_create_integer proc~wrap_json_value_create_integer json_core%wrap_json_value_create_integer none~create_integer->proc~wrap_json_value_create_integer proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create_integer proc~json_value_add_integer json_core%json_value_add_integer proc~json_value_add_integer->none~create_integer proc~wrap_json_value_create_integer->none~create_integer proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_create_integer ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p integer ( IK ), intent ( in ) :: val character ( kind = CK , len =* ), intent ( in ) :: name call json_value_create ( p ) call json % to_integer ( p , val , name ) end subroutine json_value_create_integer","tags":"","loc":"proc/json_value_create_integer.html"},{"title":"json_value_create_logical – JSON-Fortran","text":"private subroutine json_value_create_logical(json, p, val, name) Allocate a json_value pointer and make it a logical(LK) variable.\n The pointer should not already be allocated. Example type ( json_value ), pointer :: p type ( json_core ) :: json call json % create_logical ( p , 'value' ,. true .) Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p logical(kind=LK), intent(in) :: val variable value character(kind=CK, len=*), intent(in) :: name variable name Calls proc~~json_value_create_logical~~CallsGraph proc~json_value_create_logical json_core%json_value_create_logical proc~json_value_create json_value_create proc~json_value_create_logical->proc~json_value_create proc~to_logical json_core%to_logical proc~json_value_create_logical->proc~to_logical proc~destroy_json_data destroy_json_data proc~to_logical->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_create_logical~~CalledByGraph proc~json_value_create_logical json_core%json_value_create_logical none~create_logical json_core%create_logical none~create_logical->proc~json_value_create_logical proc~wrap_json_value_create_logical json_core%wrap_json_value_create_logical none~create_logical->proc~wrap_json_value_create_logical proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create_logical proc~json_value_add_logical json_core%json_value_add_logical proc~json_value_add_logical->none~create_logical proc~wrap_json_value_create_logical->none~create_logical proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_create_logical ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p logical ( LK ), intent ( in ) :: val !! variable value character ( kind = CK , len =* ), intent ( in ) :: name !! variable name call json_value_create ( p ) call json % to_logical ( p , val , name ) end subroutine json_value_create_logical","tags":"","loc":"proc/json_value_create_logical.html"},{"title":"json_value_create_null – JSON-Fortran","text":"private subroutine json_value_create_null(json, p, name) Allocate a json_value pointer and make it a null variable.\n The pointer should not already be allocated. Example type ( json_value ), pointer :: p type ( json_core ) :: json call json % create_null ( p , 'value' ) Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name Calls proc~~json_value_create_null~~CallsGraph proc~json_value_create_null json_core%json_value_create_null proc~json_value_create json_value_create proc~json_value_create_null->proc~json_value_create proc~to_null json_core%to_null proc~json_value_create_null->proc~to_null proc~destroy_json_data destroy_json_data proc~to_null->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_create_null~~CalledByGraph proc~json_value_create_null json_core%json_value_create_null none~create_null json_core%create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~convert json_core%convert proc~convert->none~create_null none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_value_add_null json_core%json_value_add_null proc~json_value_add_null->none~create_null proc~wrap_json_value_create_null->none~create_null proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~convert none~get_child json_core%get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_create_null ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name call json_value_create ( p ) call json % to_null ( p , name ) end subroutine json_value_create_null","tags":"","loc":"proc/json_value_create_null.html"},{"title":"json_value_create_object – JSON-Fortran","text":"private subroutine json_value_create_object(json, p, name) Allocate a json_value pointer and make it an object variable.\n The pointer should not already be allocated. Example type ( json_value ), pointer :: p type ( json_core ) :: json call json % create_object ( p , 'objectname' ) Note The name is not significant for the root structure or an array element.\n In those cases, an empty string can be used. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name Calls proc~~json_value_create_object~~CallsGraph proc~json_value_create_object json_core%json_value_create_object proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_create_object~~CalledByGraph proc~json_value_create_object json_core%json_value_create_object none~create_object json_core%create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~convert json_core%convert proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~create_object none~add_by_path~2 json_core%add_by_path proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~create_object proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~create_object proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~create_object proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~create_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~create_object proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~create_object proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~create_object proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->none~create_object proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->none~create_object proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~create_object proc~json_file_add_string_vec->none~add_by_path~2 proc~wrap_json_value_create_object->none~create_object proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~convert none~get_child json_core%get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_create_object ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name call json_value_create ( p ) call json % to_object ( p , name ) end subroutine json_value_create_object","tags":"","loc":"proc/json_value_create_object.html"},{"title":"json_value_create_real – JSON-Fortran","text":"private subroutine json_value_create_real(json, p, val, name) Allocate a json_value pointer and make it a real(RK) variable.\n The pointer should not already be allocated. Example type ( json_value ), pointer :: p type ( json_core ) :: json call json % create_real ( p , 'value' , 1.0_RK ) Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=RK), intent(in) :: val character(kind=CK, len=*), intent(in) :: name Calls proc~~json_value_create_real~~CallsGraph proc~json_value_create_real json_core%json_value_create_real proc~json_value_create json_value_create proc~json_value_create_real->proc~json_value_create proc~to_real json_core%to_real proc~json_value_create_real->proc~to_real proc~destroy_json_data destroy_json_data proc~to_real->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_create_real ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p real ( RK ), intent ( in ) :: val character ( kind = CK , len =* ), intent ( in ) :: name call json_value_create ( p ) call json % to_real ( p , val , name ) end subroutine json_value_create_real","tags":"","loc":"proc/json_value_create_real.html"},{"title":"json_value_create_real32 – JSON-Fortran","text":"private subroutine json_value_create_real32(json, p, val, name) Alternate version of json_value_create_real where val=real32. Note The value is converted into a real(RK) variable internally. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=real32), intent(in) :: val character(kind=CK, len=*), intent(in) :: name Calls proc~~json_value_create_real32~~CallsGraph proc~json_value_create_real32 json_core%json_value_create_real32 none~create_real~2 json_core%create_real proc~json_value_create_real32->none~create_real~2 none~create_real~2->proc~json_value_create_real32 proc~wrap_json_value_create_real32 json_core%wrap_json_value_create_real32 none~create_real~2->proc~wrap_json_value_create_real32 proc~wrap_json_value_create_real32->none~create_real~2 interface~to_unicode to_unicode proc~wrap_json_value_create_real32->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_create_real32~~CalledByGraph proc~json_value_create_real32 json_core%json_value_create_real32 none~create_real~2 json_core%create_real proc~json_value_create_real32->none~create_real~2 none~create_real~2->proc~json_value_create_real32 proc~wrap_json_value_create_real32 json_core%wrap_json_value_create_real32 none~create_real~2->proc~wrap_json_value_create_real32 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create_real~2 proc~json_value_add_real json_core%json_value_add_real proc~json_value_add_real->none~create_real~2 proc~wrap_json_value_create_real json_core%wrap_json_value_create_real proc~wrap_json_value_create_real->none~create_real~2 proc~wrap_json_value_create_real32->none~create_real~2 proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_create_real32 ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p real ( real32 ), intent ( in ) :: val character ( kind = CK , len =* ), intent ( in ) :: name call json % create_real ( p , real ( val , RK ), name ) end subroutine json_value_create_real32","tags":"","loc":"proc/json_value_create_real32.html"},{"title":"json_value_create_string – JSON-Fortran","text":"private subroutine json_value_create_string(json, p, val, name, trim_str, adjustl_str) Allocate a json_value pointer and make it a string variable.\n The pointer should not already be allocated. Example type ( json_value ), pointer :: p type ( json_core ) :: json call json % create_string ( p , 'value' , 'hello' ) Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: val character(kind=CK, len=*), intent(in) :: name logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val Calls proc~~json_value_create_string~~CallsGraph proc~json_value_create_string json_core%json_value_create_string proc~json_value_create json_value_create proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string proc~destroy_json_data destroy_json_data proc~to_string->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_create_string~~CalledByGraph proc~json_value_create_string json_core%json_value_create_string none~create_string json_core%create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create_string proc~json_value_add_string json_core%json_value_add_string proc~json_value_add_string->none~create_string proc~wrap_json_value_create_string->none~create_string proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_create_string ( json , p , val , name , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: val character ( kind = CK , len =* ), intent ( in ) :: name logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` call json_value_create ( p ) call json % to_string ( p , val , name , trim_str , adjustl_str ) end subroutine json_value_create_string","tags":"","loc":"proc/json_value_create_string.html"},{"title":"json_value_destroy – JSON-Fortran","text":"private pure recursive subroutine json_value_destroy(json, p, destroy_next) Destroy a json_value linked-list structure. Note The original FSON version of this\n routine was not properly freeing the memory.\n It was rewritten. Note This routine destroys this variable, it’s children, and\n (if destroy_next is true) the subsequent elements in\n an object or array. It does not destroy the parent or\n previous elements. Note There is some protection here to enable destruction of\n improperly-created linked lists. However, likely there\n are cases not handled. Use the json_value_validate method to validate a JSON structure that was manually\n created using json_value pointers. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p variable to destroy logical(kind=LK), intent(in), optional :: destroy_next if true, then p%next is also destroyed (default is true) Calls proc~~json_value_destroy~~CallsGraph proc~json_value_destroy json_core%json_value_destroy none~destroy~3 json_core%destroy proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data none~destroy~3->proc~json_value_destroy proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_destroy~~CalledByGraph proc~json_value_destroy json_core%json_value_destroy none~destroy~3 json_core%destroy proc~json_value_destroy->none~destroy~3 none~destroy~3->proc~json_value_destroy proc~json_file_destroy json_file%json_file_destroy proc~json_file_destroy->none~destroy~3 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~destroy~3 none~valid_path~2 json_core%valid_path proc~json_file_valid_path_op->none~valid_path~2 proc~json_value_remove json_core%json_value_remove proc~json_value_remove->none~destroy~3 proc~parse_array json_core%parse_array proc~parse_array->none~destroy~3 proc~parse_value json_core%parse_value proc~parse_array->proc~parse_value proc~parse_object json_core%parse_object proc~parse_object->none~destroy~3 proc~parse_object->proc~parse_object proc~parse_object->proc~parse_value proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->proc~json_file_destroy none~deserialize json_file%deserialize proc~assign_string_to_json_file->none~deserialize proc~finalize_json_file finalize_json_file proc~finalize_json_file->proc~json_file_destroy proc~json_file_add json_file%json_file_add proc~json_file_add->proc~json_file_destroy proc~json_file_load json_file%json_file_load proc~json_file_load->proc~json_file_destroy none~load~2 json_core%load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->proc~json_file_destroy none~deserialize~2 json_core%deserialize proc~json_file_load_from_string->none~deserialize~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->proc~json_value_remove none~get~2 json_core%get proc~json_value_remove_if_present->none~get~2 proc~json_value_replace json_core%json_value_replace proc~json_value_replace->proc~json_value_remove none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~parse_value->proc~parse_array proc~parse_value->proc~parse_object none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present proc~convert json_core%convert proc~convert->proc~json_value_replace none~info~2 json_core%info proc~convert->none~info~2 proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->proc~json_value_replace none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->proc~json_value_replace proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2->proc~json_parse_file proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~convert none~get_child json_core%get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_file_load_from_string->none~deserialize proc~wrap_json_value_remove_if_present->none~remove_if_present interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_parse_string->none~deserialize~2 none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_file_remove->none~remove proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~string_info->proc~json_string_info none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure recursive subroutine json_value_destroy ( json , p , destroy_next ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! variable to destroy logical ( LK ), intent ( in ), optional :: destroy_next !! if true, then `p%next` !! is also destroyed (default is true) logical ( LK ) :: des_next !! local copy of `destroy_next` !! optional argument type ( json_value ), pointer :: child !! for getting child elements logical :: circular !! to check to malformed linked lists if ( associated ( p )) then if ( present ( destroy_next )) then des_next = destroy_next else des_next = . true . end if if ( allocated ( p % name )) deallocate ( p % name ) call destroy_json_data ( p ) if ( associated ( p % next )) then ! check for circular references: if ( associated ( p , p % next )) nullify ( p % next ) end if if ( associated ( p % children )) then do while ( p % n_children > 0 ) child => p % children if ( associated ( child )) then p % children => p % children % next p % n_children = p % n_children - 1 ! check children for circular references: circular = ( associated ( p % children ) . and . & associated ( p % children , child )) call json % destroy ( child , destroy_next = . false .) if ( circular ) exit else ! it is a malformed JSON object. But, we will ! press ahead with the destroy process, since ! otherwise, there would be no way to destroy it. exit end if end do nullify ( p % children ) nullify ( child ) end if if ( associated ( p % next ) . and . des_next ) call json % destroy ( p % next ) nullify ( p % previous ) nullify ( p % parent ) nullify ( p % tail ) if ( associated ( p )) deallocate ( p ) nullify ( p ) end if end subroutine json_value_destroy","tags":"","loc":"proc/json_value_destroy.html"},{"title":"json_value_get_child – JSON-Fortran","text":"private subroutine json_value_get_child(json, p, child) Returns pointer to the first child of the object\n(or null() if it is not associated). Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p object or array JSON data type( json_value ), pointer :: child pointer to the child Calls proc~~json_value_get_child~~CallsGraph proc~json_value_get_child json_core%json_value_get_child none~throw_exception json_core%throw_exception proc~json_value_get_child->none~throw_exception proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_get_child~~CalledByGraph proc~json_value_get_child json_core%json_value_get_child none~get_child json_core%get_child none~get_child->proc~json_value_get_child proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_matrix_info json_core%json_matrix_info proc~json_matrix_info->none~get_child none~info~2 json_core%info proc~json_matrix_info->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info~2 json_core%matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_matrix_info_by_path->none~get~2 proc~json_value_replace json_core%json_value_replace proc~json_value_replace->none~insert_after proc~wrap_json_matrix_info_by_path->none~matrix_info~2 none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~convert->proc~json_value_replace proc~convert->none~info~2 proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_member_by_path->none~info~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_by_path->none~info~2 proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~info~2 proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_by_path->none~info~2 proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~info~2 proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_file_variable_matrix_info->none~matrix_info none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_get_child ( json , p , child ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! object or array JSON data type ( json_value ), pointer :: child !! pointer to the child if ( associated ( p )) then child => p % children else nullify ( child ) call json % throw_exception ( 'Error in json_value_get_child: ' // & 'pointer is not associated.' ) end if end subroutine json_value_get_child","tags":"","loc":"proc/json_value_get_child.html"},{"title":"json_value_get_child_by_index – JSON-Fortran","text":"private subroutine json_value_get_child_by_index(json, p, idx, child, found) Returns a child in the object or array given the index. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p object or array JSON data integer(kind=IK), intent(in) :: idx index of the child\n(this is a 1-based Fortran\nstyle array index). type( json_value ), pointer :: child pointer to the child logical(kind=LK), intent(out), optional :: found true if the value was found\n(if not present, an exception\nwill be thrown if it was not\nfound. If present and not\nfound, no exception will be\nthrown). Calls proc~~json_value_get_child_by_index~~CallsGraph proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~throw_exception json_core%throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_get_child_by_index~~CalledByGraph proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child json_core%get_child none~get_child->proc~json_value_get_child_by_index proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_matrix_info json_core%json_matrix_info proc~json_matrix_info->none~get_child none~info~2 json_core%info proc~json_matrix_info->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info~2 json_core%matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_matrix_info_by_path->none~get~2 proc~json_value_replace json_core%json_value_replace proc~json_value_replace->none~insert_after proc~wrap_json_matrix_info_by_path->none~matrix_info~2 none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~convert->proc~json_value_replace proc~convert->none~info~2 proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_member_by_path->none~info~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_by_path->none~info~2 proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~info~2 proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_by_path->none~info~2 proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~info~2 proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_file_variable_matrix_info->none~matrix_info none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_get_child_by_index ( json , p , idx , child , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! object or array JSON data integer ( IK ), intent ( in ) :: idx !! index of the child !! (this is a 1-based Fortran !! style array index). type ( json_value ), pointer :: child !! pointer to the child logical ( LK ), intent ( out ), optional :: found !! true if the value was found !! (if not present, an exception !! will be thrown if it was not !! found. If present and not !! found, no exception will be !! thrown). integer ( IK ) :: i !! counter nullify ( child ) if (. not . json % exception_thrown ) then if ( associated ( p % children )) then ! If getting first or last child, we can do this quickly. ! Otherwise, traverse the list. if ( idx == 1 ) then child => p % children ! first one elseif ( idx == p % n_children ) then if ( associated ( p % tail )) then child => p % tail ! last one else call json % throw_exception ( 'Error in json_value_get_child_by_index:' // & ' child%tail is not associated.' , found ) end if elseif ( idx < 1 . or . idx > p % n_children ) then call json % throw_exception ( 'Error in json_value_get_child_by_index:' // & ' idx is out of range.' , found ) else ! if idx is closer to the end, we traverse the list backward from tail, ! otherwise we traverse it forward from children: if ( p % n_children - idx < idx ) then ! traverse backward child => p % tail do i = 1 , p % n_children - idx if ( associated ( child % previous )) then child => child % previous else call json % throw_exception ( 'Error in json_value_get_child_by_index:' // & ' child%previous is not associated.' , found ) nullify ( child ) exit end if end do else ! traverse forward child => p % children do i = 1 , idx - 1 if ( associated ( child % next )) then child => child % next else call json % throw_exception ( 'Error in json_value_get_child_by_index:' // & ' child%next is not associated.' , found ) nullify ( child ) exit end if end do end if end if else call json % throw_exception ( 'Error in json_value_get_child_by_index:' // & ' p%children is not associated.' , found ) end if ! found output: if ( json % exception_thrown ) then if ( present ( found )) then call json % clear_exceptions () found = . false . end if else if ( present ( found )) found = . true . end if else if ( present ( found )) found = . false . end if end subroutine json_value_get_child_by_index","tags":"","loc":"proc/json_value_get_child_by_index.html"},{"title":"json_value_get_child_by_name – JSON-Fortran","text":"private subroutine json_value_get_child_by_name(json, p, name, child, found) Returns a child in the object or array given the name string. The name search can be case-sensitive or not, and can have significant trailing\n whitespace or not, depending on the settings in the json_core class. Note The name input is not a path, and is not parsed like it is in json_get_by_path . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CK, len=*), intent(in) :: name the name of a child of p type( json_value ), pointer :: child pointer to the child logical(kind=LK), intent(out), optional :: found true if the value was found\n(if not present, an exception\nwill be thrown if it was not\nfound. If present and not\nfound, no exception will be\nthrown). Calls proc~~json_value_get_child_by_name~~CallsGraph proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~throw_exception json_core%throw_exception proc~json_value_get_child_by_name->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_get_child_by_name~~CalledByGraph proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child json_core%get_child none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_matrix_info json_core%json_matrix_info proc~json_matrix_info->none~get_child none~info~2 json_core%info proc~json_matrix_info->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info~2 json_core%matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_matrix_info_by_path->none~get~2 proc~json_value_replace json_core%json_value_replace proc~json_value_replace->none~insert_after proc~wrap_json_matrix_info_by_path->none~matrix_info~2 none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~convert->proc~json_value_replace proc~convert->none~info~2 proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_member_by_path->none~info~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_by_path->none~info~2 proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~info~2 proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_by_path->none~info~2 proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~info~2 proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_file_variable_matrix_info->none~matrix_info none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_get_child_by_name ( json , p , name , child , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p character ( kind = CK , len =* ), intent ( in ) :: name !! the name of a child of `p` type ( json_value ), pointer :: child !! pointer to the child logical ( LK ), intent ( out ), optional :: found !! true if the value was found !! (if not present, an exception !! will be thrown if it was not !! found. If present and not !! found, no exception will be !! thrown). integer ( IK ) :: i , n_children logical :: error nullify ( child ) if (. not . json % exception_thrown ) then if ( associated ( p )) then error = . true . ! will be false if it is found if ( p % var_type == json_object ) then n_children = json % count ( p ) child => p % children !start with first one do i = 1 , n_children if (. not . associated ( child )) then call json % throw_exception (& 'Error in json_value_get_child_by_name: ' // & 'Malformed JSON linked list' , found ) exit end if if ( allocated ( child % name )) then !name string matching routine: if ( json % name_equal ( child , name )) then error = . false . exit end if end if child => child % next end do end if if ( error ) then !did not find anything: call json % throw_exception (& 'Error in json_value_get_child_by_name: ' // & 'child variable ' // trim ( name ) // ' was not found.' , found ) nullify ( child ) end if else call json % throw_exception (& 'Error in json_value_get_child_by_name: ' // & 'pointer is not associated.' , found ) end if ! found output: if ( json % exception_thrown ) then if ( present ( found )) then call json % clear_exceptions () found = . false . end if else if ( present ( found )) found = . true . end if else if ( present ( found )) found = . false . end if end subroutine json_value_get_child_by_name","tags":"","loc":"proc/json_value_get_child_by_name.html"},{"title":"json_value_insert_after – JSON-Fortran","text":"private subroutine json_value_insert_after(json, p, element) Inserts element after p , and updates the JSON structure accordingly. Example program test use json_module implicit none logical ( json_LK ) :: found type ( json_core ) :: json type ( json_value ), pointer :: p , new , element call json % load ( file = 'myfile.json' , p = p ) call json % get ( p , 'x(3)' , element , found ) ! get pointer to an array element in the file call json % create_integer ( new , 1 , '' ) ! create a new element call json % insert_after ( element , new ) ! insert new element after x(3) call json % print ( p , 'myfile2.json' ) ! write it to a file call json % destroy ( p ) ! cleanup end program test Details This routine can be used to insert a new element (or set of elements)\n into an array or object at a specific index.\n See json_value_insert_after_child_by_index Children and subsequent elements of element are carried along. If the inserted elements are part of an existing list, then\n they are removed from that list. p\n [1] - [2] - [3] - [4]\n |\n [5] - [6] - [7] n=3 elements inserted\n element last\n\n Result is:\n\n [1] - [2] - [5] - [6] - [7] - [3] - [4] Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a value from a JSON structure\n(presumably, this is a child of\nan object or array). type( json_value ), pointer :: element the element to insert after p Called by proc~~json_value_insert_after~~CalledByGraph proc~json_value_insert_after json_core%json_value_insert_after none~insert_after json_core%insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~insert_after none~get_child json_core%get_child proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_replace json_core%json_value_replace proc~json_value_replace->none~insert_after proc~convert json_core%convert proc~convert->proc~json_value_replace none~info~2 json_core%info proc~convert->none~info~2 proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->proc~json_value_replace none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->proc~json_value_replace proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->none~get_child proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_insert_after ( json , p , element ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! a value from a JSON structure !! (presumably, this is a child of !! an object or array). type ( json_value ), pointer :: element !! the element to insert after `p` type ( json_value ), pointer :: parent !! the parent of `p` type ( json_value ), pointer :: next !! temp pointer for traversing structure type ( json_value ), pointer :: last !! the last of the items being inserted integer :: n !! number of items being inserted if (. not . json % exception_thrown ) then parent => p % parent ! set first parent of inserted list: element % parent => parent ! Count the number of inserted elements. ! and set their parents. n = 1 ! initialize counter next => element % next last => element do if (. not . associated ( next )) exit n = n + 1 next % parent => parent last => next next => next % next end do if ( associated ( parent )) then ! update parent's child counter: parent % n_children = parent % n_children + n ! if p is last of parents children then ! also have to update parent tail pointer: if ( associated ( parent % tail , p )) then parent % tail => last end if end if if ( associated ( element % previous )) then ! element is apparently part of an existing list, ! so have to update that as well. if ( associated ( element % previous % parent )) then element % previous % parent % n_children = & element % previous % parent % n_children - n element % previous % parent % tail => & element % previous ! now the last one in the list else ! this would be a memory leak if the previous entries ! are not otherwise being pointed too ! [throw an error in this case???] end if !remove element from the other list: element % previous % next => null () end if element % previous => p if ( associated ( p % next )) then ! if there are any in the list after p: last % next => p % next last % next % previous => element else last % next => null () end if p % next => element end if end subroutine json_value_insert_after","tags":"","loc":"proc/json_value_insert_after.html"},{"title":"json_value_insert_after_child_by_index – JSON-Fortran","text":"private subroutine json_value_insert_after_child_by_index(json, p, idx, element) Inserts element after the idx -th child of p ,\nand updates the JSON structure accordingly. This is just\na wrapper for json_value_insert_after . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a JSON object or array. integer(kind=IK), intent(in) :: idx the index of the child of p to\ninsert the new element after\n(this is a 1-based Fortran\nstyle array index) type( json_value ), pointer :: element the element to insert Calls proc~~json_value_insert_after_child_by_index~~CallsGraph proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~get_child json_core%get_child proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after none~throw_exception json_core%throw_exception proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal interface~to_unicode to_unicode proc~wrap_json_value_get_child_by_name->interface~to_unicode none~get~2 json_core%get proc~wrap_json_value_get_child_by_name->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->proc~flag_not_found proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~get_child proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_insert_after_child_by_index~~CalledByGraph proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after none~get_child json_core%get_child proc~json_value_insert_after_child_by_index->none~get_child none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_replace json_core%json_value_replace proc~json_value_replace->none~insert_after proc~convert json_core%convert proc~convert->proc~json_value_replace none~info~2 json_core%info proc~convert->none~info~2 proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->proc~json_value_replace none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->proc~json_value_replace proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->none~get_child proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_insert_after_child_by_index ( json , p , idx , element ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! a JSON object or array. integer ( IK ), intent ( in ) :: idx !! the index of the child of `p` to !! insert the new element after !! (this is a 1-based Fortran !! style array index) type ( json_value ), pointer :: element !! the element to insert type ( json_value ), pointer :: tmp !! for getting the `idx`-th child of `p` if (. not . json % exception_thrown ) then ! get the idx-th child of p: call json % get_child ( p , idx , tmp ) ! call json_value_insert_after: if (. not . json % exception_thrown ) call json % insert_after ( tmp , element ) end if end subroutine json_value_insert_after_child_by_index","tags":"","loc":"proc/json_value_insert_after_child_by_index.html"},{"title":"json_value_print – JSON-Fortran","text":"private recursive subroutine json_value_print(json, p, iunit, str, indent, need_comma, colon, is_array_element, is_compressed_vector, iloc) Print the JSON structure to a string or a file. Notes This is an internal routine called by the various wrapper routines. The reason the str argument is non-optional is because of a\n bug in v4.9 of the gfortran compiler. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p integer(kind=IK), intent(in) :: iunit file unit to write to (the\nfile is assumed to be open) character(kind=CK, len=:), intent(inout), allocatable :: str if iunit==unit2str (-1) then\nthe structure is printed to this\nstring rather than a file. This mode\nis used by json_value_to_string . integer(kind=IK), intent(in), optional :: indent indention level logical(kind=LK), intent(in), optional :: need_comma if it needs a comma after it logical(kind=LK), intent(in), optional :: colon if the colon was just written logical(kind=LK), intent(in), optional :: is_array_element if this is an array element logical(kind=LK), intent(in), optional :: is_compressed_vector if True, this is an element\nfrom an array being printed\non one line [default is False] integer(kind=IK), intent(inout) :: iloc current index in str . should be set to 0 initially.\n[only used when str is used.] Calls proc~~json_value_print~~CallsGraph proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_value_print none~throw_exception json_core%throw_exception proc~json_value_print->none~throw_exception proc~escape_string escape_string proc~json_value_print->proc~escape_string proc~integer_to_string integer_to_string proc~json_value_print->proc~integer_to_string proc~json_failed json_core%json_failed proc~json_value_print->proc~json_failed proc~json_is_vector json_core%json_is_vector proc~json_value_print->proc~json_is_vector proc~real_to_string real_to_string proc~json_value_print->proc~real_to_string proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_is_vector->none~throw_exception none~info~2 json_core%info proc~json_is_vector->none~info~2 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception proc~convert->none~info~2 none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~throw_exception proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_string_info->proc~json_clear_exceptions proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_print~~CalledByGraph proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_value_print proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code recursive subroutine json_value_print ( json , p , iunit , str , indent ,& need_comma , colon , is_array_element ,& is_compressed_vector , iloc ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p integer ( IK ), intent ( in ) :: iunit !! file unit to write to (the !! file is assumed to be open) integer ( IK ), intent ( in ), optional :: indent !! indention level logical ( LK ), intent ( in ), optional :: is_array_element !! if this is an array element logical ( LK ), intent ( in ), optional :: need_comma !! if it needs a comma after it logical ( LK ), intent ( in ), optional :: colon !! if the colon was just written character ( kind = CK , len = :), intent ( inout ), allocatable :: str !! if `iunit==unit2str` (-1) then !! the structure is printed to this !! string rather than a file. This mode !! is used by [[json_value_to_string]]. integer ( IK ), intent ( inout ) :: iloc !! current index in `str`. should be set to 0 initially. !! [only used when `str` is used.] logical ( LK ), intent ( in ), optional :: is_compressed_vector !! if True, this is an element !! from an array being printed !! on one line [default is False] character ( kind = CK , len = max_numeric_str_len ) :: tmp !! for value to string conversions character ( kind = CK , len = :), allocatable :: s_indent !! the string of spaces for !! indenting (see `tab` and `spaces`) character ( kind = CK , len = :), allocatable :: s !! the string appended to `str` type ( json_value ), pointer :: element !! for getting children integer ( IK ) :: tab !! number of `tabs` for indenting integer ( IK ) :: spaces !! number of spaces for indenting integer ( IK ) :: i !! counter integer ( IK ) :: count !! number of children logical ( LK ) :: print_comma !! if the comma will be printed after the value logical ( LK ) :: write_file !! if we are writing to a file logical ( LK ) :: write_string !! if we are writing to a string logical ( LK ) :: is_array !! if this is an element in an array logical ( LK ) :: is_vector !! if all elements of a vector !! are scalars of the same type character ( kind = CK , len = :), allocatable :: str_escaped !! escaped version of !! `name` or `str_value` if (. not . json % exception_thrown ) then if (. not . associated ( p )) then ! note: a null() pointer will trigger this error. ! However, if the pointer is undefined, then this will ! crash (if this wasn't here it would crash below when ! we try to access the contents) call json % throw_exception ( 'Error in json_value_print: ' // & 'the pointer is not associated' ) return end if if ( present ( is_compressed_vector )) then is_vector = is_compressed_vector else is_vector = . false . end if !whether to write a string or a file (one or the other): write_string = ( iunit == unit2str ) write_file = . not . write_string !if the comma will be printed after the value ! [comma not printed for the last elements] if ( present ( need_comma )) then print_comma = need_comma else print_comma = . false . end if !number of \"tabs\" to indent: if ( present ( indent ) . and . . not . json % no_whitespace ) then tab = indent else tab = 0 end if !convert to number of spaces: spaces = tab * json % spaces_per_tab !if this is an element in an array: if ( present ( is_array_element )) then is_array = is_array_element else is_array = . false . end if !if the colon was the last thing written if ( present ( colon )) then s_indent = CK_ '' else s_indent = repeat ( space , spaces ) end if select case ( p % var_type ) case ( json_object ) count = json % count ( p ) if ( count == 0 ) then !special case for empty object s = s_indent // start_object // end_object call write_it ( comma = print_comma ) else s = s_indent // start_object call write_it () !if an object is in an array, there is an extra tab: if ( is_array ) then if ( . not . json % no_whitespace ) tab = tab + 1 spaces = tab * json % spaces_per_tab end if nullify ( element ) element => p % children do i = 1 , count if (. not . associated ( element )) then call json % throw_exception ( 'Error in json_value_print: ' // & 'Malformed JSON linked list' ) return end if ! print the name if ( allocated ( element % name )) then call escape_string ( element % name , str_escaped , json % escape_solidus ) if ( json % no_whitespace ) then !compact printing - no extra space s = repeat ( space , spaces ) // quotation_mark // & str_escaped // quotation_mark // colon_char call write_it ( advance = . false .) else s = repeat ( space , spaces ) // quotation_mark // & str_escaped // quotation_mark // colon_char // space call write_it ( advance = . false .) end if else call json % throw_exception ( 'Error in json_value_print:' // & ' element%name not allocated' ) nullify ( element ) return end if ! recursive print of the element call json % json_value_print ( element , iunit = iunit , indent = tab + 1_IK , & need_comma = i < count , colon = . true ., str = str , iloc = iloc ) if ( json % exception_thrown ) return ! get the next child the list: element => element % next end do ! [one fewer tab if it isn't an array element] if (. not . is_array ) then s = repeat ( space , max ( 0_IK , spaces - json % spaces_per_tab )) // end_object else s = s_indent // end_object end if call write_it ( comma = print_comma ) nullify ( element ) end if case ( json_array ) count = json % count ( p ) if ( count == 0 ) then ! special case for empty array s = s_indent // start_array // end_array call write_it ( comma = print_comma ) else ! if every child is the same type & a scalar: is_vector = json % is_vector ( p ) if ( json % failed ()) return s = s_indent // start_array call write_it ( advance = (. not . is_vector ) ) !if an array is in an array, there is an extra tab: if ( is_array ) then if ( . not . json % no_whitespace ) tab = tab + 1 spaces = tab * json % spaces_per_tab end if nullify ( element ) element => p % children do i = 1 , count if (. not . associated ( element )) then call json % throw_exception ( 'Error in json_value_print: ' // & 'Malformed JSON linked list' ) return end if ! recursive print of the element if ( is_vector ) then call json % json_value_print ( element , iunit = iunit , indent = 0_IK ,& need_comma = i < count , is_array_element = . false ., & str = str , iloc = iloc ,& is_compressed_vector = . true .) else call json % json_value_print ( element , iunit = iunit , indent = tab ,& need_comma = i < count , is_array_element = . true ., & str = str , iloc = iloc ) end if if ( json % exception_thrown ) return ! get the next child the list: element => element % next end do !indent the closing array character: if ( is_vector ) then s = end_array call write_it ( comma = print_comma ) else s = repeat ( space , max ( 0_IK , spaces - json % spaces_per_tab )) // end_array call write_it ( comma = print_comma ) end if nullify ( element ) end if case ( json_null ) s = s_indent // null_str call write_it ( comma = print_comma , & advance = (. not . is_vector ),& space_after_comma = is_vector ) case ( json_string ) if ( allocated ( p % str_value )) then ! have to escape the string for printing: call escape_string ( p % str_value , str_escaped , json % escape_solidus ) s = s_indent // quotation_mark // str_escaped // quotation_mark call write_it ( comma = print_comma , & advance = (. not . is_vector ),& space_after_comma = is_vector ) else call json % throw_exception ( 'Error in json_value_print:' // & ' p%value_string not allocated' ) return end if case ( json_logical ) if ( p % log_value ) then s = s_indent // true_str call write_it ( comma = print_comma , & advance = (. not . is_vector ),& space_after_comma = is_vector ) else s = s_indent // false_str call write_it ( comma = print_comma , & advance = (. not . is_vector ),& space_after_comma = is_vector ) end if case ( json_integer ) call integer_to_string ( p % int_value , int_fmt , tmp ) s = s_indent // trim ( tmp ) call write_it ( comma = print_comma , & advance = (. not . is_vector ),& space_after_comma = is_vector ) case ( json_real ) if ( allocated ( json % real_fmt )) then call real_to_string ( p % dbl_value , json % real_fmt , json % compact_real , json % non_normals_to_null , tmp ) else !use the default format (user has not called initialize() or specified one): call real_to_string ( p % dbl_value , default_real_fmt , json % compact_real , json % non_normals_to_null , tmp ) end if s = s_indent // trim ( tmp ) call write_it ( comma = print_comma , & advance = (. not . is_vector ),& space_after_comma = is_vector ) case default call integer_to_string ( p % var_type , int_fmt , tmp ) call json % throw_exception ( 'Error in json_value_print: ' // & 'unknown data type: ' // trim ( tmp )) end select end if contains subroutine write_it ( advance , comma , space_after_comma ) !! write the string `s` to the file (or the output string) implicit none logical ( LK ), intent ( in ), optional :: advance !! to add line break or not logical ( LK ), intent ( in ), optional :: comma !! print comma after the string logical ( LK ), intent ( in ), optional :: space_after_comma !! print a space after the comma logical ( LK ) :: add_comma !! if a delimiter is to be added after string logical ( LK ) :: add_line_break !! if a line break is to be added after string logical ( LK ) :: add_space !! if a space is to be added after the comma integer ( IK ) :: n !! length of actual string `s` appended to `str` integer ( IK ) :: room_left !! number of characters left in `str` integer ( IK ) :: n_chunks_to_add !! number of chunks to add to `str` for appending `s` if ( present ( comma )) then add_comma = comma else add_comma = . false . !default is not to add comma end if if ( json % no_whitespace ) then add_space = . false . else if ( present ( space_after_comma )) then add_space = space_after_comma else add_space = . false . !default is not to add space end if end if if ( present ( advance )) then if ( json % no_whitespace ) then ! overrides input value: add_line_break = . false . else add_line_break = advance end if else add_line_break = . not . json % no_whitespace ! default is to advance if ! we are printing whitespace end if ! string to print: if ( add_comma ) then if ( add_space ) then s = s // delimiter // space else s = s // delimiter end if end if if ( write_file ) then if ( add_line_break ) then write ( iunit , fmt = '(A)' ) s else write ( iunit , fmt = '(A)' , advance = 'NO' ) s end if else !write string if ( add_line_break ) s = s // newline n = len ( s ) room_left = len ( str ) - iloc if ( room_left < n ) then ! need to add another chunk to fit this string: n_chunks_to_add = max ( 1_IK , ceiling ( real ( len ( s ) - room_left , RK ) / real ( chunk_size , RK ), IK ) ) str = str // repeat ( space , print_str_chunk_size * n_chunks_to_add ) end if ! append s to str: str ( iloc + 1 : iloc + n ) = s iloc = iloc + n end if end subroutine write_it end subroutine json_value_print","tags":"","loc":"proc/json_value_print.html"},{"title":"json_value_remove – JSON-Fortran","text":"private subroutine json_value_remove(json, p, destroy) Remove a json_value (and all its children)\n from a linked-list structure, preserving the rest of the structure. Examples To extract an object from one JSON structure, and add it to another: type ( json_core ) :: json type ( json_value ), pointer :: json1 , json2 , p logical :: found !create and populate json1 and json2 call json % get ( json1 , 'name' , p , found ) ! get pointer to name element of json1 call json % remove ( p , destroy = . false .) ! remove it from json1 (don't destroy) call json % add ( json2 , p ) ! add it to json2 To remove an object from a JSON structure (and destroy it): type ( json_core ) :: json type ( json_value ), pointer :: json1 , p logical :: found !create and populate json1 call json % get ( json1 , 'name' , p , found ) ! get pointer to name element of json1 call json % remove ( p ) ! remove and destroy it History Jacob Williams : 12/28/2014 : added destroy optional argument. Jacob Williams : 12/04/2020 : bug fix. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p logical(kind=LK), intent(in), optional :: destroy Option to destroy p after it is removed: If destroy is not present, it is also destroyed. If destroy is present and true, it is destroyed. If destroy is present and false, it is not destroyed. Calls proc~~json_value_remove~~CallsGraph proc~json_value_remove json_core%json_value_remove none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_remove~~CalledByGraph proc~json_value_remove json_core%json_value_remove proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->proc~json_value_remove none~get~2 json_core%get proc~json_value_remove_if_present->none~get~2 proc~json_value_replace json_core%json_value_replace proc~json_value_replace->proc~json_value_remove none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present proc~convert json_core%convert proc~convert->proc~json_value_replace none~info~2 json_core%info proc~convert->none~info~2 proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->proc~json_value_replace none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->proc~json_value_replace proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~convert none~get_child json_core%get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_value_remove_if_present->none~remove_if_present none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_file_remove->none~remove proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_remove ( json , p , destroy ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p logical ( LK ), intent ( in ), optional :: destroy !! Option to destroy `p` after it is removed: !! !! * If `destroy` is not present, it is also destroyed. !! * If `destroy` is present and true, it is destroyed. !! * If `destroy` is present and false, it is not destroyed. type ( json_value ), pointer :: parent !! pointer to parent type ( json_value ), pointer :: previous !! pointer to previous type ( json_value ), pointer :: next !! pointer to next logical ( LK ) :: destroy_it !! if `p` should be destroyed if ( associated ( p )) then !optional input argument: if ( present ( destroy )) then destroy_it = destroy else destroy_it = . true . end if if ( associated ( p % parent )) then parent => p % parent if ( associated ( p % next )) then !there are later items in the list: next => p % next if ( associated ( p % previous )) then !there are earlier items in the list previous => p % previous previous % next => next next % previous => previous else !this is the first item in the list parent % children => next nullify ( next % previous ) end if else if ( associated ( p % previous )) then !there are earlier items in the list: previous => p % previous nullify ( previous % next ) parent % tail => previous else !this is the only item in the list: nullify ( parent % children ) nullify ( parent % tail ) end if end if ! nullify all pointers to original structure: nullify ( p % next ) nullify ( p % previous ) nullify ( p % parent ) parent % n_children = parent % n_children - 1 end if if ( destroy_it ) call json % destroy ( p ) end if end subroutine json_value_remove","tags":"","loc":"proc/json_value_remove.html"},{"title":"json_value_remove_if_present – JSON-Fortran","text":"private subroutine json_value_remove_if_present(json, p, path) Given the path string, remove the variable\nfrom json_value , if it exists. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path the path to the variable to remove Calls proc~~json_value_remove_if_present~~CallsGraph proc~json_value_remove_if_present json_core%json_value_remove_if_present none~get~2 json_core%get proc~json_value_remove_if_present->none~get~2 proc~json_value_remove json_core%json_value_remove proc~json_value_remove_if_present->proc~json_value_remove proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~json_value_replace->proc~json_value_remove none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_remove_if_present~~CalledByGraph proc~json_value_remove_if_present json_core%json_value_remove_if_present none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~wrap_json_value_remove_if_present->none~remove_if_present none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove proc~wrap_json_file_remove->none~remove Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_remove_if_present ( json , p , path ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable to remove type ( json_value ), pointer :: p_var logical ( LK ) :: found call json % get ( p , path , p_var , found ) if ( found ) call json % remove ( p_var ) end subroutine json_value_remove_if_present","tags":"","loc":"proc/json_value_remove_if_present.html"},{"title":"json_value_rename – JSON-Fortran","text":"private subroutine json_value_rename(json, p, name) Rename a json_value . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CK, len=*), intent(in) :: name new variable name Source Code subroutine json_value_rename ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p character ( kind = CK , len =* ), intent ( in ) :: name !! new variable name if ( json % trailing_spaces_significant ) then p % name = name else p % name = trim ( name ) end if end subroutine json_value_rename","tags":"","loc":"proc/json_value_rename.html"},{"title":"json_value_replace – JSON-Fortran","text":"private subroutine json_value_replace(json, p1, p2, destroy) Replace p1 with p2 in a JSON structure. Note The replacement is done using an insert and remove\n See json_value_insert_after and json_value_remove for details. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p1 the item to replace type( json_value ), pointer :: p2 item to take the place of p1 logical(kind=LK), intent(in), optional :: destroy Should p1 also be destroyed\n(default is True). Normally,\nthis should be true to avoid\na memory leak. Calls proc~~json_value_replace~~CallsGraph proc~json_value_replace json_core%json_value_replace none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~insert_after none~get_child json_core%get_child proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data none~throw_exception json_core%throw_exception proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal interface~to_unicode to_unicode proc~wrap_json_value_get_child_by_name->interface~to_unicode none~get~2 json_core%get proc~wrap_json_value_get_child_by_name->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->proc~flag_not_found proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~get_child proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~convert->proc~json_value_replace proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_replace~~CalledByGraph proc~json_value_replace json_core%json_value_replace none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~convert json_core%convert proc~convert->proc~json_value_replace none~info~2 json_core%info proc~convert->none~info~2 proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->proc~json_value_replace none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->proc~json_value_replace proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~convert none~get_child json_core%get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_replace ( json , p1 , p2 , destroy ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p1 !! the item to replace type ( json_value ), pointer :: p2 !! item to take the place of `p1` logical ( LK ), intent ( in ), optional :: destroy !! Should `p1` also be destroyed !! (default is True). Normally, !! this should be true to avoid !! a memory leak. logical ( LK ) :: destroy_p1 !! if `p1` is to be destroyed if ( present ( destroy )) then destroy_p1 = destroy else destroy_p1 = . true . ! default end if call json % insert_after ( p1 , p2 ) call json % remove ( p1 , destroy_p1 ) end subroutine json_value_replace","tags":"","loc":"proc/json_value_replace.html"},{"title":"json_value_reverse – JSON-Fortran","text":"private subroutine json_value_reverse(json, p) Reverse the order of the children of an array or object. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p Calls proc~~json_value_reverse~~CallsGraph proc~json_value_reverse json_core%json_value_reverse none~info~2 json_core%info proc~json_value_reverse->none~info~2 proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~throw_exception json_core%throw_exception proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~wrap_json_info_by_path->none~info~2 interface~to_unicode to_unicode proc~wrap_json_info_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_reverse ( json , p ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p type ( json_value ), pointer :: tmp !! temp variable for traversing the list type ( json_value ), pointer :: current !! temp variable for traversing the list integer ( IK ) :: var_type !! for getting the variable type if ( associated ( p )) then call json % info ( p , var_type = var_type ) ! can only reverse objects or arrays if ( var_type == json_object . or . var_type == json_array ) then nullify ( tmp ) current => p % children p % tail => current ! Swap next and previous for all nodes: do if (. not . associated ( current )) exit tmp => current % previous current % previous => current % next current % next => tmp current => current % previous end do if ( associated ( tmp )) then p % children => tmp % previous end if end if end if end subroutine json_value_reverse","tags":"","loc":"proc/json_value_reverse.html"},{"title":"json_value_swap – JSON-Fortran","text":"private subroutine json_value_swap(json, p1, p2) Swap two elements in a JSON structure.\n All of the children are carried along as well. Note If both are not associated, then an error is thrown. Note The assumption here is that both variables are part of a valid json_value linked list (so the normal parent , previous , next , etc. pointers are properly associated if necessary). Warning This cannot be used to swap a parent/child pair, since that\n could lead to a circular linkage. An exception is thrown if\n this is tried. Warning There are also other situations where using this routine may\n produce a malformed JSON structure, such as moving an array\n element outside of an array. This is not checked for. Note If p1 and p2 have a common parent, it is always safe to swap them. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p1 swap with p2 type( json_value ), pointer :: p2 swap with p1 Calls proc~~json_value_swap~~CallsGraph proc~json_value_swap json_core%json_value_swap none~throw_exception json_core%throw_exception proc~json_value_swap->none~throw_exception proc~json_value_is_child_of json_core%json_value_is_child_of proc~json_value_swap->proc~json_value_is_child_of proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_traverse json_core%json_traverse proc~json_value_is_child_of->proc~json_traverse proc~json_traverse->none~throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_swap ( json , p1 , p2 ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p1 !! swap with `p2` type ( json_value ), pointer :: p2 !! swap with `p1` logical :: same_parent !! if `p1` and `p2` have the same parent logical :: first_last !! if `p1` and `p2` are the first,last or !! last,first children of a common parent logical :: adjacent !! if `p1` and `p2` are adjacent !! elements in an array type ( json_value ), pointer :: a !! temporary variable type ( json_value ), pointer :: b !! temporary variable if ( json % exception_thrown ) return !both have to be associated: if ( associated ( p1 ) . and . associated ( p2 )) then !simple check to make sure that they both !aren't pointing to the same thing: if (. not . associated ( p1 , p2 )) then !we will not allow swapping an item with one of its descendants: if ( json % is_child_of ( p1 , p2 ) . or . json % is_child_of ( p2 , p1 )) then call json % throw_exception ( 'Error in json_value_swap: ' // & 'cannot swap an item with one of its descendants' ) else same_parent = ( associated ( p1 % parent ) . and . & associated ( p2 % parent ) . and . & associated ( p1 % parent , p2 % parent ) ) if ( same_parent ) then first_last = ( associated ( p1 % parent % children , p1 ) . and . & associated ( p2 % parent % tail , p2 )) . or . & ( associated ( p1 % parent % tail , p1 ) . and . & associated ( p2 % parent % children , p2 )) else first_last = . false . end if !first, we fix children,tail pointers: if ( same_parent . and . first_last ) then !this is all we have to do for the parent in this case: call swap_pointers ( p1 % parent % children , p2 % parent % tail ) else if ( same_parent . and . . not . first_last ) then if ( associated ( p1 % parent % children , p1 )) then p1 % parent % children => p2 ! p1 is the first child of the parent else if ( associated ( p1 % parent % children , p2 )) then p1 % parent % children => p1 ! p2 is the first child of the parent end if if ( associated ( p1 % parent % tail , p1 )) then p1 % parent % tail => p2 ! p1 is the last child of the parent else if ( associated ( p1 % parent % tail , p2 )) then p1 % parent % tail => p1 ! p2 is the last child of the parent end if else ! general case: different parents if ( associated ( p1 % parent )) then if ( associated ( p1 % parent % children , p1 )) p1 % parent % children => p2 if ( associated ( p1 % parent % tail , p1 )) p1 % parent % tail => p2 end if if ( associated ( p2 % parent )) then if ( associated ( p2 % parent % children , p2 )) p2 % parent % children => p1 if ( associated ( p2 % parent % tail , p2 )) p2 % parent % tail => p1 end if call swap_pointers ( p1 % parent , p2 % parent ) end if !now, have to fix previous,next pointers: !first, see if they are adjacent: adjacent = associated ( p1 % next , p2 ) . or . & associated ( p2 % next , p1 ) if ( associated ( p2 % next , p1 )) then !p2,p1 a => p2 b => p1 else !p1,p2 (or not adjacent) a => p1 b => p2 end if if ( associated ( a % previous )) a % previous % next => b if ( associated ( b % next )) b % next % previous => a if ( adjacent ) then !a comes before b in the original list b % previous => a % previous a % next => b % next a % previous => b b % next => a else if ( associated ( a % next )) a % next % previous => b if ( associated ( b % previous )) b % previous % next => a call swap_pointers ( a % previous , b % previous ) call swap_pointers ( a % next , b % next ) end if end if else call json % throw_exception ( 'Error in json_value_swap: ' // & 'both pointers must be associated' ) end if end if contains pure subroutine swap_pointers ( s1 , s2 ) implicit none type ( json_value ), pointer , intent ( inout ) :: s1 type ( json_value ), pointer , intent ( inout ) :: s2 type ( json_value ), pointer :: tmp !! temporary pointer if (. not . associated ( s1 , s2 )) then tmp => s1 s1 => s2 s2 => tmp end if end subroutine swap_pointers end subroutine json_value_swap","tags":"","loc":"proc/json_value_swap.html"},{"title":"json_value_to_string – JSON-Fortran","text":"private subroutine json_value_to_string(json, p, str) Print the json_value structure to an allocatable string. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CK, len=:), intent(out), allocatable :: str prints structure to this string Calls proc~~json_value_to_string~~CallsGraph proc~json_value_to_string json_core%json_value_to_string proc~json_value_print json_core%json_value_print proc~json_value_to_string->proc~json_value_print proc~json_value_print->proc~json_value_print none~throw_exception json_core%throw_exception proc~json_value_print->none~throw_exception proc~escape_string escape_string proc~json_value_print->proc~escape_string proc~integer_to_string integer_to_string proc~json_value_print->proc~integer_to_string proc~json_failed json_core%json_failed proc~json_value_print->proc~json_failed proc~json_is_vector json_core%json_is_vector proc~json_value_print->proc~json_is_vector proc~real_to_string real_to_string proc~json_value_print->proc~real_to_string proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_is_vector->none~throw_exception none~info~2 json_core%info proc~json_is_vector->none~info~2 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception proc~convert->none~info~2 none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~throw_exception proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_string_info->proc~json_clear_exceptions proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_to_string~~CalledByGraph proc~json_value_to_string json_core%json_value_to_string proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_to_string ( json , p , str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p character ( kind = CK , len = :), intent ( out ), allocatable :: str !! prints structure to this string integer ( IK ) :: iloc !! used to keep track of size of str !! since it is being allocated in chunks. str = repeat ( space , print_str_chunk_size ) iloc = 0_IK call json % json_value_print ( p , iunit = unit2str , str = str , iloc = iloc , indent = 1_IK , colon = . true .) ! trim the string if necessary: if ( len ( str ) > iloc ) str = str ( 1 : iloc ) end subroutine json_value_to_string","tags":"","loc":"proc/json_value_to_string.html"},{"title":"json_value_validate – JSON-Fortran","text":"private subroutine json_value_validate(json, p, is_valid, error_msg) Validate a json_value linked list by checking to make sure\n all the pointers are properly associated, arrays and objects\n have the correct number of children, and the correct data is\n allocated for the variable types. It recursively traverses the entire structure and checks every element. History Jacob Williams, 8/26/2017 : added duplicate key check. Note It will return on the first error it encounters. Note This routine does not check or throw any exceptions.\n If json is currently in a state of exception, it will\n remain so after calling this routine. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p logical(kind=LK), intent(out) :: is_valid True if the structure is valid. character(kind=CK, len=:), intent(out), allocatable :: error_msg if not valid, this will contain\na description of the problem Calls proc~~json_value_validate~~CallsGraph proc~json_value_validate json_core%json_value_validate none~throw_exception json_core%throw_exception proc~json_value_validate->none~throw_exception proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_value_validate->proc~json_check_all_for_duplicate_keys proc~json_check_for_errors json_core%json_check_for_errors proc~json_value_validate->proc~json_check_for_errors proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_value_validate->proc~json_clear_exceptions proc~json_failed json_core%json_failed proc~json_value_validate->proc~json_failed proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_traverse json_core%json_traverse proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_traverse->none~throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_validate ( json , p , is_valid , error_msg ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p logical ( LK ), intent ( out ) :: is_valid !! True if the structure is valid. character ( kind = CK , len = :), allocatable , intent ( out ) :: error_msg !! if not valid, this will contain !! a description of the problem logical ( LK ) :: has_duplicate !! to check for duplicate keys character ( kind = CK , len = :), allocatable :: path !! path to duplicate key logical ( LK ) :: status_ok !! to check for existing exception character ( kind = CK , len = :), allocatable :: exception_msg !! error message for an existing exception character ( kind = CK , len = :), allocatable :: exception_msg2 !! error message for a new exception if ( associated ( p )) then is_valid = . true . call check_if_valid ( p , require_parent = associated ( p % parent )) if ( is_valid . and . . not . json % allow_duplicate_keys ) then ! if no errors so far, also check the ! entire structure for duplicate keys: ! note: check_for_duplicate_keys does call routines ! that check and throw exceptions, so let's clear any ! first. (save message for later) call json % check_for_errors ( status_ok , exception_msg ) call json % clear_exceptions () call json % check_for_duplicate_keys ( p , has_duplicate , path = path ) if ( json % failed ()) then ! if an exception was thrown during this call, ! then clear it but make that the error message ! returned by this routine. Normally this should ! never actually occur since we have already ! validated the structure. call json % check_for_errors ( is_valid , exception_msg2 ) error_msg = exception_msg2 call json % clear_exceptions () is_valid = . false . else if ( has_duplicate ) then error_msg = 'duplicate key found: ' // path is_valid = . false . end if end if if (. not . status_ok ) then ! restore any existing exception if necessary call json % throw_exception ( exception_msg ) end if ! cleanup: if ( allocated ( path )) deallocate ( path ) if ( allocated ( exception_msg )) deallocate ( exception_msg ) if ( allocated ( exception_msg2 )) deallocate ( exception_msg2 ) end if else error_msg = 'The pointer is not associated' is_valid = . false . end if contains recursive subroutine check_if_valid ( p , require_parent ) implicit none type ( json_value ), pointer , intent ( in ) :: p logical , intent ( in ) :: require_parent !! the first one may be a root (so no parent), !! but all descendants must have a parent. integer ( IK ) :: i !! counter type ( json_value ), pointer :: element type ( json_value ), pointer :: previous if ( is_valid . and . associated ( p )) then ! data type: select case ( p % var_type ) case ( json_null , json_object , json_array ) if ( allocated ( p % log_value ) . or . allocated ( p % int_value ) . or . & allocated ( p % dbl_value ) . or . allocated ( p % str_value )) then error_msg = 'incorrect data allocated for ' // & 'json_null, json_object, or json_array variable type' is_valid = . false . return end if case ( json_logical ) if (. not . allocated ( p % log_value )) then error_msg = 'log_value should be allocated for json_logical variable type' is_valid = . false . return else if ( allocated ( p % int_value ) . or . & allocated ( p % dbl_value ) . or . allocated ( p % str_value )) then error_msg = 'incorrect data allocated for json_logical variable type' is_valid = . false . return end if case ( json_integer ) if (. not . allocated ( p % int_value )) then error_msg = 'int_value should be allocated for json_integer variable type' is_valid = . false . return else if ( allocated ( p % log_value ) . or . & allocated ( p % dbl_value ) . or . allocated ( p % str_value )) then error_msg = 'incorrect data allocated for json_integer variable type' is_valid = . false . return end if case ( json_real ) if (. not . allocated ( p % dbl_value )) then error_msg = 'dbl_value should be allocated for json_real variable type' is_valid = . false . return else if ( allocated ( p % log_value ) . or . allocated ( p % int_value ) . or . & allocated ( p % str_value )) then error_msg = 'incorrect data allocated for json_real variable type' is_valid = . false . return end if case ( json_string ) if (. not . allocated ( p % str_value )) then error_msg = 'str_value should be allocated for json_string variable type' is_valid = . false . return else if ( allocated ( p % log_value ) . or . allocated ( p % int_value ) . or . & allocated ( p % dbl_value )) then error_msg = 'incorrect data allocated for json_string variable type' is_valid = . false . return end if case default error_msg = 'invalid JSON variable type' is_valid = . false . return end select if ( require_parent . and . . not . associated ( p % parent )) then error_msg = 'parent pointer is not associated' is_valid = . false . return end if if (. not . allocated ( p % name )) then if ( associated ( p % parent )) then if ( p % parent % var_type /= json_array ) then error_msg = 'JSON variable must have a name if not an ' // & 'array element or the root' is_valid = . false . return end if end if end if if ( associated ( p % children ) . neqv . associated ( p % tail )) then error_msg = 'both children and tail pointers must be associated' is_valid = . false . return end if ! now, check next one: if ( associated ( p % next )) then if ( associated ( p , p % next )) then error_msg = 'circular linked list' is_valid = . false . return else ! if it's an element in an ! array, then require a parent: call check_if_valid ( p % next , require_parent = . true .) end if end if if ( associated ( p % children )) then if ( p % var_type /= json_array . and . p % var_type /= json_object ) then error_msg = 'only arrays and objects can have children' is_valid = . false . return end if ! first validate children pointers: previous => null () element => p % children do i = 1_IK , p % n_children if (. not . associated ( element % parent , p )) then error_msg = 'child''s parent pointer not properly associated' is_valid = . false . return end if if ( i == 1 . and . associated ( element % previous )) then error_msg = 'first child shouldn''t have a previous' is_valid = . false . return end if if ( i < p % n_children . and . . not . associated ( element % next )) then error_msg = 'not enough children' is_valid = . false . return end if if ( i == p % n_children . and . associated ( element % next )) then error_msg = 'too many children' is_valid = . false . return end if if ( i > 1 ) then if (. not . associated ( previous , element % previous )) then error_msg = 'previous pointer not properly associated' is_valid = . false . return end if end if if ( i == p % n_children . and . & . not . associated ( element % parent % tail , element )) then error_msg = 'parent''s tail pointer not properly associated' is_valid = . false . return end if if ( i < p % n_children ) then !setup next case: previous => element element => element % next end if end do !now check all the children: call check_if_valid ( p % children , require_parent = . true .) end if end if end subroutine check_if_valid end subroutine json_value_validate","tags":"","loc":"proc/json_value_validate.html"},{"title":"parse_array – JSON-Fortran","text":"private recursive subroutine parse_array(json, unit, str, array) Core parsing routine. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if parsing from a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing from a string) type( json_value ), pointer :: array Calls proc~~parse_array~~CallsGraph proc~parse_array json_core%parse_array none~add~4 json_core%add proc~parse_array->none~add~4 none~destroy~3 json_core%destroy proc~parse_array->none~destroy~3 none~throw_exception json_core%throw_exception proc~parse_array->none~throw_exception proc~json_value_create json_value_create proc~parse_array->proc~json_value_create proc~parse_value json_core%parse_value proc~parse_array->proc~parse_value proc~pop_char json_core%pop_char proc~parse_array->proc~pop_char proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~parse_value->proc~parse_array proc~parse_value->none~throw_exception proc~parse_value->proc~pop_char proc~parse_for_chars json_core%parse_for_chars proc~parse_value->proc~parse_for_chars proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~parse_string json_core%parse_string proc~parse_value->proc~parse_string proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~to_array json_core%to_array proc~parse_value->proc~to_array proc~to_logical json_core%to_logical proc~parse_value->proc~to_logical proc~to_null json_core%to_null proc~parse_value->proc~to_null proc~to_object json_core%to_object proc~parse_value->proc~to_object proc~to_string json_core%to_string proc~parse_value->proc~to_string proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~parse_for_chars->none~throw_exception proc~parse_for_chars->proc~pop_char proc~parse_number->proc~pop_char proc~parse_number->proc~push_char proc~json_clear_exceptions json_core%json_clear_exceptions proc~parse_number->proc~json_clear_exceptions proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real proc~parse_object->none~add~4 proc~parse_object->none~destroy~3 proc~parse_object->none~throw_exception proc~parse_object->proc~json_value_create proc~parse_object->proc~parse_value proc~parse_object->proc~pop_char proc~parse_object->proc~parse_object proc~parse_object->proc~parse_string proc~parse_string->none~throw_exception proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~push_char->none~throw_exception proc~integer_to_string integer_to_string proc~push_char->proc~integer_to_string proc~to_array->proc~destroy_json_data proc~to_logical->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~parse_array~~CalledByGraph proc~parse_array json_core%parse_array proc~parse_value json_core%parse_value proc~parse_array->proc~parse_value proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code recursive subroutine parse_array ( json , unit , str , array ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: unit !! file unit number (if parsing from a file) character ( kind = CK , len =* ), intent ( in ) :: str !! JSON string (if parsing from a string) type ( json_value ), pointer :: array type ( json_value ), pointer :: element !! temp variable for array element logical ( LK ) :: eof !! end of file flag character ( kind = CK , len = 1 ) :: c !! character returned by [[pop_char]] logical ( LK ) :: expecting_next_element !! to check for trailing delimiters expecting_next_element = . false . do if ( json % exception_thrown ) exit ! try to parse an element value nullify ( element ) call json_value_create ( element ) call json % parse_value ( unit , str , element ) if ( json % exception_thrown ) then if ( associated ( element )) call json % destroy ( element ) exit end if ! parse value will deallocate an empty array value if ( associated ( element )) then expecting_next_element = . false . call json % add ( array , element ) end if ! popped the next character call json % pop_char ( unit , str = str , eof = eof , skip_ws = . true ., & skip_comments = json % allow_comments , popped = c ) if ( eof ) then ! The file ended before array was finished: call json % throw_exception ( 'Error in parse_array: ' // & 'End of file encountered when parsing an array.' ) exit else if ( delimiter == c ) then ! parse the next element expecting_next_element = . true . cycle else if ( end_array == c ) then ! end of array if ( expecting_next_element . and . . not . json % allow_trailing_comma ) then ! this is a dangling comma. call json % throw_exception ( 'Error in parse_array: ' // & 'Dangling comma when parsing an array.' ) end if exit else call json % throw_exception ( 'Error in parse_array: ' // & 'Unexpected character encountered when parsing array.' ) exit end if end do end subroutine parse_array","tags":"","loc":"proc/parse_array.html"},{"title":"parse_for_chars – JSON-Fortran","text":"private subroutine parse_for_chars(json, unit, str, chars) Core parsing routine. This is used to verify the strings true , false , and null during parsing. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if parsing from a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing from a string) character(kind=CK, len=*), intent(in) :: chars the string to check for. Calls proc~~parse_for_chars~~CallsGraph proc~parse_for_chars json_core%parse_for_chars none~throw_exception json_core%throw_exception proc~parse_for_chars->none~throw_exception proc~pop_char json_core%pop_char proc~parse_for_chars->proc~pop_char proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~parse_for_chars~~CalledByGraph proc~parse_for_chars json_core%parse_for_chars proc~parse_value json_core%parse_value proc~parse_value->proc~parse_for_chars proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine parse_for_chars ( json , unit , str , chars ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: unit !! file unit number (if parsing from a file) character ( kind = CK , len =* ), intent ( in ) :: str !! JSON string (if parsing from a string) character ( kind = CK , len =* ), intent ( in ) :: chars !! the string to check for. integer ( IK ) :: i !! counter integer ( IK ) :: length !! trimmed length of `chars` logical ( LK ) :: eof !! end of file flag character ( kind = CK , len = 1 ) :: c !! character returned by [[pop_char]] if (. not . json % exception_thrown ) then length = len_trim ( chars ) do i = 1 , length call json % pop_char ( unit , str = str , eof = eof , skip_ws = . false ., popped = c ) if ( eof ) then call json % throw_exception ( 'Error in parse_for_chars:' // & ' Unexpected end of file while parsing.' ) return else if ( c /= chars ( i : i )) then call json % throw_exception ( 'Error in parse_for_chars:' // & ' Unexpected character: \"' // c // '\" (expecting \"' // & chars ( i : i ) // '\")' ) return end if end do end if end subroutine parse_for_chars","tags":"","loc":"proc/parse_for_chars.html"},{"title":"parse_number – JSON-Fortran","text":"private subroutine parse_number(json, unit, str, value) Read a numerical value from the file (or string).\n The routine will determine if it is an integer or a real, and\n allocate the type accordingly. Note Complete rewrite of the original FSON routine, which had some problems. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if parsing from a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing from a string) type( json_value ), pointer :: value Calls proc~~parse_number~~CallsGraph proc~parse_number json_core%parse_number proc~json_clear_exceptions json_core%json_clear_exceptions proc~parse_number->proc~json_clear_exceptions proc~pop_char json_core%pop_char proc~parse_number->proc~pop_char proc~push_char json_core%push_char proc~parse_number->proc~push_char proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real none~throw_exception json_core%throw_exception proc~push_char->none~throw_exception proc~integer_to_string integer_to_string proc~push_char->proc~integer_to_string proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~destroy_json_data destroy_json_data proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~parse_number~~CalledByGraph proc~parse_number json_core%parse_number proc~parse_value json_core%parse_value proc~parse_value->proc~parse_number proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine parse_number ( json , unit , str , value ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: unit !! file unit number (if parsing from a file) character ( kind = CK , len =* ), intent ( in ) :: str !! JSON string (if parsing from a string) type ( json_value ), pointer :: value character ( kind = CK , len = :), allocatable :: tmp !! temp string character ( kind = CK , len = :), allocatable :: saved_err_message !! temp error message for !! string to int conversion character ( kind = CK , len = 1 ) :: c !! character returned by [[pop_char]] logical ( LK ) :: eof !! end of file flag real ( RK ) :: rval !! real value integer ( IK ) :: ival !! integer value logical ( LK ) :: first !! first character logical ( LK ) :: is_integer !! it is an integer integer ( IK ) :: ip !! index to put next character !! [to speed up by reducing the number !! of character string reallocations] if (. not . json % exception_thrown ) then tmp = blank_chunk ip = 1 first = . true . is_integer = . true . !assume it may be an integer, unless otherwise determined !read one character at a time and accumulate the string: do !get the next character: call json % pop_char ( unit , str = str , eof = eof , skip_ws = . true ., popped = c ) select case ( c ) case ( CK_ '-' , CK_ '+' ) !note: allowing a '+' as the first character here. if ( is_integer . and . (. not . first )) is_integer = . false . !add it to the string: !tmp = tmp // c !...original if ( ip > len ( tmp )) tmp = tmp // blank_chunk tmp ( ip : ip ) = c ip = ip + 1 case ( CK_ '.' , CK_ 'E' , CK_ 'e' , CK_ 'D' , CK_ 'd' ) !can be present in real numbers if ( is_integer ) is_integer = . false . !add it to the string: !tmp = tmp // c !...original if ( ip > len ( tmp )) tmp = tmp // blank_chunk tmp ( ip : ip ) = c ip = ip + 1 case ( CK_ '0' : CK_ '9' ) !valid characters for numbers !add it to the string: !tmp = tmp // c !...original if ( ip > len ( tmp )) tmp = tmp // blank_chunk tmp ( ip : ip ) = c ip = ip + 1 case default !push back the last character read: call json % push_char ( c ) !string to value: if ( is_integer ) then ! it is an integer: ival = json % string_to_int ( tmp ) if ( json % exception_thrown . and . . not . json % strict_integer_type_checking ) then ! if it couldn't be converted to an integer, ! then try to convert it to a real value and see if that works saved_err_message = json % err_message ! keep the original error message call json % clear_exceptions () ! clear exceptions rval = json % string_to_dble ( tmp ) if ( json % exception_thrown ) then ! restore original error message and continue json % err_message = saved_err_message call json % to_integer ( value , ival ) ! just so we have something else ! in this case, we return a real call json % to_real ( value , rval ) end if else call json % to_integer ( value , ival ) end if else ! it is a real: rval = json % string_to_dble ( tmp ) call json % to_real ( value , rval ) end if exit !finished end select if ( first ) first = . false . end do !cleanup: if ( allocated ( tmp )) deallocate ( tmp ) end if end subroutine parse_number","tags":"","loc":"proc/parse_number.html"},{"title":"parse_object – JSON-Fortran","text":"private recursive subroutine parse_object(json, unit, str, parent, expecting_next_element) Core parsing routine. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if parsing from a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing from a string) type( json_value ), pointer :: parent the parsed object will be added as a child of this logical(kind=LK), intent(in) :: expecting_next_element if true, this object is preceeded by a comma, so\nwe expect a valid object to exist. used to check\nfor trailing delimiters. Calls proc~~parse_object~~CallsGraph proc~parse_object json_core%parse_object proc~parse_object->proc~parse_object none~add~4 json_core%add proc~parse_object->none~add~4 none~destroy~3 json_core%destroy proc~parse_object->none~destroy~3 none~throw_exception json_core%throw_exception proc~parse_object->none~throw_exception proc~json_value_create json_value_create proc~parse_object->proc~json_value_create proc~parse_string json_core%parse_string proc~parse_object->proc~parse_string proc~parse_value json_core%parse_value proc~parse_object->proc~parse_value proc~pop_char json_core%pop_char proc~parse_object->proc~pop_char proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~parse_string->none~throw_exception proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~parse_value->proc~parse_object proc~parse_value->none~throw_exception proc~parse_value->proc~parse_string proc~parse_value->proc~pop_char proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_for_chars json_core%parse_for_chars proc~parse_value->proc~parse_for_chars proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~to_array json_core%to_array proc~parse_value->proc~to_array proc~to_logical json_core%to_logical proc~parse_value->proc~to_logical proc~to_null json_core%to_null proc~parse_value->proc~to_null proc~to_object json_core%to_object proc~parse_value->proc~to_object proc~to_string json_core%to_string proc~parse_value->proc~to_string proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~parse_array->none~add~4 proc~parse_array->none~destroy~3 proc~parse_array->none~throw_exception proc~parse_array->proc~json_value_create proc~parse_array->proc~parse_value proc~parse_array->proc~pop_char proc~parse_for_chars->none~throw_exception proc~parse_for_chars->proc~pop_char proc~parse_number->proc~pop_char proc~parse_number->proc~push_char proc~json_clear_exceptions json_core%json_clear_exceptions proc~parse_number->proc~json_clear_exceptions proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real proc~push_char->none~throw_exception proc~integer_to_string integer_to_string proc~push_char->proc~integer_to_string proc~to_array->proc~destroy_json_data proc~to_logical->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~parse_object~~CalledByGraph proc~parse_object json_core%parse_object proc~parse_object->proc~parse_object proc~parse_value json_core%parse_value proc~parse_object->proc~parse_value proc~parse_value->proc~parse_object proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code recursive subroutine parse_object ( json , unit , str , parent , expecting_next_element ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: unit !! file unit number (if parsing from a file) character ( kind = CK , len =* ), intent ( in ) :: str !! JSON string (if parsing from a string) type ( json_value ), pointer :: parent !! the parsed object will be added as a child of this logical ( LK ), intent ( in ) :: expecting_next_element !! if true, this object is preceeded by a comma, so !! we expect a valid object to exist. used to check !! for trailing delimiters. type ( json_value ), pointer :: pair !! temp variable logical ( LK ) :: eof !! end of file flag character ( kind = CK , len = 1 ) :: c !! character returned by [[pop_char]] #if defined __GFORTRAN__ character ( kind = CK , len = :), allocatable :: tmp !! this is a work-around for a bug !! in the gfortran 4.9 compiler. #endif if (. not . json % exception_thrown ) then !the routine is being called incorrectly. if (. not . associated ( parent )) then call json % throw_exception ( 'Error in parse_object: parent pointer not associated.' ) end if nullify ( pair ) !probably not necessary ! pair name call json % pop_char ( unit , str = str , eof = eof , skip_ws = . true ., & skip_comments = json % allow_comments , popped = c ) if ( eof ) then call json % throw_exception ( 'Error in parse_object:' // & ' Unexpected end of file while parsing start of object.' ) return else if ( end_object == c ) then ! end of an empty object if ( expecting_next_element . and . . not . json % allow_trailing_comma ) then ! this is a dangling comma. call json % throw_exception ( 'Error in parse_object: ' // & 'Dangling comma when parsing an object.' ) end if return else if ( quotation_mark == c ) then call json_value_create ( pair ) #if defined __GFORTRAN__ call json % parse_string ( unit , str , tmp ) ! write to a tmp variable because of pair % name = tmp ! a bug in 4.9 gfortran compiler. deallocate ( tmp ) #else call json % parse_string ( unit , str , pair % name ) #endif if ( json % exception_thrown ) then call json % destroy ( pair ) return end if else call json % throw_exception ( 'Error in parse_object: Expecting string: \"' // c // '\"' ) return end if ! pair value call json % pop_char ( unit , str = str , eof = eof , skip_ws = . true ., & skip_comments = json % allow_comments , popped = c ) if ( eof ) then call json % destroy ( pair ) call json % throw_exception ( 'Error in parse_object:' // & ' Unexpected end of file while parsing object member.' ) return else if ( colon_char == c ) then ! parse the value call json % parse_value ( unit , str , pair ) if ( json % exception_thrown ) then call json % destroy ( pair ) return else call json % add ( parent , pair ) end if else call json % destroy ( pair ) call json % throw_exception ( 'Error in parse_object:' // & ' Expecting : and then a value: ' // c ) return end if ! another possible pair call json % pop_char ( unit , str = str , eof = eof , skip_ws = . true ., & skip_comments = json % allow_comments , popped = c ) if ( eof ) then call json % throw_exception ( 'Error in parse_object: ' // & 'End of file encountered when parsing an object' ) return else if ( delimiter == c ) then ! read the next member call json % parse_object ( unit = unit , str = str , parent = parent , & expecting_next_element = . true .) else if ( end_object == c ) then ! end of object return else call json % throw_exception ( 'Error in parse_object: Expecting end of object: ' // c ) return end if end if end subroutine parse_object","tags":"","loc":"proc/parse_object.html"},{"title":"parse_string – JSON-Fortran","text":"private subroutine parse_string(json, unit, str, string) Parses a string while reading a JSON file. History Jacob Williams : 6/16/2014 : Added hex validation. Jacob Williams : 12/3/2015 : Fixed some bugs. Jacob Williams : 8/23/2015 : string is now returned unescaped. Jacob Williams : 7/21/2018 : moved hex validate to unescape_string . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if\nparsing from a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing\nfrom a string) character(kind=CK, len=:), intent(out), allocatable :: string the string (unescaped\nif necessary) Calls proc~~parse_string~~CallsGraph proc~parse_string json_core%parse_string none~throw_exception json_core%throw_exception proc~parse_string->none~throw_exception proc~pop_char json_core%pop_char proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~parse_string~~CalledByGraph proc~parse_string json_core%parse_string proc~parse_object json_core%parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~parse_object proc~parse_value json_core%parse_value proc~parse_object->proc~parse_value proc~parse_value->proc~parse_string proc~parse_value->proc~parse_object proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine parse_string ( json , unit , str , string ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: unit !! file unit number (if !! parsing from a file) character ( kind = CK , len =* ), intent ( in ) :: str !! JSON string (if parsing !! from a string) character ( kind = CK , len = :), allocatable , intent ( out ) :: string !! the string (unescaped !! if necessary) logical ( LK ) :: eof !! end of file flag logical ( LK ) :: escape !! for escape string parsing character ( kind = CK , len = 1 ) :: c !! character returned by [[pop_char]] integer ( IK ) :: ip !! index to put next character, !! to speed up by reducing the number !! of character string reallocations. character ( kind = CK , len = :), allocatable :: error_message !! for string unescaping !at least return a blank string if there is a problem: string = blank_chunk if (. not . json % exception_thrown ) then !initialize: escape = . false . ip = 1 do !get the next character from the file: call json % pop_char ( unit , str = str , eof = eof , skip_ws = . false ., popped = c ) if ( eof ) then call json % throw_exception ( 'Error in parse_string: Expecting end of string' ) return else if ( c == quotation_mark . and . . not . escape ) then !end of string exit else !if the string is not big enough, then add another chunk: if ( ip > len ( string )) string = string // blank_chunk !append to string: string ( ip : ip ) = c ip = ip + 1 ! check for escape character, so we don't ! exit prematurely if escaping a quotation ! character: if ( escape ) then escape = . false . else escape = ( c == backslash ) end if end if end do !trim the string if necessary: if ( ip < len ( string ) + 1 ) then if ( ip == 1 ) then string = CK_ '' else string = string ( 1 : ip - 1 ) end if end if ! string is returned unescaped: ! (this will also validate any hex strings present) call unescape_string ( string , error_message ) if ( allocated ( error_message )) then call json % throw_exception ( error_message ) deallocate ( error_message ) !cleanup end if end if end subroutine parse_string","tags":"","loc":"proc/parse_string.html"},{"title":"parse_value – JSON-Fortran","text":"private recursive subroutine parse_value(json, unit, str, value) Core parsing routine. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number character(kind=CK, len=*), intent(in) :: str string containing JSON data (only used if unit=0 ) type( json_value ), pointer :: value JSON data that is extracted Calls proc~~parse_value~~CallsGraph proc~parse_value json_core%parse_value none~throw_exception json_core%throw_exception proc~parse_value->none~throw_exception proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_for_chars json_core%parse_for_chars proc~parse_value->proc~parse_for_chars proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~parse_string json_core%parse_string proc~parse_value->proc~parse_string proc~pop_char json_core%pop_char proc~parse_value->proc~pop_char proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~to_array json_core%to_array proc~parse_value->proc~to_array proc~to_logical json_core%to_logical proc~parse_value->proc~to_logical proc~to_null json_core%to_null proc~parse_value->proc~to_null proc~to_object json_core%to_object proc~parse_value->proc~to_object proc~to_string json_core%to_string proc~parse_value->proc~to_string proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~parse_array->proc~parse_value proc~parse_array->none~throw_exception proc~parse_array->proc~pop_char none~add~4 json_core%add proc~parse_array->none~add~4 none~destroy~3 json_core%destroy proc~parse_array->none~destroy~3 proc~json_value_create json_value_create proc~parse_array->proc~json_value_create proc~parse_for_chars->none~throw_exception proc~parse_for_chars->proc~pop_char proc~parse_number->proc~pop_char proc~parse_number->proc~push_char proc~json_clear_exceptions json_core%json_clear_exceptions proc~parse_number->proc~json_clear_exceptions proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real proc~parse_object->proc~parse_value proc~parse_object->none~throw_exception proc~parse_object->proc~parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~pop_char proc~parse_object->none~add~4 proc~parse_object->none~destroy~3 proc~parse_object->proc~json_value_create proc~parse_string->none~throw_exception proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~push_char->none~throw_exception proc~integer_to_string integer_to_string proc~push_char->proc~integer_to_string proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_logical->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~parse_value~~CalledByGraph proc~parse_value json_core%parse_value proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code recursive subroutine parse_value ( json , unit , str , value ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: unit !! file unit number character ( kind = CK , len =* ), intent ( in ) :: str !! string containing JSON !! data (only used if `unit=0`) type ( json_value ), pointer :: value !! JSON data that is extracted logical ( LK ) :: eof !! end-of-file flag character ( kind = CK , len = 1 ) :: c !! character read from file !! (or string) by [[pop_char]] #if defined __GFORTRAN__ character ( kind = CK , len = :), allocatable :: tmp !! this is a work-around for a bug !! in the gfortran 4.9 compiler. #endif if (. not . json % exception_thrown ) then !the routine is being called incorrectly. if (. not . associated ( value )) then call json % throw_exception ( 'Error in parse_value: value pointer not associated.' ) return end if ! pop the next non whitespace character off the file call json % pop_char ( unit , str = str , eof = eof , skip_ws = . true ., & skip_comments = json % allow_comments , popped = c ) if ( eof ) then return else select case ( c ) case ( start_object ) ! start object call json % to_object ( value ) !allocate class call json % parse_object ( unit , str , value , expecting_next_element = . false .) case ( start_array ) ! start array call json % to_array ( value ) !allocate class call json % parse_array ( unit , str , value ) case ( end_array ) ! end an empty array call json % push_char ( c ) if ( associated ( value )) then deallocate ( value ) nullify ( value ) end if case ( quotation_mark ) ! string call json % to_string ( value ) !allocate class select case ( value % var_type ) case ( json_string ) #if defined __GFORTRAN__ ! write to a tmp variable because of ! a bug in 4.9 gfortran compiler. call json % parse_string ( unit , str , tmp ) value % str_value = tmp if ( allocated ( tmp )) deallocate ( tmp ) #else call json % parse_string ( unit , str , value % str_value ) #endif end select case ( CK_ 't' ) !true_str(1:1) gfortran bug work around !true call json % parse_for_chars ( unit , str , true_str ( 2 :)) !allocate class and set value: if (. not . json % exception_thrown ) call json % to_logical ( value ,. true .) case ( CK_ 'f' ) !false_str(1:1) gfortran bug work around !false call json % parse_for_chars ( unit , str , false_str ( 2 :)) !allocate class and set value: if (. not . json % exception_thrown ) call json % to_logical ( value ,. false .) case ( CK_ 'n' ) !null_str(1:1) gfortran bug work around !null call json % parse_for_chars ( unit , str , null_str ( 2 :)) if (. not . json % exception_thrown ) call json % to_null ( value ) ! allocate class case ( CK_ '-' , CK_ '0' : CK_ '9' , CK_ '.' , CK_ '+' ) call json % push_char ( c ) call json % parse_number ( unit , str , value ) case default call json % throw_exception ( 'Error in parse_value:' // & ' Unexpected character while parsing value. \"' // & c // '\"' ) end select end if end if end subroutine parse_value","tags":"","loc":"proc/parse_value.html"},{"title":"pop_char – JSON-Fortran","text":"private subroutine pop_char(json, unit, str, skip_ws, skip_comments, eof, popped) Get the next character from the file (or string). See also push_char Note This routine ignores non-printing ASCII characters\n ( iachar<=31 ) that are in strings. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if parsing\nfrom a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing from a\nstring) – only used if unit=0 logical(kind=LK), intent(in), optional :: skip_ws to ignore whitespace [default False] logical(kind=LK), intent(in), optional :: skip_comments to ignore comment lines [default False] logical(kind=LK), intent(out) :: eof true if the end of the file has\nbeen reached. character(kind=CK, len=1), intent(out) :: popped the popped character returned Called by proc~~pop_char~~CalledByGraph proc~pop_char json_core%pop_char proc~json_parse_end json_core%json_parse_end proc~json_parse_end->proc~pop_char proc~parse_array json_core%parse_array proc~parse_array->proc~pop_char proc~parse_value json_core%parse_value proc~parse_array->proc~parse_value proc~parse_for_chars json_core%parse_for_chars proc~parse_for_chars->proc~pop_char proc~parse_number json_core%parse_number proc~parse_number->proc~pop_char proc~parse_object json_core%parse_object proc~parse_object->proc~pop_char proc~parse_object->proc~parse_object proc~parse_string json_core%parse_string proc~parse_object->proc~parse_string proc~parse_object->proc~parse_value proc~parse_string->proc~pop_char proc~parse_value->proc~pop_char proc~parse_value->proc~parse_array proc~parse_value->proc~parse_for_chars proc~parse_value->proc~parse_number proc~parse_value->proc~parse_object proc~parse_value->proc~parse_string proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~json_parse_end proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~json_parse_end proc~json_parse_string->proc~parse_value none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine pop_char ( json , unit , str , skip_ws , skip_comments , eof , popped ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: unit !! file unit number (if parsing !! from a file) character ( kind = CK , len =* ), intent ( in ) :: str !! JSON string (if parsing from a !! string) -- only used if `unit=0` logical ( LK ), intent ( in ), optional :: skip_ws !! to ignore whitespace [default False] logical ( LK ), intent ( in ), optional :: skip_comments !! to ignore comment lines [default False] logical ( LK ), intent ( out ) :: eof !! true if the end of the file has !! been reached. character ( kind = CK , len = 1 ), intent ( out ) :: popped !! the popped character returned integer ( IK ) :: ios !! `iostat` flag integer ( IK ) :: str_len !! length of `str` character ( kind = CK , len = 1 ) :: c !! a character read from the file (or string) logical ( LK ) :: ignore !! if whitespace is to be ignored logical ( LK ) :: ignore_comments !! if comment lines are to be ignored logical ( LK ) :: parsing_comment !! if we are in the process !! of parsing a comment line if (. not . json % exception_thrown ) then eof = . false . if (. not . present ( skip_ws )) then ignore = . false . else ignore = skip_ws end if parsing_comment = . false . if (. not . present ( skip_comments )) then ignore_comments = . false . else ignore_comments = skip_comments end if do if ( json % pushed_index > 0 ) then ! there is a character pushed back on, most likely ! from the number parsing. Note: this can only occur if ! reading from a file when use_unformatted_stream=.false. c = json % pushed_char ( json % pushed_index : json % pushed_index ) json % pushed_index = json % pushed_index - 1 else if ( unit /= 0 ) then !read from the file !read the next character: if ( use_unformatted_stream ) then ! in this case, we read the file in chunks. ! if we already have the character we need, ! then get it from the chunk. Otherwise, ! read in another chunk. if ( json % ichunk < 1 ) then ! read in a chunk: json % ichunk = 0 if ( json % filesize < json % ipos + len ( json % chunk ) - 1 ) then ! for the last chunk, we resize ! it to the correct size: json % chunk = repeat ( space , json % filesize - json % ipos + 1 ) end if read ( unit = unit , pos = json % ipos , iostat = ios ) json % chunk else ios = 0 end if json % ichunk = json % ichunk + 1 if ( json % ichunk > len ( json % chunk )) then ! check this just in case ios = IOSTAT_END else ! get the next character from the chunk: c = json % chunk ( json % ichunk : json % ichunk ) if ( json % ichunk == len ( json % chunk )) then json % ichunk = 0 ! reset for next chunk end if end if else ! a formatted read: read ( unit = unit , fmt = '(A1)' , advance = 'NO' , iostat = ios ) c end if json % ipos = json % ipos + 1 else !read from the string str_len = len ( str ) !length of the string if ( json % ipos <= str_len ) then c = str ( json % ipos : json % ipos ) ios = 0 else ios = IOSTAT_END !end of the string end if json % ipos = json % ipos + 1 end if json % char_count = json % char_count + 1 !character count in the current line if ( IS_IOSTAT_END ( ios )) then !end of file ! no character to return json % char_count = 0 eof = . true . popped = space ! just to set a value exit else if ( IS_IOSTAT_EOR ( ios ) . or . c == newline ) then !end of record json % char_count = 0 json % line_count = json % line_count + 1 if ( ignore_comments ) parsing_comment = . false . ! done parsing this comment line cycle end if end if if ( ignore_comments . and . ( parsing_comment . or . scan ( c , json % comment_char , kind = IK ) > 0_IK ) ) then ! skipping the comment parsing_comment = . true . cycle else if ( any ( c == control_chars )) then ! non printing ascii characters cycle else if ( ignore . and . c == space ) then ! ignoring whitespace cycle else ! return the character popped = c exit end if end do end if end subroutine pop_char","tags":"","loc":"proc/pop_char.html"},{"title":"push_char – JSON-Fortran","text":"private subroutine push_char(json, c) Core routine. See also pop_char History Jacob Williams : 5/3/2015 : replaced original version of this routine. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CK, len=1), intent(in) :: c to character to push Calls proc~~push_char~~CallsGraph proc~push_char json_core%push_char none~throw_exception json_core%throw_exception proc~push_char->none~throw_exception proc~integer_to_string integer_to_string proc~push_char->proc~integer_to_string proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~push_char~~CalledByGraph proc~push_char json_core%push_char proc~parse_number json_core%parse_number proc~parse_number->proc~push_char proc~parse_value json_core%parse_value proc~parse_value->proc~push_char proc~parse_value->proc~parse_number proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine push_char ( json , c ) implicit none class ( json_core ), intent ( inout ) :: json character ( kind = CK , len = 1 ), intent ( in ) :: c !! to character to push character ( kind = CK , len = max_numeric_str_len ) :: istr !! for error printing if (. not . json % exception_thrown ) then if ( use_unformatted_stream ) then !in this case, c is ignored, and we just !decrement the stream position counter: json % ipos = json % ipos - 1 json % ichunk = json % ichunk - 1 else json % pushed_index = json % pushed_index + 1 if ( json % pushed_index > 0 . and . json % pushed_index <= len ( json % pushed_char )) then json % pushed_char ( json % pushed_index : json % pushed_index ) = c else call integer_to_string ( json % pushed_index , int_fmt , istr ) call json % throw_exception ( 'Error in push_char: ' // & 'invalid valid of pushed_index: ' // trim ( istr )) end if end if !character count in the current line json % char_count = json % char_count - 1 end if end subroutine push_char","tags":"","loc":"proc/push_char.html"},{"title":"to_array – JSON-Fortran","text":"private subroutine to_array(json, p, name) Change the json_value variable to an array. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. Calls proc~~to_array~~CallsGraph proc~to_array json_core%to_array proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~to_array~~CalledByGraph proc~to_array json_core%to_array proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create_array json_core%json_value_create_array proc~json_value_create_array->proc~to_array proc~parse_value json_core%parse_value proc~parse_value->proc~to_array proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object none~create_array json_core%create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path none~load~2 json_core%load none~load~2->proc~json_parse_file proc~convert json_core%convert proc~convert->none~create_array none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create_array proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create_array proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create_array proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_integer_vec json_core%json_value_add_integer_vec proc~json_value_add_integer_vec->none~create_array proc~json_value_add_logical_vec json_core%json_value_add_logical_vec proc~json_value_add_logical_vec->none~create_array proc~json_value_add_real_vec json_core%json_value_add_real_vec proc~json_value_add_real_vec->none~create_array proc~json_value_add_string_vec json_core%json_value_add_string_vec proc~json_value_add_string_vec->none~create_array proc~wrap_json_value_create_array->none~create_array proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~info~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~info~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~info~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_parse_string->none~deserialize~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_file_load_from_string->none~deserialize proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine to_array ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ), optional :: name !! if the name is also to be changed. !set type and value: call destroy_json_data ( p ) p % var_type = json_array !name: if ( present ( name )) call json % rename ( p , name ) end subroutine to_array","tags":"","loc":"proc/to_array.html"},{"title":"to_integer – JSON-Fortran","text":"private subroutine to_integer(json, p, val, name) Change the json_value variable to an integer. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(in), optional :: val if the value is also to be set\n(if not present, then 0 is used). character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. Calls proc~~to_integer~~CallsGraph proc~to_integer json_core%to_integer proc~destroy_json_data destroy_json_data proc~to_integer->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~to_integer~~CalledByGraph proc~to_integer json_core%to_integer proc~json_update_integer json_core%json_update_integer proc~json_update_integer->proc~to_integer proc~json_value_create_integer json_core%json_value_create_integer proc~json_value_create_integer->proc~to_integer proc~parse_number json_core%parse_number proc~parse_number->proc~to_integer none~create_integer json_core%create_integer none~create_integer->proc~json_value_create_integer proc~wrap_json_value_create_integer json_core%wrap_json_value_create_integer none~create_integer->proc~wrap_json_value_create_integer proc~parse_value json_core%parse_value proc~parse_value->proc~parse_number proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create_integer proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~json_value_add_integer json_core%json_value_add_integer proc~json_value_add_integer->none~create_integer proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~wrap_json_value_create_integer->none~create_integer none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine to_integer ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p integer ( IK ), intent ( in ), optional :: val !! if the value is also to be set !! (if not present, then 0 is used). character ( kind = CK , len =* ), intent ( in ), optional :: name !! if the name is also to be changed. !set type and value: call destroy_json_data ( p ) p % var_type = json_integer allocate ( p % int_value ) if ( present ( val )) then p % int_value = val else p % int_value = 0_IK !default value end if !name: if ( present ( name )) call json % rename ( p , name ) end subroutine to_integer","tags":"","loc":"proc/to_integer.html"},{"title":"to_logical – JSON-Fortran","text":"private subroutine to_logical(json, p, val, name) Change the json_value variable to a logical. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p logical(kind=LK), intent(in), optional :: val if the value is also to be set\n(if not present, then .false. is used). character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. Calls proc~~to_logical~~CallsGraph proc~to_logical json_core%to_logical proc~destroy_json_data destroy_json_data proc~to_logical->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~to_logical~~CalledByGraph proc~to_logical json_core%to_logical proc~json_update_logical json_core%json_update_logical proc~json_update_logical->proc~to_logical proc~json_value_create_logical json_core%json_value_create_logical proc~json_value_create_logical->proc~to_logical proc~parse_value json_core%parse_value proc~parse_value->proc~to_logical proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object none~create_logical json_core%create_logical none~create_logical->proc~json_value_create_logical proc~wrap_json_value_create_logical json_core%wrap_json_value_create_logical none~create_logical->proc~wrap_json_value_create_logical proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create_logical proc~json_value_add_logical json_core%json_value_add_logical proc~json_value_add_logical->none~create_logical proc~wrap_json_value_create_logical->none~create_logical proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine to_logical ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p logical ( LK ), intent ( in ), optional :: val !! if the value is also to be set !! (if not present, then .false. is used). character ( kind = CK , len =* ), intent ( in ), optional :: name !! if the name is also to be changed. !set type and value: call destroy_json_data ( p ) p % var_type = json_logical allocate ( p % log_value ) if ( present ( val )) then p % log_value = val else p % log_value = . false . !default value end if !name: if ( present ( name )) call json % rename ( p , name ) end subroutine to_logical","tags":"","loc":"proc/to_logical.html"},{"title":"to_null – JSON-Fortran","text":"private subroutine to_null(json, p, name) Change the json_value variable to a null. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. Calls proc~~to_null~~CallsGraph proc~to_null json_core%to_null proc~destroy_json_data destroy_json_data proc~to_null->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~to_null~~CalledByGraph proc~to_null json_core%to_null proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->proc~to_null none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_value_create_null json_core%json_value_create_null proc~json_value_create_null->proc~to_null proc~parse_value json_core%parse_value proc~parse_value->proc~to_null proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object none~create_null json_core%create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path none~load~2 json_core%load none~load~2->proc~json_parse_file proc~convert->none~create_null none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_value_add_null json_core%json_value_add_null proc~json_value_add_null->none~create_null proc~wrap_json_value_create_null->none~create_null proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_parse_string->none~deserialize~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_file_load_from_string->none~deserialize proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine to_null ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ), optional :: name !! if the name is also to be changed. !set type and value: call destroy_json_data ( p ) p % var_type = json_null !name: if ( present ( name )) call json % rename ( p , name ) end subroutine to_null","tags":"","loc":"proc/to_null.html"},{"title":"to_object – JSON-Fortran","text":"private subroutine to_object(json, p, name) Change the json_value variable to an object. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. Calls proc~~to_object~~CallsGraph proc~to_object json_core%to_object proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~to_object~~CalledByGraph proc~to_object json_core%to_object proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->proc~to_object none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create_object json_core%json_value_create_object proc~json_value_create_object->proc~to_object proc~parse_value json_core%parse_value proc~parse_value->proc~to_object proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object none~create_object json_core%create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path none~load~2 json_core%load none~load~2->proc~json_parse_file proc~convert json_core%convert proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~create_object none~add_by_path~2 json_core%add_by_path proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~create_object proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~create_object proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~create_object proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~create_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~create_object proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~create_object proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~create_object proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->none~create_object proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->none~create_object proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~create_object proc~json_file_add_string_vec->none~add_by_path~2 proc~wrap_json_value_create_object->none~create_object proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_parse_string->none~deserialize~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_file_load_from_string->none~deserialize proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine to_object ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ), optional :: name !! if the name is also to be changed. !set type and value: call destroy_json_data ( p ) p % var_type = json_object !name: if ( present ( name )) call json % rename ( p , name ) end subroutine to_object","tags":"","loc":"proc/to_object.html"},{"title":"to_real – JSON-Fortran","text":"private subroutine to_real(json, p, val, name) Change the json_value variable to a real. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=RK), intent(in), optional :: val if the value is also to be set\n(if not present, then 0.0_rk is used). character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. Calls proc~~to_real~~CallsGraph proc~to_real json_core%to_real proc~destroy_json_data destroy_json_data proc~to_real->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~to_real~~CalledByGraph proc~to_real json_core%to_real proc~json_update_real json_core%json_update_real proc~json_update_real->proc~to_real proc~json_value_create_real json_core%json_value_create_real proc~json_value_create_real->proc~to_real proc~parse_number json_core%parse_number proc~parse_number->proc~to_real proc~parse_value json_core%parse_value proc~parse_value->proc~parse_number proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine to_real ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p real ( RK ), intent ( in ), optional :: val !! if the value is also to be set !! (if not present, then 0.0_rk is used). character ( kind = CK , len =* ), intent ( in ), optional :: name !! if the name is also to be changed. !set type and value: call destroy_json_data ( p ) p % var_type = json_real allocate ( p % dbl_value ) if ( present ( val )) then p % dbl_value = val else p % dbl_value = 0.0_RK !default value end if !name: if ( present ( name )) call json % rename ( p , name ) end subroutine to_real","tags":"","loc":"proc/to_real.html"},{"title":"to_string – JSON-Fortran","text":"private subroutine to_string(json, p, val, name, trim_str, adjustl_str) Change the json_value variable to a string. Modified Izaak Beekman : 02/24/2015 Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in), optional :: val if the value is also to be set\n(if not present, then ‘’ is used). character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) Calls proc~~to_string~~CallsGraph proc~to_string json_core%to_string proc~destroy_json_data destroy_json_data proc~to_string->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~to_string~~CalledByGraph proc~to_string json_core%to_string proc~json_update_string json_core%json_update_string proc~json_update_string->proc~to_string none~add_by_path~2 json_core%add_by_path proc~json_update_string->none~add_by_path~2 proc~json_value_create_string json_core%json_value_create_string proc~json_value_create_string->proc~to_string proc~parse_value json_core%parse_value proc~parse_value->proc~to_string proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object none~create_string json_core%create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create_string proc~json_value_add_string json_core%json_value_add_string proc~json_value_add_string->none~create_string proc~wrap_json_value_create_string->none~create_string proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_parse_string->none~deserialize~2 none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine to_string ( json , p , val , name , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ), optional :: val !! if the value is also to be set !! (if not present, then '' is used). character ( kind = CK , len =* ), intent ( in ), optional :: name !! if the name is also to be changed. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` !! (only used if `val` is present) logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (only used if `val` is present) !! (note that ADJUSTL is done before TRIM) character ( kind = CK , len = :), allocatable :: str !! temp string for `trim()` and/or `adjustl()` logical :: trim_string !! if the string is to be trimmed logical :: adjustl_string !! if the string is to be adjusted left !set type and value: call destroy_json_data ( p ) p % var_type = json_string if ( present ( val )) then if ( present ( trim_str )) then trim_string = trim_str else trim_string = . false . end if if ( present ( adjustl_str )) then adjustl_string = adjustl_str else adjustl_string = . false . end if if ( trim_string . or . adjustl_string ) then str = val if ( adjustl_string ) str = adjustl ( str ) if ( trim_string ) str = trim ( str ) p % str_value = str else p % str_value = val end if else p % str_value = CK_ '' ! default value end if !name: if ( present ( name )) call json % rename ( p , name ) end subroutine to_string","tags":"","loc":"proc/to_string.html"},{"title":"wrap_json_add_integer_by_path – JSON-Fortran","text":"private subroutine wrap_json_add_integer_by_path(json, me, path, value, found, was_created) Wrapper to json_add_integer_by_path where “path” is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_add_integer_by_path~~CallsGraph proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path interface~to_unicode to_unicode proc~wrap_json_add_integer_by_path->interface~to_unicode proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_integer_by_path->none~create none~create_integer json_core%create_integer proc~json_add_integer_by_path->none~create_integer none~info~2 json_core%info proc~json_add_integer_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_integer_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_integer_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_integer_by_path->proc~json_value_replace proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_integer json_core%json_value_create_integer none~create_integer->proc~json_value_create_integer proc~wrap_json_value_create_integer json_core%wrap_json_value_create_integer none~create_integer->proc~wrap_json_value_create_integer proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_create json_value_create proc~json_value_create_integer->proc~json_value_create proc~to_integer json_core%to_integer proc~json_value_create_integer->proc~to_integer none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_integer->interface~to_unicode proc~wrap_json_value_create_integer->none~create_integer proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_integer->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_add_integer_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % json_add_integer_by_path ( me , to_unicode ( path ), value , found , was_created ) end subroutine wrap_json_add_integer_by_path","tags":"","loc":"proc/wrap_json_add_integer_by_path.html"},{"title":"wrap_json_add_integer_vec_by_path – JSON-Fortran","text":"private subroutine wrap_json_add_integer_vec_by_path(json, me, path, value, found, was_created) Wrapper for json_add_integer_vec_by_path where “path” is kind=CDK). Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_add_integer_vec_by_path~~CallsGraph proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path interface~to_unicode to_unicode proc~wrap_json_add_integer_vec_by_path->interface~to_unicode proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add~4 json_core%add proc~json_add_integer_vec_by_path->none~add~4 none~create json_core%create proc~json_add_integer_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_integer_vec_by_path->none~create_array none~info~2 json_core%info proc~json_add_integer_vec_by_path->none~info~2 proc~json_value_replace json_core%json_value_replace proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index none~throw_exception json_core%throw_exception proc~json_create_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_create_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->proc~json_value_replace proc~convert->none~throw_exception none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_add_integer_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % json_add_integer_vec_by_path ( me , to_unicode ( path ), value , found , was_created ) end subroutine wrap_json_add_integer_vec_by_path","tags":"","loc":"proc/wrap_json_add_integer_vec_by_path.html"},{"title":"wrap_json_add_logical_by_path – JSON-Fortran","text":"private subroutine wrap_json_add_logical_by_path(json, me, path, value, found, was_created) Wrapper to json_add_logical_by_path where “path” is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_add_logical_by_path~~CallsGraph proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path interface~to_unicode to_unicode proc~wrap_json_add_logical_by_path->interface~to_unicode proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_logical_by_path->none~create none~create_logical json_core%create_logical proc~json_add_logical_by_path->none~create_logical none~info~2 json_core%info proc~json_add_logical_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_logical_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_logical_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_logical_by_path->proc~json_value_replace proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_logical json_core%json_value_create_logical none~create_logical->proc~json_value_create_logical proc~wrap_json_value_create_logical json_core%wrap_json_value_create_logical none~create_logical->proc~wrap_json_value_create_logical proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_create json_value_create proc~json_value_create_logical->proc~json_value_create proc~to_logical json_core%to_logical proc~json_value_create_logical->proc~to_logical none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_logical->interface~to_unicode proc~wrap_json_value_create_logical->none~create_logical proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_logical->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_add_logical_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % json_add_logical_by_path ( me , to_unicode ( path ), value , found , was_created ) end subroutine wrap_json_add_logical_by_path","tags":"","loc":"proc/wrap_json_add_logical_by_path.html"},{"title":"wrap_json_add_logical_vec_by_path – JSON-Fortran","text":"private subroutine wrap_json_add_logical_vec_by_path(json, me, path, value, found, was_created) Wrapper for json_add_logical_vec_by_path where “path” is kind=CDK). Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_add_logical_vec_by_path~~CallsGraph proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path interface~to_unicode to_unicode proc~wrap_json_add_logical_vec_by_path->interface~to_unicode proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add~4 json_core%add proc~json_add_logical_vec_by_path->none~add~4 none~create json_core%create proc~json_add_logical_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_logical_vec_by_path->none~create_array none~info~2 json_core%info proc~json_add_logical_vec_by_path->none~info~2 proc~json_value_replace json_core%json_value_replace proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index none~throw_exception json_core%throw_exception proc~json_create_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_create_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->proc~json_value_replace proc~convert->none~throw_exception none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_add_logical_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % json_add_logical_vec_by_path ( me , to_unicode ( path ), value , found , was_created ) end subroutine wrap_json_add_logical_vec_by_path","tags":"","loc":"proc/wrap_json_add_logical_vec_by_path.html"},{"title":"wrap_json_add_member_by_path – JSON-Fortran","text":"private subroutine wrap_json_add_member_by_path(json, me, path, p, found, was_created) Wrapper to json_add_member_by_path where “path” is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(in), pointer :: p the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_add_member_by_path~~CallsGraph proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path interface~to_unicode to_unicode proc~wrap_json_add_member_by_path->interface~to_unicode proc~json_add_member_by_path json_core%json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_member_by_path->none~create none~info~2 json_core%info proc~json_add_member_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_member_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_member_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_member_by_path->proc~json_value_replace proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_add_member_by_path ( json , me , path , p , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable type ( json_value ), pointer , intent ( in ) :: p !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % json_add_member_by_path ( me , to_unicode ( path ), p , found , was_created ) end subroutine wrap_json_add_member_by_path","tags":"","loc":"proc/wrap_json_add_member_by_path.html"},{"title":"wrap_json_add_real32_by_path – JSON-Fortran","text":"private subroutine wrap_json_add_real32_by_path(json, me, path, value, found, was_created) Wrapper to json_add_real32_by_path where “path” is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_add_real32_by_path~~CallsGraph proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path interface~to_unicode to_unicode proc~wrap_json_add_real32_by_path->interface~to_unicode none~add_by_path~2 json_core%add_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_add_real32_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % add_by_path ( me , to_unicode ( path ), real ( value , RK ), found , was_created ) end subroutine wrap_json_add_real32_by_path","tags":"","loc":"proc/wrap_json_add_real32_by_path.html"},{"title":"wrap_json_add_real32_vec_by_path – JSON-Fortran","text":"private subroutine wrap_json_add_real32_vec_by_path(json, me, path, value, found, was_created) Wrapper for json_add_real32_vec_by_path where “path” is kind=CDK). Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_add_real32_vec_by_path~~CallsGraph proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path interface~to_unicode to_unicode proc~wrap_json_add_real32_vec_by_path->interface~to_unicode none~add_by_path~2 json_core%add_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_add_real32_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % add_by_path ( me , to_unicode ( path ), real ( value , RK ), found , was_created ) end subroutine wrap_json_add_real32_vec_by_path","tags":"","loc":"proc/wrap_json_add_real32_vec_by_path.html"},{"title":"wrap_json_add_real_by_path – JSON-Fortran","text":"private subroutine wrap_json_add_real_by_path(json, me, path, value, found, was_created) Wrapper to json_add_real_by_path where “path” is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_add_real_by_path~~CallsGraph proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path interface~to_unicode to_unicode proc~wrap_json_add_real_by_path->interface~to_unicode proc~json_add_real_by_path json_core%json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_real_by_path->none~create none~create_real~2 json_core%create_real proc~json_add_real_by_path->none~create_real~2 none~info~2 json_core%info proc~json_add_real_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_real_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_real_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_real_by_path->proc~json_value_replace proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_real32 json_core%json_value_create_real32 none~create_real~2->proc~json_value_create_real32 proc~wrap_json_value_create_real32 json_core%wrap_json_value_create_real32 none~create_real~2->proc~wrap_json_value_create_real32 proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_create_real32->none~create_real~2 none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_real32->interface~to_unicode proc~wrap_json_value_create_real32->none~create_real~2 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_add_real_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % json_add_real_by_path ( me , to_unicode ( path ), value , found , was_created ) end subroutine wrap_json_add_real_by_path","tags":"","loc":"proc/wrap_json_add_real_by_path.html"},{"title":"wrap_json_add_real_vec_by_path – JSON-Fortran","text":"private subroutine wrap_json_add_real_vec_by_path(json, me, path, value, found, was_created) Wrapper for json_add_real_vec_by_path where “path” is kind=CDK). Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_add_real_vec_by_path~~CallsGraph proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path interface~to_unicode to_unicode proc~wrap_json_add_real_vec_by_path->interface~to_unicode proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add~4 json_core%add proc~json_add_real_vec_by_path->none~add~4 none~create json_core%create proc~json_add_real_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_real_vec_by_path->none~create_array none~info~2 json_core%info proc~json_add_real_vec_by_path->none~info~2 proc~json_value_replace json_core%json_value_replace proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index none~throw_exception json_core%throw_exception proc~json_create_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_create_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->proc~json_value_replace proc~convert->none~throw_exception none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_add_real_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % json_add_real_vec_by_path ( me , to_unicode ( path ), value , found , was_created ) end subroutine wrap_json_add_real_vec_by_path","tags":"","loc":"proc/wrap_json_add_real_vec_by_path.html"},{"title":"wrap_json_add_string_by_path – JSON-Fortran","text":"private subroutine wrap_json_add_string_by_path(json, me, path, value, found, was_created, trim_str, adjustl_str) Wrapper to json_add_string_by_path where “path” is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element Calls proc~~wrap_json_add_string_by_path~~CallsGraph proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path interface~to_unicode to_unicode proc~wrap_json_add_string_by_path->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_create json_value_create proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_add_string_by_path ( json , me , path , value , found ,& was_created , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element call json % json_add_string_by_path ( me , to_unicode ( path ), to_unicode ( value ),& found , was_created , trim_str , adjustl_str ) end subroutine wrap_json_add_string_by_path","tags":"","loc":"proc/wrap_json_add_string_by_path.html"},{"title":"wrap_json_add_string_vec_by_path – JSON-Fortran","text":"private subroutine wrap_json_add_string_vec_by_path(json, me, path, value, found, was_created, ilen, trim_str, adjustl_str) Wrapper for json_add_string_vec_by_path where “path” and “value” are kind=CDK). Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element Calls proc~~wrap_json_add_string_vec_by_path~~CallsGraph proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path interface~to_unicode to_unicode proc~wrap_json_add_string_vec_by_path->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 none~create json_core%create proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array none~info~2 json_core%info proc~json_add_string_vec_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_vec_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_add_string_vec_by_path ( json , me , path , value ,& found , was_created , ilen ,& trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created integer ( IK ), dimension (:), intent ( in ), optional :: ilen !! the string lengths of each !! element in `value`. If not present, !! the full `len(value)` string is added !! for each element. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element call json % json_add_string_vec_by_path ( me , to_unicode ( path ), to_unicode ( value ),& found , was_created , ilen , trim_str , adjustl_str ) end subroutine wrap_json_add_string_vec_by_path","tags":"","loc":"proc/wrap_json_add_string_vec_by_path.html"},{"title":"wrap_json_create_by_path – JSON-Fortran","text":"private subroutine wrap_json_create_by_path(json, me, path, p, found, was_created) Alternate version of json_create_by_path where “path” is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CDK, len=*), intent(in) :: path path to the variable type( json_value ), intent(out), optional, pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if there were no errors\n(variable found or created) logical(kind=LK), intent(out), optional :: was_created true if it was actually created\n(as opposed to already being there) Calls proc~~wrap_json_create_by_path~~CallsGraph proc~wrap_json_create_by_path json_core%wrap_json_create_by_path interface~to_unicode to_unicode proc~wrap_json_create_by_path->interface~to_unicode none~create json_core%create proc~wrap_json_create_by_path->none~create proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create->proc~wrap_json_create_by_path proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path none~throw_exception json_core%throw_exception proc~json_create_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_create_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode none~get~2 json_core%get proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 proc~json_info_by_path->none~get~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_create_by_path~~CalledByGraph proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create json_core%create proc~wrap_json_create_by_path->none~create none~create->proc~wrap_json_create_by_path proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_create_by_path ( json , me , path , p , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me !! a JSON linked list character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable type ( json_value ), pointer , intent ( out ), optional :: p !! pointer to the variable !! specify by `path` logical ( LK ), intent ( out ), optional :: found !! true if there were no errors !! (variable found or created) logical ( LK ), intent ( out ), optional :: was_created !! true if it was actually created !! (as opposed to already being there) call json % create ( me , to_unicode ( path ), p , found , was_created ) end subroutine wrap_json_create_by_path","tags":"","loc":"proc/wrap_json_create_by_path.html"},{"title":"wrap_json_get_alloc_string_vec_by_path – JSON-Fortran","text":"private subroutine wrap_json_get_alloc_string_vec_by_path(json, me, path, vec, ilen, found, default, default_ilen) Alternate version of json_get_alloc_string_vec_by_path , where “path” is kind=CDK Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default integer(kind=IK), intent(in), optional, dimension(:) :: default_ilen the actual\nlength of default Calls proc~~wrap_json_get_alloc_string_vec_by_path~~CallsGraph proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode none~get~2 json_core%get proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_get_alloc_string_vec_by_path~~CalledByGraph proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2 json_core%get proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_get_alloc_string_vec_by_path ( json , me , path , vec , ilen , found , default , default_ilen ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path character ( kind = CK , len = :), dimension (:), allocatable , intent ( out ) :: vec integer ( IK ), dimension (:), allocatable , intent ( out ) :: ilen !! the actual length !! of each character !! string in the array logical ( LK ), intent ( out ), optional :: found character ( kind = CK , len =* ), dimension (:), intent ( in ), optional :: default integer ( IK ), dimension (:), intent ( in ), optional :: default_ilen !! the actual !! length of `default` call json % get ( me , to_unicode ( path ), vec , ilen , found , default , default_ilen ) end subroutine wrap_json_get_alloc_string_vec_by_path","tags":"","loc":"proc/wrap_json_get_alloc_string_vec_by_path.html"},{"title":"wrap_json_get_array_by_path – JSON-Fortran","text":"private recursive subroutine wrap_json_get_array_by_path(json, me, path, array_callback, found) Alternate version of json_get_array_by_path , where “path” is kind=CDK Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path procedure( json_array_callback_func ) :: array_callback logical(kind=LK), intent(out), optional :: found Calls proc~~wrap_json_get_array_by_path~~CallsGraph proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path interface~to_unicode to_unicode proc~wrap_json_get_array_by_path->interface~to_unicode none~get~2 json_core%get proc~wrap_json_get_array_by_path->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get~2->proc~wrap_json_get_array_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_get_array_by_path~~CalledByGraph proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2 json_core%get proc~wrap_json_get_array_by_path->none~get~2 none~get~2->proc~wrap_json_get_array_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code recursive subroutine wrap_json_get_array_by_path ( json , me , path , array_callback , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path procedure ( json_array_callback_func ) :: array_callback logical ( LK ), intent ( out ), optional :: found call json % get ( me , to_unicode ( path ), array_callback , found ) end subroutine wrap_json_get_array_by_path","tags":"","loc":"proc/wrap_json_get_array_by_path.html"},{"title":"wrap_json_get_by_path – JSON-Fortran","text":"private subroutine wrap_json_get_by_path(json, me, path, p, found) Alternate version of json_get_by_path where “path” is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path type( json_value ), intent(out), pointer :: p logical(kind=LK), intent(out), optional :: found Calls proc~~wrap_json_get_by_path~~CallsGraph proc~wrap_json_get_by_path json_core%wrap_json_get_by_path interface~to_unicode to_unicode proc~wrap_json_get_by_path->interface~to_unicode none~get~2 json_core%get proc~wrap_json_get_by_path->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get~2->proc~wrap_json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_get_by_path~~CalledByGraph proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2 json_core%get proc~wrap_json_get_by_path->none~get~2 none~get~2->proc~wrap_json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_get_by_path ( json , me , path , p , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path type ( json_value ), pointer , intent ( out ) :: p logical ( LK ), intent ( out ), optional :: found call json % get ( me , to_unicode ( path ), p , found ) end subroutine wrap_json_get_by_path","tags":"","loc":"proc/wrap_json_get_by_path.html"},{"title":"wrap_json_get_integer_by_path – JSON-Fortran","text":"private subroutine wrap_json_get_integer_by_path(json, me, path, value, found, default) Alternate version of json_get_integer_by_path , where “path” is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path integer(kind=IK), intent(out) :: value logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(in), optional :: default default value if not found Calls proc~~wrap_json_get_integer_by_path~~CallsGraph proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path interface~to_unicode to_unicode proc~wrap_json_get_integer_by_path->interface~to_unicode none~get~2 json_core%get proc~wrap_json_get_integer_by_path->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get~2->proc~wrap_json_get_integer_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_get_integer_by_path~~CalledByGraph proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2 json_core%get proc~wrap_json_get_integer_by_path->none~get~2 none~get~2->proc~wrap_json_get_integer_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_get_integer_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path integer ( IK ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found integer ( IK ), intent ( in ), optional :: default !! default value if not found call json % get ( me , to_unicode ( path ), value , found , default ) end subroutine wrap_json_get_integer_by_path","tags":"","loc":"proc/wrap_json_get_integer_by_path.html"},{"title":"wrap_json_get_integer_vec_by_path – JSON-Fortran","text":"private subroutine wrap_json_get_integer_vec_by_path(json, me, path, vec, found, default) Alternate version of json_get_integer_vec_by_path , where “path” is kind=CDK Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path integer(kind=IK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(in), optional, dimension(:) :: default default value if not found Calls proc~~wrap_json_get_integer_vec_by_path~~CallsGraph proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path interface~to_unicode to_unicode proc~wrap_json_get_integer_vec_by_path->interface~to_unicode none~get~2 json_core%get proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get~2->proc~wrap_json_get_integer_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_get_integer_vec_by_path~~CalledByGraph proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2 json_core%get proc~wrap_json_get_integer_vec_by_path->none~get~2 none~get~2->proc~wrap_json_get_integer_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_get_integer_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CDK , len =* ), intent ( in ) :: path integer ( IK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found integer ( IK ), dimension (:), intent ( in ), optional :: default !! default value if not found call json % get ( me , path = to_unicode ( path ), vec = vec , found = found , default = default ) end subroutine wrap_json_get_integer_vec_by_path","tags":"","loc":"proc/wrap_json_get_integer_vec_by_path.html"},{"title":"wrap_json_get_logical_by_path – JSON-Fortran","text":"private subroutine wrap_json_get_logical_by_path(json, me, path, value, found, default) Alternate version of json_get_logical_by_path , where “path” is kind=CDK Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path logical(kind=LK), intent(out) :: value logical(kind=LK), intent(out), optional :: found logical(kind=LK), intent(in), optional :: default default value if not found Calls proc~~wrap_json_get_logical_by_path~~CallsGraph proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path interface~to_unicode to_unicode proc~wrap_json_get_logical_by_path->interface~to_unicode none~get~2 json_core%get proc~wrap_json_get_logical_by_path->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get~2->proc~wrap_json_get_logical_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_get_logical_by_path~~CalledByGraph proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2 json_core%get proc~wrap_json_get_logical_by_path->none~get~2 none~get~2->proc~wrap_json_get_logical_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_get_logical_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path logical ( LK ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found logical ( LK ), intent ( in ), optional :: default !! default value if not found call json % get ( me , to_unicode ( path ), value , found , default ) end subroutine wrap_json_get_logical_by_path","tags":"","loc":"proc/wrap_json_get_logical_by_path.html"},{"title":"wrap_json_get_logical_vec_by_path – JSON-Fortran","text":"private subroutine wrap_json_get_logical_vec_by_path(json, me, path, vec, found, default) Alternate version of json_get_logical_vec_by_path , where “path” is kind=CDK Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path logical(kind=LK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found logical(kind=LK), intent(in), optional, dimension(:) :: default Calls proc~~wrap_json_get_logical_vec_by_path~~CallsGraph proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path interface~to_unicode to_unicode proc~wrap_json_get_logical_vec_by_path->interface~to_unicode none~get~2 json_core%get proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get~2->proc~wrap_json_get_logical_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_get_logical_vec_by_path~~CalledByGraph proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2 json_core%get proc~wrap_json_get_logical_vec_by_path->none~get~2 none~get~2->proc~wrap_json_get_logical_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_get_logical_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path logical ( LK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found logical ( LK ), dimension (:), intent ( in ), optional :: default call json % get ( me , to_unicode ( path ), vec , found , default ) end subroutine wrap_json_get_logical_vec_by_path","tags":"","loc":"proc/wrap_json_get_logical_vec_by_path.html"},{"title":"wrap_json_get_path – JSON-Fortran","text":"private subroutine wrap_json_get_path(json, p, path, found, use_alt_array_tokens, path_sep) Wrapper for json_get_path where “path” and “path_sep” are kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list object character(kind=CDK, len=:), intent(out), allocatable :: path path to the variable logical(kind=LK), intent(out), optional :: found true if there were no problems logical(kind=LK), intent(in), optional :: use_alt_array_tokens if true, then ‘()’ are used\nfor array elements otherwise,\n‘[]’ are used [default] character(kind=CDK, len=1), intent(in), optional :: path_sep character to use for path\nseparator (default is ‘.’) Calls proc~~wrap_json_get_path~~CallsGraph proc~wrap_json_get_path json_core%wrap_json_get_path interface~to_unicode to_unicode proc~wrap_json_get_path->interface~to_unicode none~get_path json_core%get_path proc~wrap_json_get_path->none~get_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get_path->proc~wrap_json_get_path proc~json_get_path json_core%json_get_path none~get_path->proc~json_get_path none~info~2 json_core%info proc~json_get_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_get_path->none~throw_exception proc~encode_rfc6901 encode_rfc6901 proc~json_get_path->proc~encode_rfc6901 proc~integer_to_string integer_to_string proc~json_get_path->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_path->proc~json_clear_exceptions proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~replace_string replace_string proc~encode_rfc6901->proc~replace_string proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_get_path~~CalledByGraph proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path json_core%get_path proc~wrap_json_get_path->none~get_path none~get_path->proc~wrap_json_get_path proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_get_path ( json , p , path , found , use_alt_array_tokens , path_sep ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! a JSON linked list object character ( kind = CDK , len = :), allocatable , intent ( out ) :: path !! path to the variable logical ( LK ), intent ( out ), optional :: found !! true if there were no problems logical ( LK ), intent ( in ), optional :: use_alt_array_tokens !! if true, then '()' are used !! for array elements otherwise, !! '[]' are used [default] character ( kind = CDK , len = 1 ), intent ( in ), optional :: path_sep !! character to use for path !! separator (default is '.') character ( kind = CK , len = :), allocatable :: ck_path !! path to the variable ! call the main routine: if ( present ( path_sep )) then call json % get_path ( p , ck_path , found , use_alt_array_tokens , to_unicode ( path_sep )) else call json % get_path ( p , ck_path , found , use_alt_array_tokens ) end if ! from unicode: path = ck_path end subroutine wrap_json_get_path","tags":"","loc":"proc/wrap_json_get_path.html"},{"title":"wrap_json_get_real32_by_path – JSON-Fortran","text":"private subroutine wrap_json_get_real32_by_path(json, me, path, value, found, default) Alternate version of json_get_real32_by_path , where “path” is kind=CDK Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path real(kind=real32), intent(out) :: value logical(kind=LK), intent(out), optional :: found real(kind=real32), intent(in), optional :: default default value if not found Calls proc~~wrap_json_get_real32_by_path~~CallsGraph proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path interface~to_unicode to_unicode proc~wrap_json_get_real32_by_path->interface~to_unicode none~get~2 json_core%get proc~wrap_json_get_real32_by_path->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get~2->proc~wrap_json_get_real32_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_get_real32_by_path~~CalledByGraph proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2 json_core%get proc~wrap_json_get_real32_by_path->none~get~2 none~get~2->proc~wrap_json_get_real32_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_get_real32_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CDK , len =* ), intent ( in ) :: path real ( real32 ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found real ( real32 ), intent ( in ), optional :: default !! default value if not found call json % get ( me , to_unicode ( path ), value , found , default ) end subroutine wrap_json_get_real32_by_path","tags":"","loc":"proc/wrap_json_get_real32_by_path.html"},{"title":"wrap_json_get_real32_vec_by_path – JSON-Fortran","text":"private subroutine wrap_json_get_real32_vec_by_path(json, me, path, vec, found, default) Alternate version of json_get_real32_vec_by_path , where “path” is kind=CDK Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path real(kind=real32), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found real(kind=real32), intent(in), optional, dimension(:) :: default default value if not found Calls proc~~wrap_json_get_real32_vec_by_path~~CallsGraph proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path interface~to_unicode to_unicode proc~wrap_json_get_real32_vec_by_path->interface~to_unicode none~get~2 json_core%get proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get~2->proc~wrap_json_get_real32_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_get_real32_vec_by_path~~CalledByGraph proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2 json_core%get proc~wrap_json_get_real32_vec_by_path->none~get~2 none~get~2->proc~wrap_json_get_real32_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_get_real32_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CDK , len =* ), intent ( in ) :: path real ( real32 ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found real ( real32 ), dimension (:), intent ( in ), optional :: default !! default value if not found call json % get ( me , to_unicode ( path ), vec , found , default ) end subroutine wrap_json_get_real32_vec_by_path","tags":"","loc":"proc/wrap_json_get_real32_vec_by_path.html"},{"title":"wrap_json_get_real_by_path – JSON-Fortran","text":"private subroutine wrap_json_get_real_by_path(json, me, path, value, found, default) Alternate version of json_get_real_by_path , where “path” is kind=CDK Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path real(kind=RK), intent(out) :: value logical(kind=LK), intent(out), optional :: found real(kind=RK), intent(in), optional :: default default value if not found Calls proc~~wrap_json_get_real_by_path~~CallsGraph proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path interface~to_unicode to_unicode proc~wrap_json_get_real_by_path->interface~to_unicode none~get~2 json_core%get proc~wrap_json_get_real_by_path->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get~2->proc~wrap_json_get_real_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_get_real_by_path~~CalledByGraph proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2 json_core%get proc~wrap_json_get_real_by_path->none~get~2 none~get~2->proc~wrap_json_get_real_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_get_real_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CDK , len =* ), intent ( in ) :: path real ( RK ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found real ( RK ), intent ( in ), optional :: default !! default value if not found call json % get ( me , to_unicode ( path ), value , found , default ) end subroutine wrap_json_get_real_by_path","tags":"","loc":"proc/wrap_json_get_real_by_path.html"},{"title":"wrap_json_get_real_vec_by_path – JSON-Fortran","text":"private subroutine wrap_json_get_real_vec_by_path(json, me, path, vec, found, default) Alternate version of json_get_real_vec_by_path , where “path” is kind=CDK Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path real(kind=RK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found real(kind=RK), intent(in), optional, dimension(:) :: default default value if not found Calls proc~~wrap_json_get_real_vec_by_path~~CallsGraph proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path interface~to_unicode to_unicode proc~wrap_json_get_real_vec_by_path->interface~to_unicode none~get~2 json_core%get proc~wrap_json_get_real_vec_by_path->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get~2->proc~wrap_json_get_real_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_get_real_vec_by_path~~CalledByGraph proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2 json_core%get proc~wrap_json_get_real_vec_by_path->none~get~2 none~get~2->proc~wrap_json_get_real_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_get_real_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CDK , len =* ), intent ( in ) :: path real ( RK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found real ( RK ), dimension (:), intent ( in ), optional :: default !! default value if not found call json % get ( me , to_unicode ( path ), vec , found , default ) end subroutine wrap_json_get_real_vec_by_path","tags":"","loc":"proc/wrap_json_get_real_vec_by_path.html"},{"title":"wrap_json_get_string_by_path – JSON-Fortran","text":"private subroutine wrap_json_get_string_by_path(json, me, path, value, found, default) Alternate version of json_get_string_by_path , where “path” is kind=CDK Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=:), intent(out), allocatable :: value logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional :: default Calls proc~~wrap_json_get_string_by_path~~CallsGraph proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path interface~to_unicode to_unicode proc~wrap_json_get_string_by_path->interface~to_unicode none~get~2 json_core%get proc~wrap_json_get_string_by_path->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get~2->proc~wrap_json_get_string_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_get_string_by_path~~CalledByGraph proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2 json_core%get proc~wrap_json_get_string_by_path->none~get~2 none~get~2->proc~wrap_json_get_string_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_get_string_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path character ( kind = CK , len = :), allocatable , intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found character ( kind = CK , len =* ), intent ( in ), optional :: default call json % get ( me , to_unicode ( path ), value , found , default ) end subroutine wrap_json_get_string_by_path","tags":"","loc":"proc/wrap_json_get_string_by_path.html"},{"title":"wrap_json_get_string_vec_by_path – JSON-Fortran","text":"private subroutine wrap_json_get_string_vec_by_path(json, me, path, vec, found, default) Alternate version of json_get_string_vec_by_path , where “path” is kind=CDK Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default Calls proc~~wrap_json_get_string_vec_by_path~~CallsGraph proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path interface~to_unicode to_unicode proc~wrap_json_get_string_vec_by_path->interface~to_unicode none~get~2 json_core%get proc~wrap_json_get_string_vec_by_path->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_get_string_vec_by_path~~CalledByGraph proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2 json_core%get proc~wrap_json_get_string_vec_by_path->none~get~2 none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_get_string_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path character ( kind = CK , len =* ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found character ( kind = CK , len =* ), dimension (:), intent ( in ), optional :: default call json % get ( me , to_unicode ( path ), vec , found , default ) end subroutine wrap_json_get_string_vec_by_path","tags":"","loc":"proc/wrap_json_get_string_vec_by_path.html"},{"title":"wrap_json_info_by_path – JSON-Fortran","text":"private subroutine wrap_json_info_by_path(json, p, path, found, var_type, n_children, name) Alternate version of json_info_by_path where “path” is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list character(kind=CDK, len=*), intent(in) :: path path to the variable logical(kind=LK), intent(out), optional :: found true if it was found integer(kind=IK), intent(out), optional :: var_type variable type integer(kind=IK), intent(out), optional :: n_children number of children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name Calls proc~~wrap_json_info_by_path~~CallsGraph proc~wrap_json_info_by_path json_core%wrap_json_info_by_path interface~to_unicode to_unicode proc~wrap_json_info_by_path->interface~to_unicode none~info~2 json_core%info proc~wrap_json_info_by_path->none~info~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~info~2->proc~wrap_json_info_by_path proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path none~throw_exception json_core%throw_exception proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_info_by_path~~CalledByGraph proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2 json_core%info proc~wrap_json_info_by_path->none~info~2 none~info~2->proc~wrap_json_info_by_path proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info json_core%json_matrix_info proc~json_matrix_info->none~info~2 none~get_child json_core%get_child proc~json_matrix_info->none~get_child proc~json_string_info json_core%json_string_info proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 none~get_path json_core%get_path none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~matrix_info~2 json_core%matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~string_info json_core%string_info none~string_info->proc~json_string_info proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_path proc~json_check_children_for_duplicate_keys->none~get_child proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec->none~get~2 proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_matrix_info_by_path->none~get~2 proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_variable_info->none~info proc~wrap_json_get_path->none~get_path proc~wrap_json_matrix_info_by_path->none~matrix_info~2 none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2->proc~json_get_alloc_string_vec none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~insert_after->proc~json_value_insert_after_child_by_index none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_value_replace->none~insert_after proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_info_by_path ( json , p , path , found , var_type , n_children , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! a JSON linked list character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable logical ( LK ), intent ( out ), optional :: found !! true if it was found integer ( IK ), intent ( out ), optional :: var_type !! variable type integer ( IK ), intent ( out ), optional :: n_children !! number of children character ( kind = CK , len = :), allocatable , intent ( out ), optional :: name !! variable name call json % info ( p , to_unicode ( path ), found , var_type , n_children , name ) end subroutine wrap_json_info_by_path","tags":"","loc":"proc/wrap_json_info_by_path.html"},{"title":"wrap_json_matrix_info_by_path – JSON-Fortran","text":"private subroutine wrap_json_matrix_info_by_path(json, p, path, is_matrix, found, var_type, n_sets, set_size, name) Alternate version of json_matrix_info_by_path where “path” is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a JSON linked list 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\nthe matrix (if all elements have\nthe same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name Calls proc~~wrap_json_matrix_info_by_path~~CallsGraph proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path interface~to_unicode to_unicode proc~wrap_json_matrix_info_by_path->interface~to_unicode none~matrix_info~2 json_core%matrix_info proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~matrix_info~2->proc~wrap_json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path none~get_child json_core%get_child proc~json_matrix_info->none~get_child none~info~2 json_core%info proc~json_matrix_info->none~info~2 none~throw_exception json_core%throw_exception proc~json_matrix_info->none~throw_exception proc~json_matrix_info_by_path->none~matrix_info~2 none~get~2 json_core%get proc~json_matrix_info_by_path->none~get~2 proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_matrix_info_by_path->proc~json_clear_exceptions proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~get_child proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~convert->none~info~2 proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_matrix_info_by_path~~CalledByGraph proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2 json_core%matrix_info proc~wrap_json_matrix_info_by_path->none~matrix_info~2 none~matrix_info~2->proc~wrap_json_matrix_info_by_path proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_matrix_info_by_path->none~matrix_info~2 none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info->none~matrix_info Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_matrix_info_by_path ( json , p , path , is_matrix , found ,& var_type , n_sets , set_size , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! a JSON linked list 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 json % matrix_info ( p , to_unicode ( path ), is_matrix , found , var_type , n_sets , set_size , name ) end subroutine wrap_json_matrix_info_by_path","tags":"","loc":"proc/wrap_json_matrix_info_by_path.html"},{"title":"wrap_json_parse_string – JSON-Fortran","text":"private subroutine wrap_json_parse_string(json, p, str) Alternate version of json_parse_string , where str is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p output structure character(kind=CDK, len=*), intent(in) :: str string with JSON data Calls proc~~wrap_json_parse_string~~CallsGraph proc~wrap_json_parse_string json_core%wrap_json_parse_string interface~to_unicode to_unicode proc~wrap_json_parse_string->interface~to_unicode none~deserialize~2 json_core%deserialize proc~wrap_json_parse_string->none~deserialize~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~deserialize~2->proc~wrap_json_parse_string proc~json_parse_string json_core%json_parse_string none~deserialize~2->proc~json_parse_string none~throw_exception json_core%throw_exception proc~json_parse_string->none~throw_exception proc~annotate_invalid_json json_core%annotate_invalid_json proc~json_parse_string->proc~annotate_invalid_json proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_initialize json_core%json_initialize proc~json_parse_string->proc~json_initialize proc~json_parse_end json_core%json_parse_end proc~json_parse_string->proc~json_parse_end proc~json_prepare_parser json_core%json_prepare_parser proc~json_parse_string->proc~json_prepare_parser proc~json_value_create json_value_create proc~json_parse_string->proc~json_value_create proc~parse_value json_core%parse_value proc~json_parse_string->proc~parse_value proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~get_current_line_from_file_sequential json_core%get_current_line_from_file_sequential proc~annotate_invalid_json->proc~get_current_line_from_file_sequential proc~get_current_line_from_file_stream json_core%get_current_line_from_file_stream proc~annotate_invalid_json->proc~get_current_line_from_file_stream proc~integer_to_string integer_to_string proc~annotate_invalid_json->proc~integer_to_string proc~json_traverse json_core%json_traverse proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_initialize->none~throw_exception proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions proc~json_parse_end->none~throw_exception proc~pop_char json_core%pop_char proc~json_parse_end->proc~pop_char proc~parse_value->none~throw_exception proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_for_chars json_core%parse_for_chars proc~parse_value->proc~parse_for_chars proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~parse_string json_core%parse_string proc~parse_value->proc~parse_string proc~parse_value->proc~pop_char proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~to_array json_core%to_array proc~parse_value->proc~to_array proc~to_logical json_core%to_logical proc~parse_value->proc~to_logical proc~to_null json_core%to_null proc~parse_value->proc~to_null proc~to_object json_core%to_object proc~parse_value->proc~to_object proc~to_string json_core%to_string proc~parse_value->proc~to_string proc~json_traverse->none~throw_exception proc~parse_array->none~throw_exception proc~parse_array->proc~json_value_create proc~parse_array->proc~parse_value proc~parse_array->proc~pop_char none~add~4 json_core%add proc~parse_array->none~add~4 none~destroy~3 json_core%destroy proc~parse_array->none~destroy~3 proc~parse_for_chars->none~throw_exception proc~parse_for_chars->proc~pop_char proc~parse_number->proc~json_clear_exceptions proc~parse_number->proc~pop_char proc~parse_number->proc~push_char proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real proc~parse_object->none~throw_exception proc~parse_object->proc~json_value_create proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~pop_char proc~parse_object->none~add~4 proc~parse_object->none~destroy~3 proc~parse_string->none~throw_exception proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~push_char->none~throw_exception proc~push_char->proc~integer_to_string proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_logical->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_parse_string~~CalledByGraph proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2 json_core%deserialize proc~wrap_json_parse_string->none~deserialize~2 none~deserialize~2->proc~wrap_json_parse_string proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_parse_string ( json , p , str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! output structure character ( kind = CDK , len =* ), intent ( in ) :: str !! string with JSON data call json % deserialize ( p , to_unicode ( str )) end subroutine wrap_json_parse_string","tags":"","loc":"proc/wrap_json_parse_string.html"},{"title":"wrap_json_rename_by_path – JSON-Fortran","text":"private subroutine wrap_json_rename_by_path(json, me, path, name, found) Alternate version of json_rename_by_path , where “path” and “name” are kind=CDK Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CDK, len=*), intent(in) :: name logical(kind=LK), intent(out), optional :: found Calls proc~~wrap_json_rename_by_path~~CallsGraph proc~wrap_json_rename_by_path json_core%wrap_json_rename_by_path interface~to_unicode to_unicode proc~wrap_json_rename_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_rename_by_path ( json , me , path , name , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path character ( kind = CDK , len =* ), intent ( in ) :: name logical ( LK ), intent ( out ), optional :: found call json % rename ( me , to_unicode ( path ), to_unicode ( name ), found ) end subroutine wrap_json_rename_by_path","tags":"","loc":"proc/wrap_json_rename_by_path.html"},{"title":"wrap_json_throw_exception – JSON-Fortran","text":"private subroutine wrap_json_throw_exception(json, msg, found) Alternate version of json_throw_exception , where msg is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CDK, len=*), intent(in) :: msg the error message logical(kind=LK), intent(inout), optional :: found if the caller is handling the\nexception with an optimal return\nargument. If so, json%stop_on_error is ignored. Calls proc~~wrap_json_throw_exception~~CallsGraph proc~wrap_json_throw_exception json_core%wrap_json_throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode none~throw_exception json_core%throw_exception proc~wrap_json_throw_exception->none~throw_exception proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~throw_exception->proc~wrap_json_throw_exception proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_throw_exception~~CalledByGraph proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception json_core%throw_exception proc~wrap_json_throw_exception->none~throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~convert json_core%convert proc~convert->none~throw_exception none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~throw_exception none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~throw_exception proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~throw_exception proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~throw_exception proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~throw_exception proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~throw_exception none~get_child json_core%get_child proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_count json_core%json_count proc~json_count->none~throw_exception proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->none~throw_exception proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_file_move_pointer json_file%json_file_move_pointer proc~json_file_move_pointer->none~throw_exception none~initialize json_file%initialize proc~json_file_move_pointer->none~initialize proc~json_file_print_to_unit json_file%json_file_print_to_unit proc~json_file_print_to_unit->none~throw_exception proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path proc~json_get_alloc_string_vec_by_path->none~throw_exception none~get~2 json_core%get proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array json_core%json_get_array proc~json_get_array->none~throw_exception proc~json_get_array_by_path json_core%json_get_array_by_path proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->none~get_child proc~json_get_integer json_core%json_get_integer proc~json_get_integer->none~throw_exception proc~json_get_integer_by_path json_core%json_get_integer_by_path proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical json_core%json_get_logical proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path json_core%json_get_logical_by_path proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_next json_core%json_get_next proc~json_get_next->none~throw_exception proc~json_get_parent json_core%json_get_parent proc~json_get_parent->none~throw_exception proc~json_get_path json_core%json_get_path proc~json_get_path->none~throw_exception proc~json_get_path->none~info~2 proc~json_get_previous json_core%json_get_previous proc~json_get_previous->none~throw_exception proc~json_get_real json_core%json_get_real proc~json_get_real->none~throw_exception proc~json_get_real_by_path json_core%json_get_real_by_path proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string json_core%json_get_string proc~json_get_string->none~throw_exception proc~json_get_string_by_path json_core%json_get_string_by_path proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->none~get~2 proc~json_get_tail json_core%json_get_tail proc~json_get_tail->none~throw_exception proc~json_info json_core%json_info proc~json_info->none~throw_exception proc~json_initialize json_core%json_initialize proc~json_initialize->none~throw_exception proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~throw_exception proc~json_is_vector->none~info~2 proc~json_matrix_info json_core%json_matrix_info proc~json_matrix_info->none~throw_exception proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_parse_end json_core%json_parse_end proc~json_parse_end->none~throw_exception proc~json_parse_file json_core%json_parse_file proc~json_parse_file->none~throw_exception proc~json_parse_file->proc~json_initialize proc~json_parse_file->proc~json_parse_end proc~parse_value json_core%parse_value proc~json_parse_file->proc~parse_value proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_file->proc~json_check_all_for_duplicate_keys proc~json_parse_string json_core%json_parse_string proc~json_parse_string->none~throw_exception proc~json_parse_string->proc~json_initialize proc~json_parse_string->proc~json_parse_end proc~json_parse_string->proc~parse_value proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_print_to_filename json_core%json_print_to_filename proc~json_print_to_filename->none~throw_exception proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->none~throw_exception proc~json_value_print json_core%json_value_print proc~json_print_to_unit->proc~json_value_print proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~throw_exception proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~throw_exception proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_traverse json_core%json_traverse proc~json_traverse->none~throw_exception proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~throw_exception proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~throw_exception proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~throw_exception proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~throw_exception proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~throw_exception proc~json_value_add_member->none~info~2 proc~json_value_get_child json_core%json_value_get_child proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index json_core%json_value_get_child_by_index proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_name json_core%json_value_get_child_by_name proc~json_value_get_child_by_name->none~throw_exception proc~json_value_print->none~throw_exception proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~json_value_swap json_core%json_value_swap proc~json_value_swap->none~throw_exception proc~json_value_is_child_of json_core%json_value_is_child_of proc~json_value_swap->proc~json_value_is_child_of proc~json_value_validate json_core%json_value_validate proc~json_value_validate->none~throw_exception proc~json_value_validate->proc~json_check_all_for_duplicate_keys proc~parse_array json_core%parse_array proc~parse_array->none~throw_exception proc~parse_array->proc~parse_value proc~parse_for_chars json_core%parse_for_chars proc~parse_for_chars->none~throw_exception proc~parse_object json_core%parse_object proc~parse_object->none~throw_exception proc~parse_object->proc~parse_object proc~parse_string json_core%parse_string proc~parse_object->proc~parse_string proc~parse_object->proc~parse_value proc~parse_string->none~throw_exception proc~parse_value->none~throw_exception proc~parse_value->proc~parse_array proc~parse_value->proc~parse_for_chars proc~parse_value->proc~parse_object proc~parse_value->proc~parse_string proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~push_char->none~throw_exception proc~string_to_dble json_core%string_to_dble proc~string_to_dble->none~throw_exception proc~string_to_int json_core%string_to_int proc~string_to_int->none~throw_exception none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~get_child->proc~json_value_get_child none~get_child->proc~json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~get~2->proc~json_get_alloc_string_vec_by_path none~get~2->proc~json_get_array none~get~2->proc~json_get_array_by_path none~get~2->proc~json_get_by_path none~get~2->proc~json_get_integer none~get~2->proc~json_get_integer_by_path none~get~2->proc~json_get_integer_vec_by_path none~get~2->proc~json_get_logical none~get~2->proc~json_get_logical_by_path none~get~2->proc~json_get_logical_vec_by_path none~get~2->proc~json_get_real none~get~2->proc~json_get_real_by_path none~get~2->proc~json_get_real_vec_by_path none~get~2->proc~json_get_string none~get~2->proc~json_get_string_by_path none~get~2->proc~json_get_string_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~load~2 json_core%load none~load~2->proc~json_parse_file none~matrix_info~2 json_core%matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~string_info json_core%string_info none~string_info->proc~json_string_info proc~initialize_json_core initialize_json_core proc~initialize_json_core->proc~json_initialize proc~initialize_json_core_in_file json_file%initialize_json_core_in_file proc~initialize_json_core_in_file->proc~json_initialize proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_file_traverse json_file%json_file_traverse proc~json_file_traverse->proc~json_traverse proc~json_value_is_child_of->proc~json_traverse proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~parse_number->proc~push_char proc~parse_number->proc~string_to_dble proc~parse_number->proc~string_to_int proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path interface~json_core json_core interface~json_core->proc~initialize_json_core none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~initialize->proc~initialize_json_core_in_file proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_alloc_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~string_info proc~json_get_integer_vec->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path->none~get~2 proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_path->none~get_path proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_parse_string->none~deserialize~2 proc~wrap_json_value_get_child_by_name->none~get~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~initialize_json_file initialize_json_file proc~initialize_json_file->none~initialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~initialize proc~initialize_json_file_from_string->none~deserialize proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path interface~json_file json_file interface~json_file->proc~initialize_json_file interface~json_file->proc~initialize_json_file_from_string proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string_v2->none~deserialize proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_value_replace->none~insert_after proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_file_load_from_string->none~deserialize proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_throw_exception ( json , msg , found ) implicit none class ( json_core ), intent ( inout ) :: json character ( kind = CDK , len =* ), intent ( in ) :: msg !! the error message logical ( LK ), intent ( inout ), optional :: found !! if the caller is handling the !! exception with an optimal return !! argument. If so, `json%stop_on_error` !! is ignored. call json % throw_exception ( to_unicode ( msg ), found ) end subroutine wrap_json_throw_exception","tags":"","loc":"proc/wrap_json_throw_exception.html"},{"title":"wrap_json_update_integer – JSON-Fortran","text":"private subroutine wrap_json_update_integer(json, p, path, val, found) Alternate version of json_update_integer , where path is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure integer(kind=IK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. Calls proc~~wrap_json_update_integer~~CallsGraph proc~wrap_json_update_integer json_core%wrap_json_update_integer interface~to_unicode to_unicode proc~wrap_json_update_integer->interface~to_unicode none~update~4 json_core%update proc~wrap_json_update_integer->none~update~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_update_string_name_ascii json_core%json_update_string_name_ascii none~update~4->proc~json_update_string_name_ascii proc~json_update_string_val_ascii json_core%json_update_string_val_ascii none~update~4->proc~json_update_string_val_ascii proc~json_update_string_name_ascii->interface~to_unicode proc~json_update_string_name_ascii->none~update~4 proc~json_update_string_val_ascii->interface~to_unicode proc~json_update_string_val_ascii->none~update~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_update_integer ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable in the structure integer ( IK ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. call json % update ( p , to_unicode ( path ), val , found ) end subroutine wrap_json_update_integer","tags":"","loc":"proc/wrap_json_update_integer.html"},{"title":"wrap_json_update_logical – JSON-Fortran","text":"private subroutine wrap_json_update_logical(json, p, path, val, found) Alternate version of json_update_logical , where path is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure logical(kind=LK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. Calls proc~~wrap_json_update_logical~~CallsGraph proc~wrap_json_update_logical json_core%wrap_json_update_logical interface~to_unicode to_unicode proc~wrap_json_update_logical->interface~to_unicode none~update~4 json_core%update proc~wrap_json_update_logical->none~update~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_update_string_name_ascii json_core%json_update_string_name_ascii none~update~4->proc~json_update_string_name_ascii proc~json_update_string_val_ascii json_core%json_update_string_val_ascii none~update~4->proc~json_update_string_val_ascii proc~json_update_string_name_ascii->interface~to_unicode proc~json_update_string_name_ascii->none~update~4 proc~json_update_string_val_ascii->interface~to_unicode proc~json_update_string_val_ascii->none~update~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_update_logical ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable in the structure logical ( LK ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. call json % update ( p , to_unicode ( path ), val , found ) end subroutine wrap_json_update_logical","tags":"","loc":"proc/wrap_json_update_logical.html"},{"title":"wrap_json_update_real – JSON-Fortran","text":"private subroutine wrap_json_update_real(json, p, path, val, found) Alternate version of json_update_real , where path is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure real(kind=RK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. Calls proc~~wrap_json_update_real~~CallsGraph proc~wrap_json_update_real json_core%wrap_json_update_real interface~to_unicode to_unicode proc~wrap_json_update_real->interface~to_unicode none~update~4 json_core%update proc~wrap_json_update_real->none~update~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_update_string_name_ascii json_core%json_update_string_name_ascii none~update~4->proc~json_update_string_name_ascii proc~json_update_string_val_ascii json_core%json_update_string_val_ascii none~update~4->proc~json_update_string_val_ascii proc~json_update_string_name_ascii->interface~to_unicode proc~json_update_string_name_ascii->none~update~4 proc~json_update_string_val_ascii->interface~to_unicode proc~json_update_string_val_ascii->none~update~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_update_real ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable in the structure real ( RK ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. call json % update ( p , to_unicode ( path ), val , found ) end subroutine wrap_json_update_real","tags":"","loc":"proc/wrap_json_update_real.html"},{"title":"wrap_json_update_real32 – JSON-Fortran","text":"private subroutine wrap_json_update_real32(json, p, path, val, found) Alternate version of json_update_real32 , where path is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure real(kind=real32), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. Calls proc~~wrap_json_update_real32~~CallsGraph proc~wrap_json_update_real32 json_core%wrap_json_update_real32 interface~to_unicode to_unicode proc~wrap_json_update_real32->interface~to_unicode none~update~4 json_core%update proc~wrap_json_update_real32->none~update~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_update_string_name_ascii json_core%json_update_string_name_ascii none~update~4->proc~json_update_string_name_ascii proc~json_update_string_val_ascii json_core%json_update_string_val_ascii none~update~4->proc~json_update_string_val_ascii proc~json_update_string_name_ascii->interface~to_unicode proc~json_update_string_name_ascii->none~update~4 proc~json_update_string_val_ascii->interface~to_unicode proc~json_update_string_val_ascii->none~update~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_update_real32 ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable in the structure real ( real32 ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. call json % update ( p , to_unicode ( path ), real ( val , RK ), found ) end subroutine wrap_json_update_real32","tags":"","loc":"proc/wrap_json_update_real32.html"},{"title":"wrap_json_update_string – JSON-Fortran","text":"private subroutine wrap_json_update_string(json, p, path, val, found, trim_str, adjustl_str) Alternate version of json_update_string , where path and value are kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure character(kind=CDK, len=*), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) Calls proc~~wrap_json_update_string~~CallsGraph proc~wrap_json_update_string json_core%wrap_json_update_string interface~to_unicode to_unicode proc~wrap_json_update_string->interface~to_unicode none~update~4 json_core%update proc~wrap_json_update_string->none~update~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_update_string_name_ascii json_core%json_update_string_name_ascii none~update~4->proc~json_update_string_name_ascii proc~json_update_string_val_ascii json_core%json_update_string_val_ascii none~update~4->proc~json_update_string_val_ascii proc~json_update_string_name_ascii->interface~to_unicode proc~json_update_string_name_ascii->none~update~4 proc~json_update_string_val_ascii->interface~to_unicode proc~json_update_string_val_ascii->none~update~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_update_string ( json , p , path , val , found , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable in the structure character ( kind = CDK , len =* ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` !! (only used if `val` is present) logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (only used if `val` is present) !! (note that ADJUSTL is done before TRIM) call json % update ( p , to_unicode ( path ), to_unicode ( val ), found , trim_str , adjustl_str ) end subroutine wrap_json_update_string","tags":"","loc":"proc/wrap_json_update_string.html"},{"title":"wrap_json_value_add_integer – JSON-Fortran","text":"private subroutine wrap_json_value_add_integer(json, p, name, val) Alternate version of json_value_add_integer where name is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable integer(kind=IK), intent(in) :: val value Calls proc~~wrap_json_value_add_integer~~CallsGraph proc~wrap_json_value_add_integer json_core%wrap_json_value_add_integer interface~to_unicode to_unicode proc~wrap_json_value_add_integer->interface~to_unicode none~add~4 json_core%add proc~wrap_json_value_add_integer->none~add~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_add_integer ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! name of the variable integer ( IK ), intent ( in ) :: val !! value call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_integer","tags":"","loc":"proc/wrap_json_value_add_integer.html"},{"title":"wrap_json_value_add_integer_vec – JSON-Fortran","text":"private subroutine wrap_json_value_add_integer_vec(json, p, name, val) Alternate version of json_value_add_integer_vec where name is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable integer(kind=IK), intent(in), dimension(:) :: val value Calls proc~~wrap_json_value_add_integer_vec~~CallsGraph proc~wrap_json_value_add_integer_vec json_core%wrap_json_value_add_integer_vec interface~to_unicode to_unicode proc~wrap_json_value_add_integer_vec->interface~to_unicode none~add~4 json_core%add proc~wrap_json_value_add_integer_vec->none~add~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_add_integer_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! name of the variable integer ( IK ), dimension (:), intent ( in ) :: val !! value call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_integer_vec","tags":"","loc":"proc/wrap_json_value_add_integer_vec.html"},{"title":"wrap_json_value_add_logical – JSON-Fortran","text":"private subroutine wrap_json_value_add_logical(json, p, name, val) Alternate version of json_value_add_logical where name is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable logical(kind=LK), intent(in) :: val value Calls proc~~wrap_json_value_add_logical~~CallsGraph proc~wrap_json_value_add_logical json_core%wrap_json_value_add_logical interface~to_unicode to_unicode proc~wrap_json_value_add_logical->interface~to_unicode none~add~4 json_core%add proc~wrap_json_value_add_logical->none~add~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_add_logical ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! name of the variable logical ( LK ), intent ( in ) :: val !! value call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_logical","tags":"","loc":"proc/wrap_json_value_add_logical.html"},{"title":"wrap_json_value_add_logical_vec – JSON-Fortran","text":"private subroutine wrap_json_value_add_logical_vec(json, p, name, val) Alternate version of json_value_add_logical_vec where name is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable logical(kind=LK), intent(in), dimension(:) :: val value Calls proc~~wrap_json_value_add_logical_vec~~CallsGraph proc~wrap_json_value_add_logical_vec json_core%wrap_json_value_add_logical_vec interface~to_unicode to_unicode proc~wrap_json_value_add_logical_vec->interface~to_unicode none~add~4 json_core%add proc~wrap_json_value_add_logical_vec->none~add~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_add_logical_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! name of the variable logical ( LK ), dimension (:), intent ( in ) :: val !! value call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_logical_vec","tags":"","loc":"proc/wrap_json_value_add_logical_vec.html"},{"title":"wrap_json_value_add_null – JSON-Fortran","text":"private subroutine wrap_json_value_add_null(json, p, name) Alternate version of json_value_add_null where name is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable Calls proc~~wrap_json_value_add_null~~CallsGraph proc~wrap_json_value_add_null json_core%wrap_json_value_add_null interface~to_unicode to_unicode proc~wrap_json_value_add_null->interface~to_unicode none~add~4 json_core%add proc~wrap_json_value_add_null->none~add~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_add_null ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! name of the variable call json % add ( p , to_unicode ( name )) end subroutine wrap_json_value_add_null","tags":"","loc":"proc/wrap_json_value_add_null.html"},{"title":"wrap_json_value_add_real – JSON-Fortran","text":"private subroutine wrap_json_value_add_real(json, p, name, val) Alternate version of json_value_add_real where name is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name variable name real(kind=RK), intent(in) :: val real value Calls proc~~wrap_json_value_add_real~~CallsGraph proc~wrap_json_value_add_real json_core%wrap_json_value_add_real interface~to_unicode to_unicode proc~wrap_json_value_add_real->interface~to_unicode none~add~4 json_core%add proc~wrap_json_value_add_real->none~add~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_add_real ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! variable name real ( RK ), intent ( in ) :: val !! real value call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_real","tags":"","loc":"proc/wrap_json_value_add_real.html"},{"title":"wrap_json_value_add_real32 – JSON-Fortran","text":"private subroutine wrap_json_value_add_real32(json, p, name, val) Alternate version of json_value_add_real32 where name is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name variable name real(kind=real32), intent(in) :: val real value Calls proc~~wrap_json_value_add_real32~~CallsGraph proc~wrap_json_value_add_real32 json_core%wrap_json_value_add_real32 interface~to_unicode to_unicode proc~wrap_json_value_add_real32->interface~to_unicode none~add~4 json_core%add proc~wrap_json_value_add_real32->none~add~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_add_real32 ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! variable name real ( real32 ), intent ( in ) :: val !! real value call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_real32","tags":"","loc":"proc/wrap_json_value_add_real32.html"},{"title":"wrap_json_value_add_real32_vec – JSON-Fortran","text":"private subroutine wrap_json_value_add_real32_vec(json, p, name, val) Alternate version of json_value_add_real32_vec where name is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name real(kind=real32), intent(in), dimension(:) :: val Calls proc~~wrap_json_value_add_real32_vec~~CallsGraph proc~wrap_json_value_add_real32_vec json_core%wrap_json_value_add_real32_vec interface~to_unicode to_unicode proc~wrap_json_value_add_real32_vec->interface~to_unicode none~add~4 json_core%add proc~wrap_json_value_add_real32_vec->none~add~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_add_real32_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name real ( real32 ), dimension (:), intent ( in ) :: val call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_real32_vec","tags":"","loc":"proc/wrap_json_value_add_real32_vec.html"},{"title":"wrap_json_value_add_real_vec – JSON-Fortran","text":"private subroutine wrap_json_value_add_real_vec(json, p, name, val) Alternate version of json_value_add_real_vec where name is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name real(kind=RK), intent(in), dimension(:) :: val Calls proc~~wrap_json_value_add_real_vec~~CallsGraph proc~wrap_json_value_add_real_vec json_core%wrap_json_value_add_real_vec interface~to_unicode to_unicode proc~wrap_json_value_add_real_vec->interface~to_unicode none~add~4 json_core%add proc~wrap_json_value_add_real_vec->none~add~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_add_real_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name real ( RK ), dimension (:), intent ( in ) :: val call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_real_vec","tags":"","loc":"proc/wrap_json_value_add_real_vec.html"},{"title":"wrap_json_value_add_string – JSON-Fortran","text":"private subroutine wrap_json_value_add_string(json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string where name and val are kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable character(kind=CDK, len=*), intent(in) :: val value logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val Calls proc~~wrap_json_value_add_string~~CallsGraph proc~wrap_json_value_add_string json_core%wrap_json_value_add_string interface~to_unicode to_unicode proc~wrap_json_value_add_string->interface~to_unicode none~add~4 json_core%add proc~wrap_json_value_add_string->none~add~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_add_string ( json , p , name , val , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! name of the variable character ( kind = CDK , len =* ), intent ( in ) :: val !! value logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` call json % add ( p , to_unicode ( name ), to_unicode ( val ), trim_str , adjustl_str ) end subroutine wrap_json_value_add_string","tags":"","loc":"proc/wrap_json_value_add_string.html"},{"title":"wrap_json_value_add_string_vec – JSON-Fortran","text":"private subroutine wrap_json_value_add_string_vec(json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string_vec where name and val are kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name character(kind=CDK, len=*), intent(in), dimension(:) :: val logical(kind=LK), intent(in), optional :: trim_str logical(kind=LK), intent(in), optional :: adjustl_str Calls proc~~wrap_json_value_add_string_vec~~CallsGraph proc~wrap_json_value_add_string_vec json_core%wrap_json_value_add_string_vec interface~to_unicode to_unicode proc~wrap_json_value_add_string_vec->interface~to_unicode none~add~4 json_core%add proc~wrap_json_value_add_string_vec->none~add~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_add_string_vec ( json , p , name , val , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name character ( kind = CDK , len =* ), dimension (:), intent ( in ) :: val logical ( LK ), intent ( in ), optional :: trim_str logical ( LK ), intent ( in ), optional :: adjustl_str call json % add ( p , to_unicode ( name ), to_unicode ( val ), trim_str , adjustl_str ) end subroutine wrap_json_value_add_string_vec","tags":"","loc":"proc/wrap_json_value_add_string_vec.html"},{"title":"wrap_json_value_create_array – JSON-Fortran","text":"private subroutine wrap_json_value_create_array(json, p, name) A wrapper for json_value_create_array so that create_array method may be\ncalled with an actual argument, corresponding to the dummy argument name ,\nthat is either of ‘DEFAULT’ or ‘ISO_10646’ character kind. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name Calls proc~~wrap_json_value_create_array~~CallsGraph proc~wrap_json_value_create_array json_core%wrap_json_value_create_array interface~to_unicode to_unicode proc~wrap_json_value_create_array->interface~to_unicode none~create_array json_core%create_array proc~wrap_json_value_create_array->none~create_array proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create_array->proc~wrap_json_value_create_array proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_value_create_array~~CalledByGraph proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array json_core%create_array proc~wrap_json_value_create_array->none~create_array none~create_array->proc~wrap_json_value_create_array proc~convert json_core%convert proc~convert->none~create_array none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create_array none~create json_core%create proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create_array proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create_array proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_integer_vec json_core%json_value_add_integer_vec proc~json_value_add_integer_vec->none~create_array proc~json_value_add_logical_vec json_core%json_value_add_logical_vec proc~json_value_add_logical_vec->none~create_array proc~json_value_add_real_vec json_core%json_value_add_real_vec proc~json_value_add_real_vec->none~create_array proc~json_value_add_string_vec json_core%json_value_add_string_vec proc~json_value_add_string_vec->none~create_array proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~convert none~get_child json_core%get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_create_array ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name call json % create_array ( p , to_unicode ( name )) end subroutine wrap_json_value_create_array","tags":"","loc":"proc/wrap_json_value_create_array.html"},{"title":"wrap_json_value_create_integer – JSON-Fortran","text":"private subroutine wrap_json_value_create_integer(json, p, val, name) A wrapper procedure for json_value_create_integer so that create_integer method may be called with either a ‘DEFAULT’ or ‘ISO_10646’ character kind name actual argument. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name Calls proc~~wrap_json_value_create_integer~~CallsGraph proc~wrap_json_value_create_integer json_core%wrap_json_value_create_integer interface~to_unicode to_unicode proc~wrap_json_value_create_integer->interface~to_unicode none~create_integer json_core%create_integer proc~wrap_json_value_create_integer->none~create_integer proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create_integer->proc~wrap_json_value_create_integer proc~json_value_create_integer json_core%json_value_create_integer none~create_integer->proc~json_value_create_integer proc~json_value_create json_value_create proc~json_value_create_integer->proc~json_value_create proc~to_integer json_core%to_integer proc~json_value_create_integer->proc~to_integer proc~destroy_json_data destroy_json_data proc~to_integer->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_value_create_integer~~CalledByGraph proc~wrap_json_value_create_integer json_core%wrap_json_value_create_integer none~create_integer json_core%create_integer proc~wrap_json_value_create_integer->none~create_integer none~create_integer->proc~wrap_json_value_create_integer proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create_integer proc~json_value_add_integer json_core%json_value_add_integer proc~json_value_add_integer->none~create_integer proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_create_integer ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p integer ( IK ), intent ( in ) :: val character ( kind = CDK , len =* ), intent ( in ) :: name call json % create_integer ( p , val , to_unicode ( name )) end subroutine wrap_json_value_create_integer","tags":"","loc":"proc/wrap_json_value_create_integer.html"},{"title":"wrap_json_value_create_logical – JSON-Fortran","text":"private subroutine wrap_json_value_create_logical(json, p, val, name) Wrapper for json_value_create_logical so create_logical method can\nbe called with name of character kind ‘DEFAULT’ or ‘ISO_10646’ Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p logical(kind=LK), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name Calls proc~~wrap_json_value_create_logical~~CallsGraph proc~wrap_json_value_create_logical json_core%wrap_json_value_create_logical interface~to_unicode to_unicode proc~wrap_json_value_create_logical->interface~to_unicode none~create_logical json_core%create_logical proc~wrap_json_value_create_logical->none~create_logical proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create_logical->proc~wrap_json_value_create_logical proc~json_value_create_logical json_core%json_value_create_logical none~create_logical->proc~json_value_create_logical proc~json_value_create json_value_create proc~json_value_create_logical->proc~json_value_create proc~to_logical json_core%to_logical proc~json_value_create_logical->proc~to_logical proc~destroy_json_data destroy_json_data proc~to_logical->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_value_create_logical~~CalledByGraph proc~wrap_json_value_create_logical json_core%wrap_json_value_create_logical none~create_logical json_core%create_logical proc~wrap_json_value_create_logical->none~create_logical none~create_logical->proc~wrap_json_value_create_logical proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create_logical proc~json_value_add_logical json_core%json_value_add_logical proc~json_value_add_logical->none~create_logical proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_create_logical ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p logical ( LK ), intent ( in ) :: val character ( kind = CDK , len =* ), intent ( in ) :: name call json % create_logical ( p , val , to_unicode ( name )) end subroutine wrap_json_value_create_logical","tags":"","loc":"proc/wrap_json_value_create_logical.html"},{"title":"wrap_json_value_create_null – JSON-Fortran","text":"private subroutine wrap_json_value_create_null(json, p, name) Wrap json_value_create_null so that create_null method may be called with\nan actual argument corresponding to the dummy argument name that is either\nof ‘DEFAULT’ or ‘ISO_10646’ character kind. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name Calls proc~~wrap_json_value_create_null~~CallsGraph proc~wrap_json_value_create_null json_core%wrap_json_value_create_null interface~to_unicode to_unicode proc~wrap_json_value_create_null->interface~to_unicode none~create_null json_core%create_null proc~wrap_json_value_create_null->none~create_null proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create_null->proc~wrap_json_value_create_null proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~json_value_create json_value_create proc~json_value_create_null->proc~json_value_create proc~to_null json_core%to_null proc~json_value_create_null->proc~to_null proc~destroy_json_data destroy_json_data proc~to_null->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_value_create_null~~CalledByGraph proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null json_core%create_null proc~wrap_json_value_create_null->none~create_null none~create_null->proc~wrap_json_value_create_null proc~convert json_core%convert proc~convert->none~create_null none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_value_add_null json_core%json_value_add_null proc~json_value_add_null->none~create_null proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~convert none~get_child json_core%get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_create_null ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name call json % create_null ( p , to_unicode ( name )) end subroutine wrap_json_value_create_null","tags":"","loc":"proc/wrap_json_value_create_null.html"},{"title":"wrap_json_value_create_object – JSON-Fortran","text":"private subroutine wrap_json_value_create_object(json, p, name) Wrap json_value_create_object so that create_object method may be called\nwith an actual argument corresponding to the dummy argument name that is of\neither ‘DEFAULT’ or ‘ISO_10646’ character kind. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name Calls proc~~wrap_json_value_create_object~~CallsGraph proc~wrap_json_value_create_object json_core%wrap_json_value_create_object interface~to_unicode to_unicode proc~wrap_json_value_create_object->interface~to_unicode none~create_object json_core%create_object proc~wrap_json_value_create_object->none~create_object proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create_object->proc~wrap_json_value_create_object proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_value_create_object~~CalledByGraph proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object json_core%create_object proc~wrap_json_value_create_object->none~create_object none~create_object->proc~wrap_json_value_create_object proc~convert json_core%convert proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~create_object none~add_by_path~2 json_core%add_by_path proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~create_object proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~create_object proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~create_object proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~create_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~create_object proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~create_object proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~create_object proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->none~create_object proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->none~create_object proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~create_object proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~convert none~get_child json_core%get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_create_object ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name call json % create_object ( p , to_unicode ( name )) end subroutine wrap_json_value_create_object","tags":"","loc":"proc/wrap_json_value_create_object.html"},{"title":"wrap_json_value_create_real – JSON-Fortran","text":"private subroutine wrap_json_value_create_real(json, p, val, name) A wrapper for json_value_create_real so that create_real method\nmay be called with an actual argument corresponding to the dummy argument, name that may be of ‘DEFAULT’ or ‘ISO_10646’ character kind. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=RK), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name Calls proc~~wrap_json_value_create_real~~CallsGraph proc~wrap_json_value_create_real json_core%wrap_json_value_create_real interface~to_unicode to_unicode proc~wrap_json_value_create_real->interface~to_unicode none~create_real~2 json_core%create_real proc~wrap_json_value_create_real->none~create_real~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_create_real32 json_core%json_value_create_real32 none~create_real~2->proc~json_value_create_real32 proc~wrap_json_value_create_real32 json_core%wrap_json_value_create_real32 none~create_real~2->proc~wrap_json_value_create_real32 proc~json_value_create_real32->none~create_real~2 proc~wrap_json_value_create_real32->interface~to_unicode proc~wrap_json_value_create_real32->none~create_real~2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_create_real ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p real ( RK ), intent ( in ) :: val character ( kind = CDK , len =* ), intent ( in ) :: name call json % create_real ( p , val , to_unicode ( name )) end subroutine wrap_json_value_create_real","tags":"","loc":"proc/wrap_json_value_create_real.html"},{"title":"wrap_json_value_create_real32 – JSON-Fortran","text":"private subroutine wrap_json_value_create_real32(json, p, val, name) Alternate version of json_value_create_real32 where “name” is kind(CDK). Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=real32), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name Calls proc~~wrap_json_value_create_real32~~CallsGraph proc~wrap_json_value_create_real32 json_core%wrap_json_value_create_real32 interface~to_unicode to_unicode proc~wrap_json_value_create_real32->interface~to_unicode none~create_real~2 json_core%create_real proc~wrap_json_value_create_real32->none~create_real~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create_real~2->proc~wrap_json_value_create_real32 proc~json_value_create_real32 json_core%json_value_create_real32 none~create_real~2->proc~json_value_create_real32 proc~json_value_create_real32->none~create_real~2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_value_create_real32~~CalledByGraph proc~wrap_json_value_create_real32 json_core%wrap_json_value_create_real32 none~create_real~2 json_core%create_real proc~wrap_json_value_create_real32->none~create_real~2 none~create_real~2->proc~wrap_json_value_create_real32 proc~json_value_create_real32 json_core%json_value_create_real32 none~create_real~2->proc~json_value_create_real32 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create_real~2 proc~json_value_add_real json_core%json_value_add_real proc~json_value_add_real->none~create_real~2 proc~json_value_create_real32->none~create_real~2 proc~wrap_json_value_create_real json_core%wrap_json_value_create_real proc~wrap_json_value_create_real->none~create_real~2 proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_create_real32 ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p real ( real32 ), intent ( in ) :: val character ( kind = CDK , len =* ), intent ( in ) :: name call json % create_real ( p , val , to_unicode ( name )) end subroutine wrap_json_value_create_real32","tags":"","loc":"proc/wrap_json_value_create_real32.html"},{"title":"wrap_json_value_create_string – JSON-Fortran","text":"private subroutine wrap_json_value_create_string(json, p, val, name, trim_str, adjustl_str) Wrap json_value_create_string so that create_string method may be called\nwith actual character string arguments for name and val that are BOTH of\n‘DEFAULT’ or ‘ISO_10646’ character kind. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val Calls proc~~wrap_json_value_create_string~~CallsGraph proc~wrap_json_value_create_string json_core%wrap_json_value_create_string interface~to_unicode to_unicode proc~wrap_json_value_create_string->interface~to_unicode none~create_string json_core%create_string proc~wrap_json_value_create_string->none~create_string proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create_string->proc~wrap_json_value_create_string proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~json_value_create json_value_create proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string proc~destroy_json_data destroy_json_data proc~to_string->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_value_create_string~~CalledByGraph proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string json_core%create_string proc~wrap_json_value_create_string->none~create_string none~create_string->proc~wrap_json_value_create_string proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create_string proc~json_value_add_string json_core%json_value_add_string proc~json_value_add_string->none~create_string proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_create_string ( json , p , val , name , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: val character ( kind = CDK , len =* ), intent ( in ) :: name logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` call json % create_string ( p , to_unicode ( val ), to_unicode ( name ), trim_str , adjustl_str ) end subroutine wrap_json_value_create_string","tags":"","loc":"proc/wrap_json_value_create_string.html"},{"title":"wrap_json_value_get_child_by_name – JSON-Fortran","text":"private subroutine wrap_json_value_get_child_by_name(json, p, name, child, found) Alternate version of json_value_get_child_by_name where name is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CDK, len=*), intent(in) :: name type( json_value ), pointer :: child logical(kind=LK), intent(out), optional :: found Calls proc~~wrap_json_value_get_child_by_name~~CallsGraph proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name interface~to_unicode to_unicode proc~wrap_json_value_get_child_by_name->interface~to_unicode none~get~2 json_core%get proc~wrap_json_value_get_child_by_name->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii none~get_child->proc~wrap_json_value_get_child_by_name proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_value_get_child_by_name~~CalledByGraph proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get~2 json_core%get proc~wrap_json_value_get_child_by_name->none~get~2 none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_matrix_info json_core%json_matrix_info proc~json_matrix_info->none~get_child none~info~2 json_core%info proc~json_matrix_info->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info~2 json_core%matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_matrix_info_by_path->none~get~2 proc~json_value_replace json_core%json_value_replace proc~json_value_replace->none~insert_after proc~wrap_json_matrix_info_by_path->none~matrix_info~2 none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~convert->proc~json_value_replace proc~convert->none~info~2 proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_member_by_path->none~info~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_by_path->none~info~2 proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~info~2 proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_by_path->none~info~2 proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~info~2 proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_file_variable_matrix_info->none~matrix_info none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_get_child_by_name ( json , p , name , child , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p character ( kind = CDK , len =* ), intent ( in ) :: name type ( json_value ), pointer :: child logical ( LK ), intent ( out ), optional :: found call json % get ( p , to_unicode ( name ), child , found ) end subroutine wrap_json_value_get_child_by_name","tags":"","loc":"proc/wrap_json_value_get_child_by_name.html"},{"title":"wrap_json_value_remove_if_present – JSON-Fortran","text":"private subroutine wrap_json_value_remove_if_present(json, p, path) Alternate version of json_value_remove_if_present , where path is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path Calls proc~~wrap_json_value_remove_if_present~~CallsGraph proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present interface~to_unicode to_unicode proc~wrap_json_value_remove_if_present->interface~to_unicode none~remove_if_present json_core%remove_if_present proc~wrap_json_value_remove_if_present->none~remove_if_present proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~remove_if_present->proc~wrap_json_value_remove_if_present proc~json_value_remove_if_present json_core%json_value_remove_if_present none~remove_if_present->proc~json_value_remove_if_present none~get~2 json_core%get proc~json_value_remove_if_present->none~get~2 proc~json_value_remove json_core%json_value_remove proc~json_value_remove_if_present->proc~json_value_remove proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~json_value_replace->proc~json_value_remove none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_value_remove_if_present~~CalledByGraph proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present json_core%remove_if_present proc~wrap_json_value_remove_if_present->none~remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove proc~wrap_json_file_remove->none~remove Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_remove_if_present ( json , p , path ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: path call json % remove_if_present ( p , to_unicode ( path )) end subroutine wrap_json_value_remove_if_present","tags":"","loc":"proc/wrap_json_value_remove_if_present.html"},{"title":"wrap_json_value_rename – JSON-Fortran","text":"private subroutine wrap_json_value_rename(json, p, name) Alternate version of json_value_rename , where name is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CDK, len=*), intent(in) :: name new variable name Calls proc~~wrap_json_value_rename~~CallsGraph proc~wrap_json_value_rename json_core%wrap_json_value_rename interface~to_unicode to_unicode proc~wrap_json_value_rename->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_rename ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! new variable name call json % rename ( p , to_unicode ( name )) end subroutine wrap_json_value_rename","tags":"","loc":"proc/wrap_json_value_rename.html"},{"title":"json_core – JSON-Fortran","text":"public interface json_core Structure constructor to initialize a json_core object Example type ( json_file ) :: json_core json_core = json_core () Calls interface~~json_core~~CallsGraph interface~json_core json_core proc~initialize_json_core initialize_json_core interface~json_core->proc~initialize_json_core proc~json_initialize json_core%json_initialize proc~initialize_json_core->proc~json_initialize none~throw_exception json_core%throw_exception proc~json_initialize->none~throw_exception proc~integer_to_string integer_to_string proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Module Procedures private function initialize_json_core (verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) result(json_core_object) Author Jacob Williams Date 4/26/2016 Function constructor for a json_core .\n This is just a wrapper for json_initialize . Read more… Arguments Type Intent Optional Attributes Name logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Return Value type( json_core )","tags":"","loc":"interface/json_core.html"},{"title":"json_file_module – JSON-Fortran","text":"Higher-level json_file interface for the json_value type. License JSON -Fortran is released under a BSD-style license.\n See the LICENSE file for details. Uses json_string_utilities json_value_module json_parameters iso_fortran_env json_kinds module~~json_file_module~~UsesGraph module~json_file_module json_file_module iso_fortran_env iso_fortran_env module~json_file_module->iso_fortran_env module~json_kinds json_kinds module~json_file_module->module~json_kinds module~json_parameters json_parameters module~json_file_module->module~json_parameters module~json_string_utilities json_string_utilities module~json_file_module->module~json_string_utilities module~json_value_module json_value_module module~json_file_module->module~json_value_module module~json_kinds->iso_fortran_env module~json_parameters->module~json_kinds module~json_string_utilities->module~json_kinds module~json_string_utilities->module~json_parameters ieee_arithmetic ieee_arithmetic module~json_string_utilities->ieee_arithmetic module~json_value_module->iso_fortran_env module~json_value_module->module~json_kinds module~json_value_module->module~json_parameters module~json_value_module->module~json_string_utilities module~json_value_module->ieee_arithmetic Help Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\ndescended from. Dashed arrows point from a module or program unit to \nmodules which it uses. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Used by module~~json_file_module~~UsedByGraph module~json_file_module json_file_module module~json_module json_module module~json_module->module~json_file_module Help Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\ndescended from. Dashed arrows point from a module or program unit to \nmodules which it uses. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Interfaces public interface json_file Structure constructor to initialize a json_file object with an existing json_value object or a JSON string, and either the json_core settings or a json_core instance. Example ... type ( json_file ) :: my_file type ( json_value ), pointer :: json_object type ( json_core ) :: json_core_object ... ! Construct a json_object: !could do this: my_file = json_file ( json_object ) !or: my_file = json_file ( json_object , verbose = . true .) !or: my_file = json_file ( '{\"x\": [1]}' , verbose = . true .) !or: my_file = json_file ( json_object , json_core_object ) !or: my_file = json_file ( '{\"x\": [1]}' , json_core_object ) private function initialize_json_file (p, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma, nullify_pointer) result(file_object) Author Izaak Beekman Date 07/23/2015 Cast a json_value object as a json_file object.\n It also calls the initialize() method. Note initialize_json_core , json_initialize , initialize_json_core_in_file , initialize_json_file , initialize_json_file_v2 , initialize_json_file_from_string ,\n and initialize_json_file_from_string_v2 all have a similar interface. Arguments Type Intent Optional Attributes Name type( json_value ), optional, pointer :: p json_value object to cast\nas a json_file object. This\nwill be nullified. logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) logical(kind=LK), intent(in), optional :: nullify_pointer if True, then p will be nullified\nif present. (default is True). Normally,\nthis should be done, because the json_file will destroy\nthe pointer when the class goes out of scope (causing p to be\na dangling pointer). However, if the intent is to use p in\na json_file and then call nullify and continue\nto use p , then this should be set to False. Return Value type( json_file ) private function initialize_json_file_v2 (json_value_object, json_core_object) result(file_object) Author Jacob Williams Date 4/26/2016 Cast a json_value pointer and a json_core object\nas a json_file object. Arguments Type Intent Optional Attributes Name type( json_value ), intent(in), pointer :: json_value_object type( json_core ), intent(in) :: json_core_object Return Value type( json_file ) private function initialize_json_file_from_string (str, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) result(file_object) Author Jacob Williams Date 01/19/2019 Cast a JSON string as a json_file object.\n It also calls the initialize() method. Example type ( json_file ) :: f f = json_file ( '{\"key \": 1}' , trailing_spaces_significant = . true .) Note initialize_json_core , json_initialize , initialize_json_core_in_file , initialize_json_file , initialize_json_file_v2 , initialize_json_file_from_string ,\n and initialize_json_file_from_string_v2 all have a similar interface. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str string to load JSON data from logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Return Value type( json_file ) private function wrap_initialize_json_file_from_string (str, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) result(file_object) Alternate version of initialize_json_file_from_string , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: str string to load JSON data from logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Return Value type( json_file ) private function initialize_json_file_from_string_v2 (str, json_core_object) result(file_object) Author Jacob Williams Date 1/19/2019 Cast a JSON string and a json_core object\nas a json_file object. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str string to load JSON data from type( json_core ), intent(in) :: json_core_object Return Value type( json_file ) private function wrap_initialize_json_file_from_string_v2 (str, json_core_object) result(file_object) Alternate version of initialize_json_file_from_string_v2 , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: str string to load JSON data from type( json_core ), intent(in) :: json_core_object Return Value type( json_file ) Derived Types type, public :: json_file The json_file is the main public class that is\n used to open a file and get data from it. Read more… Components Type Visibility Attributes Name Initial type( json_core ), private :: core The instance of the json_core factory used for this file. type( json_value ), private, pointer :: p => null() the JSON structure read from the file Constructor Structure constructor to initialize a json_file object with an existing json_value object or a JSON string, and either the json_core settings or a json_core instance. Read more… private\n\n \n function initialize_json_file (p, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma, nullify_pointer) Cast a json_value object as a json_file object.\n It also calls the initialize() method. Read more… private\n\n \n function initialize_json_file_v2 (json_value_object, json_core_object) Cast a json_value pointer and a json_core object\nas a json_file object. private\n\n \n function initialize_json_file_from_string (str, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) Cast a JSON string as a json_file object.\n It also calls the initialize() method. Read more… private\n\n \n function wrap_initialize_json_file_from_string (str, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) Alternate version of initialize_json_file_from_string , where “str” is kind=CDK. private\n\n \n function initialize_json_file_from_string_v2 (str, json_core_object) Cast a JSON string and a json_core object\nas a json_file object. private\n\n \n function wrap_initialize_json_file_from_string_v2 (str, json_core_object) Alternate version of initialize_json_file_from_string_v2 , where “str” is kind=CDK. Finalizations Procedures final :: finalize_json_file Type-Bound Procedures generic, public :: add => json_file_add , json_file_add_object , wrap_json_file_add_object , json_file_add_integer , wrap_json_file_add_integer , json_file_add_real32 , wrap_json_file_add_real32 , json_file_add_real , wrap_json_file_add_real , json_file_add_logical , wrap_json_file_add_logical , json_file_add_string , wrap_json_file_add_string , json_file_add_integer_vec , wrap_json_file_add_integer_vec , json_file_add_real32_vec , wrap_json_file_add_real32_vec , json_file_add_real_vec , wrap_json_file_add_real_vec , json_file_add_logical_vec , wrap_json_file_add_logical_vec , json_file_add_string_vec , wrap_json_file_add_string_vec Add a variable to a json_file , by specifying the path. Read more… generic, public :: add => json_file_add_string_path_ascii , json_file_add_string_value_ascii , json_file_add_string_vec_path_ascii , json_file_add_string_vec_vec_ascii procedure, public :: assign_json_file procedure, public, pass(me) :: assign_json_file_to_string procedure, public :: assign_string_to_json_file generic, public :: assignment(=) => assign_json_file , assign_json_file_to_string , assign_string_to_json_file , wrap_assign_string_to_json_file procedure, public :: check_for_errors => json_file_check_for_errors procedure, public :: clear_exceptions => json_file_clear_exceptions generic, public :: deserialize => json_file_load_from_string , wrap_json_file_load_from_string ../../ Load JSON from a string. procedure, public :: destroy => json_file_destroy procedure, public :: failed => json_file_failed generic, public :: get => json_file_get_object , wrap_json_file_get_object , json_file_get_integer , wrap_json_file_get_integer , json_file_get_real32 , wrap_json_file_get_real32 , json_file_get_real , wrap_json_file_get_real , json_file_get_logical , wrap_json_file_get_logical , json_file_get_string , wrap_json_file_get_string , json_file_get_integer_vec , wrap_json_file_get_integer_vec , json_file_get_real32_vec , wrap_json_file_get_real32_vec , json_file_get_real_vec , wrap_json_file_get_real_vec , json_file_get_logical_vec , wrap_json_file_get_logical_vec , json_file_get_string_vec , wrap_json_file_get_string_vec , json_file_get_alloc_string_vec , wrap_json_file_get_alloc_string_vec , json_file_get_root Get a variable from a json_file , by specifying the path. procedure, public :: get_core => get_json_core_in_file generic, public :: info => json_file_variable_info , wrap_json_file_variable_info generic, public :: initialize => initialize_json_core_in_file , set_json_core_in_file procedure, public :: initialize_json_core_in_file procedure, public :: json_file_add procedure, public :: json_file_add_integer procedure, public :: json_file_add_integer_vec procedure, public :: json_file_add_logical procedure, public :: json_file_add_logical_vec procedure, public :: json_file_add_object procedure, public :: json_file_add_real procedure, public :: json_file_add_real32 procedure, public :: json_file_add_real32_vec procedure, public :: json_file_add_real_vec procedure, public :: json_file_add_string procedure, public :: json_file_add_string_path_ascii procedure, public :: json_file_add_string_value_ascii procedure, public :: json_file_add_string_vec procedure, public :: json_file_add_string_vec_path_ascii procedure, public :: json_file_add_string_vec_vec_ascii procedure, public :: json_file_get_alloc_string_vec procedure, public :: json_file_get_integer procedure, public :: json_file_get_integer_vec procedure, public :: json_file_get_logical procedure, public :: json_file_get_logical_vec procedure, public :: json_file_get_object procedure, public :: json_file_get_real procedure, public :: json_file_get_real32 procedure, public :: json_file_get_real32_vec procedure, public :: json_file_get_real_vec procedure, public :: json_file_get_root procedure, public :: json_file_get_string procedure, public :: json_file_get_string_vec procedure, public :: json_file_load_from_string procedure, public :: json_file_print_to_console procedure, public :: json_file_print_to_filename procedure, public :: json_file_print_to_unit procedure, public :: json_file_remove procedure, public :: json_file_rename procedure, public :: json_file_rename_name_ascii procedure, public :: json_file_rename_path_ascii procedure, public :: json_file_update_integer procedure, public :: json_file_update_logical procedure, public :: json_file_update_real procedure, public :: json_file_update_real32 procedure, public :: json_file_update_string procedure, public :: json_file_update_string_name_ascii procedure, public :: json_file_update_string_val_ascii procedure, public :: json_file_valid_path procedure, public, pass(me) :: json_file_valid_path_op procedure, public :: json_file_variable_info procedure, public :: json_file_variable_matrix_info procedure, public :: load => json_file_load ../../ Load JSON from a file. procedure, public :: load_file => json_file_load ../../ The same as load , but only here for backward compatibility generic, public :: load_from_string => json_file_load_from_string , wrap_json_file_load_from_string ../../ The same as deserialize , but only here for backward compatibility generic, public :: matrix_info => json_file_variable_matrix_info , wrap_json_file_variable_matrix_info procedure, public :: move => json_file_move_pointer procedure, public :: nullify => json_file_nullify generic, public :: operator(.in.) => json_file_valid_path_op , wrap_json_file_valid_path_op generic, public :: print => json_file_print_to_console , json_file_print_to_unit , json_file_print_to_filename procedure, public :: print_error_message => json_file_print_error_message generic, public :: print_file => json_file_print_to_console , json_file_print_to_unit , json_file_print_to_filename ../../ The same as print , but only here for backward compatibility procedure, public :: print_to_string => json_file_print_to_string ../../ The same as serialize , but only here for backward compatibility generic, public :: remove => json_file_remove , wrap_json_file_remove Remove a variable from a json_file by specifying the path. generic, public :: rename => json_file_rename , wrap_json_file_rename ../../ Rename a variable, specifying it by path generic, public :: rename => json_file_rename_path_ascii , json_file_rename_name_ascii procedure, public :: serialize => json_file_print_to_string Print the json_value structure to an allocatable string procedure, public :: set_json_core_in_file procedure, public :: traverse => json_file_traverse generic, public :: update => json_file_update_integer , wrap_json_file_update_integer , json_file_update_logical , wrap_json_file_update_logical , json_file_update_real32 , wrap_json_file_update_real32 , json_file_update_real , wrap_json_file_update_real , json_file_update_string , wrap_json_file_update_string Update a scalar variable in a json_file ,\n by specifying the path. Read more… generic, public :: update => json_file_update_string_name_ascii , json_file_update_string_val_ascii generic, public :: valid_path => json_file_valid_path , wrap_json_file_valid_path ../../ Verify that a path is valid\n(i.e., a variable with this path exists in the file). procedure, public :: wrap_assign_string_to_json_file procedure, public :: wrap_json_file_add_integer procedure, public :: wrap_json_file_add_integer_vec procedure, public :: wrap_json_file_add_logical procedure, public :: wrap_json_file_add_logical_vec procedure, public :: wrap_json_file_add_object procedure, public :: wrap_json_file_add_real procedure, public :: wrap_json_file_add_real32 procedure, public :: wrap_json_file_add_real32_vec procedure, public :: wrap_json_file_add_real_vec procedure, public :: wrap_json_file_add_string procedure, public :: wrap_json_file_add_string_vec procedure, public :: wrap_json_file_get_alloc_string_vec procedure, public :: wrap_json_file_get_integer procedure, public :: wrap_json_file_get_integer_vec procedure, public :: wrap_json_file_get_logical procedure, public :: wrap_json_file_get_logical_vec procedure, public :: wrap_json_file_get_object procedure, public :: wrap_json_file_get_real procedure, public :: wrap_json_file_get_real32 procedure, public :: wrap_json_file_get_real32_vec procedure, public :: wrap_json_file_get_real_vec procedure, public :: wrap_json_file_get_string procedure, public :: wrap_json_file_get_string_vec procedure, public :: wrap_json_file_load_from_string procedure, public :: wrap_json_file_remove procedure, public :: wrap_json_file_rename procedure, public :: wrap_json_file_update_integer procedure, public :: wrap_json_file_update_logical procedure, public :: wrap_json_file_update_real procedure, public :: wrap_json_file_update_real32 procedure, public :: wrap_json_file_update_string procedure, public :: wrap_json_file_valid_path procedure, public, pass(me) :: wrap_json_file_valid_path_op procedure, public :: wrap_json_file_variable_info procedure, public :: wrap_json_file_variable_matrix_info Functions private function initialize_json_file (p, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma, nullify_pointer) result(file_object) Author Izaak Beekman Date 07/23/2015 Cast a json_value object as a json_file object.\n It also calls the initialize() method. Read more… Arguments Type Intent Optional Attributes Name type( json_value ), optional, pointer :: p json_value object to cast\nas a json_file object. This\nwill be nullified. logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) logical(kind=LK), intent(in), optional :: nullify_pointer if True, then p will be nullified\nif present. (default is True). Normally,\nthis should be done, because the json_file will destroy\nthe pointer when the class goes out of scope (causing p to be\na dangling pointer). However, if the intent is to use p in\na json_file and then call nullify and continue\nto use p , then this should be set to False. Return Value type( json_file ) private function initialize_json_file_from_string (str, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) result(file_object) Author Jacob Williams Date 01/19/2019 Cast a JSON string as a json_file object.\n It also calls the initialize() method. Read more… Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str string to load JSON data from logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Return Value type( json_file ) private function initialize_json_file_from_string_v2 (str, json_core_object) result(file_object) Author Jacob Williams Date 1/19/2019 Cast a JSON string and a json_core object\nas a json_file object. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str string to load JSON data from type( json_core ), intent(in) :: json_core_object Return Value type( json_file ) private function initialize_json_file_v2 (json_value_object, json_core_object) result(file_object) Author Jacob Williams Date 4/26/2016 Cast a json_value pointer and a json_core object\nas a json_file object. Arguments Type Intent Optional Attributes Name type( json_value ), intent(in), pointer :: json_value_object type( json_core ), intent(in) :: json_core_object Return Value type( json_file ) private pure function json_file_failed (me) result(failed) Check error status in the file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(in) :: me Return Value logical(kind=LK) will be true if there has been an error. private function json_file_valid_path (me, path) result(found) Author Jacob Williams Returns true if the path is present in the JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable Return Value logical(kind=LK) if the variable was found private function json_file_valid_path_op (path, me) result(found) Author Jacob Williams A wrapper for json_file_valid_path for the .in. operator Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: path the path to the variable class( json_file ), intent(in) :: me the JSON file Return Value logical(kind=LK) if the variable was found private function wrap_initialize_json_file_from_string (str, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) result(file_object) Alternate version of initialize_json_file_from_string , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: str string to load JSON data from logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Return Value type( json_file ) private function wrap_initialize_json_file_from_string_v2 (str, json_core_object) result(file_object) Alternate version of initialize_json_file_from_string_v2 , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: str string to load JSON data from type( json_core ), intent(in) :: json_core_object Return Value type( json_file ) private function wrap_json_file_valid_path (me, path) result(found) Author Jacob Williams Alternate version of json_file_valid_path , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable Return Value logical(kind=LK) if the variable was found private function wrap_json_file_valid_path_op (path, me) result(found) Author Jacob Williams Alternate version of json_file_valid_path_op , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: path the path to the variable class( json_file ), intent(in) :: me the JSON file Return Value logical(kind=LK) if the variable was found Subroutines private subroutine assign_json_file (me, f) Author Jacob Williams Assignment operator for json_core = json_core .\nThis will duplicate the json_core and also\nperform a deep copy of the json_value data structure. Arguments Type Intent Optional Attributes Name class( json_file ), intent(out) :: me type( json_file ), intent(in) :: f private subroutine assign_json_file_to_string (str, me) Author Jacob Williams Assignment operator for character = json_core .\n This is just a wrapper for the json_value_to_string routine. Read more… Arguments Type Intent Optional Attributes Name character(kind=CK, len=:), intent(out), allocatable :: str class( json_file ), intent(in) :: me private subroutine assign_string_to_json_file (me, str) Author Jacob Williams Assignment operator for json_core = character.\nThis is just a wrapper for the json_file_load_from_string routine. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: str private subroutine finalize_json_file (me) Finalizer for json_file class. Read more… Arguments Type Intent Optional Attributes Name type( json_file ), intent(inout) :: me private subroutine get_json_core_in_file (me, core) Get a copy of the json_core in this json_file . Arguments Type Intent Optional Attributes Name class( json_file ), intent(in) :: me type( json_core ), intent(out) :: core private subroutine initialize_json_core_in_file (me, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) Initialize the json_core for this json_file .\n This is just a wrapper for json_initialize . Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) private subroutine json_file_add (me, p, destroy_original) Author Jacob Williams Add a json_value pointer as the root object to a JSON file. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me type( json_value ), intent(in), pointer :: p pointer to the variable to add logical(kind=LK), intent(in), optional :: destroy_original if the file currently contains\nan associated pointer, it is\ndestroyed. [Default is True] private subroutine json_file_add_integer (me, path, val, found, was_created) Author Jacob Williams Add an integer value to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_integer_vec (me, path, vec, found, was_created) Author Jacob Williams Add an integer vector to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_logical (me, path, val, found, was_created) Author Jacob Williams Add a logical(LK) value to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_logical_vec (me, path, vec, found, was_created) Author Jacob Williams Add a logical(LK) vector to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_object (me, path, p, found, was_created) Author Jacob Williams Add a json_value pointer to an object to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(in), pointer :: p pointer to the variable to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_real (me, path, val, found, was_created) Author Jacob Williams Add a real(RK) variable value to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_real32 (me, path, val, found, was_created) Author Jacob Williams Alternate version of json_file_add_real where val is real32 . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_real32_vec (me, path, vec, found, was_created) Author Jacob Williams Alternate version of json_file_add_real_vec where vec is real32 . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_real_vec (me, path, vec, found, was_created) Author Jacob Williams Add a real(RK) vector to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_string (me, path, val, found, was_created, trim_str, adjustl_str) Author Jacob Williams Add a character string to a json file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) private subroutine json_file_add_string_path_ascii (me, path, val, found, was_created, trim_str, adjustl_str) Author Jacob Williams Wrapper for json_file_add_string where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) private subroutine json_file_add_string_value_ascii (me, path, val, found, was_created, trim_str, adjustl_str) Author Jacob Williams Wrapper for json_file_add_string where “val” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) private subroutine json_file_add_string_vec (me, path, vec, found, was_created, ilen, trim_str, adjustl_str) Author Jacob Williams Add a string vector to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element\n(note that ADJUSTL is done before TRIM) private subroutine json_file_add_string_vec_path_ascii (me, path, vec, found, was_created, ilen, trim_str, adjustl_str) Author Jacob Williams Alternate version of json_file_add_string_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element\n(note that ADJUSTL is done before TRIM) private subroutine json_file_add_string_vec_vec_ascii (me, path, vec, found, was_created, ilen, trim_str, adjustl_str) Author Jacob Williams Alternate version of json_file_add_string_vec , where “vec” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element\n(note that ADJUSTL is done before TRIM) private subroutine json_file_check_for_errors (me, status_ok, error_msg) Retrieve error status and message from the class. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me logical(kind=LK), intent(out), optional :: status_ok true if there were no errors character(kind=CK, len=:), intent(out), optional, allocatable :: error_msg the error message\n(if there were errors) private pure subroutine json_file_clear_exceptions (me) Clear exceptions in the class. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me private subroutine json_file_destroy (me, destroy_core) Author Jacob Williams Destroy the json_value data in a json_file .\n This may be done when the variable is no longer needed,\n or will be reused to open a different file.\n Otherwise a memory leak will occur. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me logical, intent(in), optional :: destroy_core to also destroy the json_core .\ndefault is to leave it as is. private subroutine json_file_get_alloc_string_vec (me, path, vec, ilen, found, default, default_ilen) Author Jacob Williams Date 12/17/2016 Get an (allocatable length) string vector from a JSON file.\nThis is just a wrapper for json_get_alloc_string_vec_by_path . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec value vector integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default integer(kind=IK), intent(in), optional, dimension(:) :: default_ilen the actual\nlength of default private subroutine json_file_get_integer (me, path, val, found, default) Author Jacob Williams Date 12/9/2013 Get an integer value from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found integer(kind=IK), intent(in), optional :: default private subroutine json_file_get_integer_vec (me, path, vec, found, default) Author Jacob Williams Date 1/20/2014 Get an integer vector from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found integer(kind=IK), intent(in), optional, dimension(:) :: default private subroutine json_file_get_logical (me, path, val, found, default) Author Jacob Williams Date 12/9/2013 Get a logical(LK) value from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found logical(kind=LK), intent(in), optional :: default private subroutine json_file_get_logical_vec (me, path, vec, found, default) Author Jacob Williams Date 1/20/2014 Get a logical(LK) vector from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found logical(kind=LK), intent(in), optional, dimension(:) :: default private subroutine json_file_get_object (me, path, p, found) Author Jacob Williams Date 2/3/2014 Get a json_value pointer to an object from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(out), pointer :: p pointer to the variable logical(kind=LK), intent(out), optional :: found if it was really found private subroutine json_file_get_real (me, path, val, found, default) Author Jacob Williams Date 12/9/2013 Get a real(RK) variable value from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found real(kind=RK), intent(in), optional :: default private subroutine json_file_get_real32 (me, path, val, found, default) Author Jacob Williams Date 1/21/2019 Alternate version of json_file_get_real where val is real32 . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found real(kind=real32), intent(in), optional :: default private subroutine json_file_get_real32_vec (me, path, vec, found, default) Author Jacob Williams Date 1/21/2019 Alternate version of json_file_get_real_vec where vec is real32 . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found real(kind=real32), intent(in), optional, dimension(:) :: default private subroutine json_file_get_real_vec (me, path, vec, found, default) Author Jacob Williams Date 1/19/2014 Get a real(RK) vector from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found real(kind=RK), intent(in), optional, dimension(:) :: default private subroutine json_file_get_root (me, p) Author Izaak Beekman Date 7/23/2015 Get a json_value pointer to the JSON file root. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me type( json_value ), intent(out), pointer :: p pointer to the variable private subroutine json_file_get_string (me, path, val, found, default) Author Jacob Williams Date 12/9/2013 Get a character string from a json file.\nThe output val is an allocatable character string. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=:), intent(out), allocatable :: val value logical(kind=LK), intent(out), optional :: found if it was really found character(kind=CK, len=*), intent(in), optional :: default private subroutine json_file_get_string_vec (me, path, vec, found, default) Author Jacob Williams Date 1/19/2014 Get a string vector from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec value vector logical(kind=LK), intent(out), optional :: found if it was really found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default private subroutine json_file_load (me, filename, unit, destroy_pointer) Author Jacob Williams Date 12/9/2013 Load the JSON data from a file. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: filename the filename to open integer(kind=IK), intent(in), optional :: unit the unit number to use\n(if not present, a newunit\nis used) logical(kind=LK), intent(in), optional :: destroy_pointer destroy the pointer before\nloading (default is True) private subroutine json_file_load_from_string (me, str, destroy_pointer) Author Jacob Williams Date 1/13/2015 Load the JSON data from a string. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: str string to load JSON data from logical(kind=LK), intent(in), optional :: destroy_pointer destroy the pointer before\nloading (default is True) private subroutine json_file_move_pointer (to, from) Author Jacob Williams Date 12/5/2014 Move the json_value pointer from one json_file to another.\n The “from” pointer is then nullified, but not destroyed. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: to class( json_file ), intent(inout) :: from private subroutine json_file_nullify (me) Author Jacob Williams Nullify the json_value pointer in a json_file ,\n but do not destroy it. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me private subroutine json_file_print_error_message (me, io_unit) This is a wrapper for json_print_error_message . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me integer, intent(in), optional :: io_unit private subroutine json_file_print_to_console (me) Author Jacob Williams Date 1/11/2015 Print the JSON file to the console. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me private subroutine json_file_print_to_filename (me, filename) Author Jacob Williams Date 1/11/2015 Print the JSON structure to the specified filename.\n The file is opened, printed, and then closed. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: filename filename to print to private subroutine json_file_print_to_string (me, str) Author Jacob Williams Date 1/11/2015 Print the JSON file to a string. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=:), intent(out), allocatable :: str string to print JSON data to private subroutine json_file_print_to_unit (me, iunit) Author Jacob Williams Date 12/9/2013 Prints the JSON file to the specified file unit number. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me integer(kind=IK), intent(in) :: iunit file unit number (must not be -1) private subroutine json_file_remove (me, path) Author Jacob Williams Date 7/7/2018 Remove a variable from a JSON file. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable private subroutine json_file_rename (me, path, name, found) Author Jacob Williams Rename a variable in a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if the variable was found private subroutine json_file_rename_name_ascii (me, path, name, found) Author Jacob Williams Wrapper for json_file_rename where “name” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if the variable was found private subroutine json_file_rename_path_ascii (me, path, name, found) Author Jacob Williams Wrapper for json_file_rename where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if the variable was found private subroutine json_file_traverse (me, traverse_callback) Author Jacob Williams Date 6/11/2016 Traverse the JSON structure in the file.\nThis routine calls the user-specified json_traverse_callback_func for each element of the structure. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me procedure( json_traverse_callback_func ) :: traverse_callback private subroutine json_file_update_integer (me, path, val, found) Author Jacob Williams Date 1/10/2015 Given the path string, if the variable is present in the file,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path integer(kind=IK), intent(in) :: val logical(kind=LK), intent(out) :: found private subroutine json_file_update_logical (me, path, val, found) Author Jacob Williams Date 1/10/2015 Given the path string, if the variable is present in the file,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path logical(kind=LK), intent(in) :: val logical(kind=LK), intent(out) :: found private subroutine json_file_update_real (me, path, val, found) Author Jacob Williams Date 1/10/2015 Given the path string, if the variable is present in the file,\nand is a scalar, then update its value.\nIf it is not present, then create it and set its value. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path real(kind=RK), intent(in) :: val logical(kind=LK), intent(out) :: found private subroutine json_file_update_real32 (me, path, val, found) Author Jacob Williams Date 1/21/2019 Alternate version of json_file_update_real where val is real32 . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path real(kind=real32), intent(in) :: val logical(kind=LK), intent(out) :: found private subroutine json_file_update_string (me, path, val, found, trim_str, adjustl_str) Author Jacob Williams Date 1/10/2015 Given the path string, if the variable is present in the file,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path character(kind=CK, len=*), intent(in) :: val logical(kind=LK), intent(out) :: found logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) private subroutine json_file_update_string_name_ascii (me, path, val, found, trim_str, adjustl_str) Alternate version of json_file_update_string , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=*), intent(in) :: val logical(kind=LK), intent(out) :: found logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) private subroutine json_file_update_string_val_ascii (me, path, val, found, trim_str, adjustl_str) Alternate version of json_file_update_string , where “val” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path character(kind=CDK, len=*), intent(in) :: val logical(kind=LK), intent(out) :: found logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) private subroutine json_file_variable_info (me, path, found, var_type, n_children, name) Author Jacob Williams Date 2/3/2014 Returns information about a variable in a json_file . Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path path to the variable logical(kind=LK), intent(out), optional :: found the variable exists in the structure integer(kind=IK), intent(out), optional :: var_type variable type integer(kind=IK), intent(out), optional :: n_children number of children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name private subroutine json_file_variable_matrix_info (me, path, is_matrix, found, var_type, n_sets, set_size, name) Author Jacob Williams Date 6/26/2016 Returns matrix information about a variable in a json_file . Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, 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\nthe matrix (if all elements have\nthe same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name private subroutine set_json_core_in_file (me, core) Set the json_core for this json_file . Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me type( json_core ), intent(in) :: core private subroutine wrap_assign_string_to_json_file (me, str) Author Jacob Williams Alternate version of assign_string_to_json_file , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: str private subroutine wrap_json_file_add_integer (me, path, val, found, was_created) Author Jacob Williams Alternate version of json_file_add_integer , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_integer_vec (me, path, vec, found, was_created) Author Jacob Williams Alternate version of json_file_add_integer_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_logical (me, path, val, found, was_created) Author Jacob Williams Alternate version of json_file_add_logical , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_logical_vec (me, path, vec, found, was_created) Author Jacob Williams Alternate version of json_file_add_logical_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_object (me, path, p, found, was_created) Author Jacob Williams Alternate version of json_file_add_object , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(in), pointer :: p pointer to the variable to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_real (me, path, val, found, was_created) Author Jacob Williams Alternate version of json_file_add_real , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_real32 (me, path, val, found, was_created) Author Jacob Williams Alternate version of json_file_add_real32 , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_real32_vec (me, path, vec, found, was_created) Author Jacob Williams Alternate version of json_file_add_real32_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_real_vec (me, path, vec, found, was_created) Author Jacob Williams Alternate version of json_file_add_real_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_string (me, path, val, found, was_created, trim_str, adjustl_str) Author Jacob Williams Alternate version of json_file_add_string , where “path” and “val” are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) private subroutine wrap_json_file_add_string_vec (me, path, vec, found, was_created, ilen, trim_str, adjustl_str) Author Jacob Williams Alternate version of json_file_add_string_vec , where “path” and “vec” are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element\n(note that ADJUSTL is done before TRIM) private subroutine wrap_json_file_get_alloc_string_vec (me, path, vec, ilen, found, default, default_ilen) Alternate version of json_file_get_alloc_string_vec , where “path” is kind=CDK.\nThis is just a wrapper for wrap_json_get_alloc_string_vec_by_path . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec value vector integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default integer(kind=IK), intent(in), optional, dimension(:) :: default_ilen the actual\nlength of default private subroutine wrap_json_file_get_integer (me, path, val, found, default) Alternate version of json_file_get_integer , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found integer(kind=IK), intent(in), optional :: default private subroutine wrap_json_file_get_integer_vec (me, path, vec, found, default) Alternate version of json_file_get_integer_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found integer(kind=IK), intent(in), optional, dimension(:) :: default private subroutine wrap_json_file_get_logical (me, path, val, found, default) Alternate version of json_file_get_logical , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found logical(kind=LK), intent(in), optional :: default private subroutine wrap_json_file_get_logical_vec (me, path, vec, found, default) Alternate version of json_file_get_logical_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found logical(kind=LK), intent(in), optional, dimension(:) :: default private subroutine wrap_json_file_get_object (me, path, p, found) Alternate version of json_file_get_object , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(out), pointer :: p pointer to the variable logical(kind=LK), intent(out), optional :: found if it was really found private subroutine wrap_json_file_get_real (me, path, val, found, default) Alternate version of json_file_get_real , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found real(kind=RK), intent(in), optional :: default private subroutine wrap_json_file_get_real32 (me, path, val, found, default) Alternate version of json_file_get_real32 , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found real(kind=real32), intent(in), optional :: default private subroutine wrap_json_file_get_real32_vec (me, path, vec, found, default) Alternate version of json_file_get_real32_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found real(kind=real32), intent(in), optional, dimension(:) :: default private subroutine wrap_json_file_get_real_vec (me, path, vec, found, default) Alternate version of json_file_get_real_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found real(kind=RK), intent(in), optional, dimension(:) :: default private subroutine wrap_json_file_get_string (me, path, val, found, default) Alternate version of json_file_get_string , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=:), intent(out), allocatable :: val value logical(kind=LK), intent(out), optional :: found if it was really found character(kind=CK, len=*), intent(in), optional :: default private subroutine wrap_json_file_get_string_vec (me, path, vec, found, default) Alternate version of json_file_get_string_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec value vector logical(kind=LK), intent(out), optional :: found if it was really found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default private subroutine wrap_json_file_load_from_string (me, str) Alternate version of json_file_load_from_string , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: str private subroutine wrap_json_file_remove (me, path) Alternate version of json_file_remove , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable private subroutine wrap_json_file_rename (me, path, name, found) Author Jacob Williams Alternate version of json_file_rename , where “path” and “name” are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if the variable was found private subroutine wrap_json_file_update_integer (me, path, val, found) Alternate version of json_file_update_integer , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path integer(kind=IK), intent(in) :: val logical(kind=LK), intent(out) :: found private subroutine wrap_json_file_update_logical (me, path, val, found) Alternate version of json_file_update_logical , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path logical(kind=LK), intent(in) :: val logical(kind=LK), intent(out) :: found private subroutine wrap_json_file_update_real (me, path, val, found) Alternate version of json_file_update_real , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path real(kind=RK), intent(in) :: val logical(kind=LK), intent(out) :: found private subroutine wrap_json_file_update_real32 (me, path, val, found) Alternate version of json_file_update_real32 , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path real(kind=real32), intent(in) :: val logical(kind=LK), intent(out) :: found private subroutine wrap_json_file_update_string (me, path, val, found, trim_str, adjustl_str) Alternate version of json_file_update_string , where “path” and “val” are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CDK, len=*), intent(in) :: val logical(kind=LK), intent(out) :: found logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) private subroutine wrap_json_file_variable_info (me, path, found, var_type, n_children, name) Alternate version of json_file_variable_info , where “path” is kind=CDK. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(out), optional :: var_type integer(kind=IK), intent(out), optional :: n_children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name private subroutine wrap_json_file_variable_matrix_info (me, path, is_matrix, found, var_type, n_sets, set_size, name) Alternate version of json_file_variable_matrix_info , where “path” is kind=CDK. Read more… Arguments 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\nthe matrix (if all elements have\nthe same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name","tags":"","loc":"module/json_file_module.html"},{"title":"json_parameters – JSON-Fortran","text":"Other parameters used by JSON -Fortran.\n This is a low-level module not meant to be used by a JSON -Fortran user. License JSON -Fortran is released under a BSD-style license.\n See the LICENSE file for details. Uses json_kinds module~~json_parameters~~UsesGraph module~json_parameters json_parameters module~json_kinds json_kinds module~json_parameters->module~json_kinds iso_fortran_env iso_fortran_env module~json_kinds->iso_fortran_env Help Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\ndescended from. Dashed arrows point from a module or program unit to \nmodules which it uses. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Used by module~~json_parameters~~UsedByGraph module~json_parameters json_parameters module~json_file_module json_file_module module~json_file_module->module~json_parameters module~json_string_utilities json_string_utilities module~json_file_module->module~json_string_utilities module~json_value_module json_value_module module~json_file_module->module~json_value_module module~json_module json_module module~json_module->module~json_parameters module~json_module->module~json_file_module module~json_module->module~json_string_utilities module~json_module->module~json_value_module module~json_string_utilities->module~json_parameters module~json_value_module->module~json_parameters module~json_value_module->module~json_string_utilities Help Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\ndescended from. Dashed arrows point from a module or program unit to \nmodules which it uses. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Variables Type Visibility Attributes Name Initial character(kind=CK, len=*), public, parameter :: backslash = achar(92, kind=CK) JSON special character character(kind=CK, len=*), public, parameter :: blank_chunk = repeat(space, chunk_size) a blank string character(kind=CK, len=*), public, parameter :: bspace = achar(8, kind=CK) JSON special character character(kind=CK, len=*), public, parameter :: carriage_return = achar(13, kind=CK) JSON special character integer(kind=IK), public, parameter :: chunk_size = 256_IK for allocatable strings: allocate chunks of this size character(kind=CK, len=*), public, parameter :: colon_char = CK_':' colon character for JSON character(kind=CK, len=*), public, parameter, dimension(32) :: control_chars = [(achar(i_, kind=CK), i_=1, 31), achar(127, kind=CK)] Control characters, possibly in unicode character(kind=CDK, len=*), public, parameter :: default_real_fmt = '(ss,E27.17E4)' default real number format statement (for writing real values to strings and files).\n Note that this can be overridden by calling json_initialize . character(kind=CK, len=*), public, parameter :: delimiter = CK_',' delimiter for JSON character(kind=CK, len=*), public, parameter :: dot = CK_'.' path separator for json_get_by_path_default character(kind=CK, len=*), public, parameter :: end_array = CK_']' end of a JSON array character(kind=CK, len=*), public, parameter :: end_array_alt = CK_')' alternate end of JSON array for json_get_by_path_default character(kind=CK, len=*), public, parameter :: end_object = CK_'}' end of a JSON object character(kind=CK, len=5), protected :: false_str = CK_'false' JSON logical False string character(kind=CK, len=*), public, parameter :: formfeed = achar(12, kind=CK) JSON special character character(kind=CK, len=*), public, parameter :: horizontal_tab = achar(9, kind=CK) JSON special character integer, private :: i_ just a counter for control_chars array character(kind=CDK, len=*), public, parameter :: int_fmt = '(ss,I0)' minimum width format for integers integer(kind=IK), public, parameter :: json_array = 3 Array JSON data type\n(see json_file_variable_info and json_info ) integer(kind=IK), public, parameter :: json_double = json_real Equivalent to json_real for\nbackward compatibility. character(kind=CDK, len=*), public, parameter :: json_ext = '.json' JSON file extension integer(kind=IK), public, parameter :: json_integer = 5 Integer JSON data type ( integer(IK) )\n(see json_file_variable_info and json_info ). integer(kind=IK), public, parameter :: json_logical = 4 Logical JSON data type ( logical(LK) )\n(see json_file_variable_info and json_info ) integer(kind=IK), public, parameter :: json_null = 1 Null JSON data type\n(see json_file_variable_info and json_info ) integer(kind=IK), public, parameter :: json_object = 2 Object JSON data type\n(see json_file_variable_info and json_info ) integer(kind=IK), public, parameter :: json_real = 6 Real number JSON data type ( real(RK) )\n(see json_file_variable_info and json_info ) integer(kind=IK), public, parameter :: json_string = 7 String JSON data type ( character(kind=CK) )\n(see json_file_variable_info and json_info ) integer(kind=IK), public, parameter :: json_unknown = 0 Unknown JSON data type\n(see json_file_variable_info and json_info ) character(kind=CK, len=26), protected :: lower = CK_'abcdefghijklmnopqrstuvwxyz' lowercase characters integer(kind=IK), public, parameter :: max_integer_str_len = 256_IK maximum string length of an integer.\nThis is totally arbitrary (any way\nto get the compiler to tell us this?) integer(kind=IK), public, parameter :: max_numeric_str_len = real_precision+real_exponent_digits+6_IK 6 = sign + leading 0 + decimal + ‘E’ + exponent sign + 1 extra integer(kind=IK), public, parameter :: maxexp = maxexponent(1.0_RK) integer(kind=IK), public, parameter :: minexp = minexponent(1.0_RK) character(kind=CK, len=*), public, parameter :: newline = achar(10, kind=CK) JSON special character character(kind=CK, len=4), protected :: null_str = CK_'null' JSON Null variable string integer(kind=IK), public, parameter :: print_str_chunk_size = 1000_IK chunk size for writing JSON to a string integer(kind=IK), public, parameter :: pushed_char_size = 10_IK size for pushed_char array in json_core character(kind=CK, len=*), public, parameter :: quotation_mark = CK_'\"' JSON special character integer(kind=IK), public, parameter :: real_exponent_digits = floor(1_IK+log10(real(max(maxexp, abs(maxexp)), kind=RK))) integer(kind=IK), public, parameter :: real_precision = rp_safety_factor*precision(1.0_RK)+rp_addl_safety character(kind=CK, len=*), public, parameter :: root = achar(36, kind=CK) ( $ ) root for json_get_by_path_default integer(kind=IK), public, parameter :: rp_addl_safety = 2_IK integer(kind=IK), public, parameter :: rp_safety_factor = 1_IK integer(kind=IK), public, parameter :: seq_chunk_size = 256_IK chunk size for reading sequential files character(kind=CK, len=*), public, parameter :: single_quote = CK_\"'\" for JSONPath bracket-notation character(kind=CK, len=*), public, parameter :: slash = achar(47, kind=CK) JSON special character character(kind=CK, len=*), public, parameter :: space = CK_' ' space character character(kind=CK, len=*), public, parameter :: star = CK_'*' for invalid numbers and\nlist-directed real output character(kind=CK, len=*), public, parameter :: start_array = CK_'[' start of a JSON array character(kind=CK, len=*), public, parameter :: start_array_alt = CK_'(' alternate start of JSON array for json_get_by_path_default character(kind=CK, len=*), public, parameter :: start_object = CK_'{' start of a JSON object integer(kind=IK), public, parameter :: stream_chunk_size = 256_IK chunk size for reading stream files character(kind=CK, len=*), public, parameter :: this = CK_'@' ‘this’ for json_get_by_path_default character(kind=CK, len=*), public, parameter :: tilde = CK_'~' RFC 6901 escape character character(kind=CK, len=4), protected :: true_str = CK_'true' JSON logical True string integer(kind=IK), public, parameter :: unit2str = -1_IK unit number to cause stuff to be\noutput to strings rather than files.\nSee 9.5.6.12 in the F2003/08 standard character(kind=CK, len=26), protected :: upper = CK_'ABCDEFGHIJKLMNOPQRSTUVWXYZ' uppercase characters","tags":"","loc":"module/json_parameters.html"},{"title":"json_module – JSON-Fortran","text":"A Modern Fortran JSON (JavaScript Object Notation) API . This module provides access to json_value_module and json_file_module . For normal JSON -Fortran use, using this module\n is all that is necessary. Note that this module renames the kind definition variables from json_kinds from [ RK , IK , LK , CK , and CDK ] to [ json_RK , json_IK , json_LK , json_CK , and json_CDK ] so as to avoid namespace pollution with short\n variable names. Since USE_UCS4 is defined, this module also exports the\n operators == , /= , and // from json_string_utilities for CK and CDK operations. License JSON -Fortran is released under a BSD-style license.\n See the LICENSE file for details. History Joseph A. Levin : March 2012 : Original FSON code [retrieved on 12/2/2013]. Jacob Williams : 2/8/2014 : Extensive modifications to the original FSON code.\n The original F95 code was split into four files:\n fson_path_m.f95, fson_string_m.f95, fson_value_m.f95, and fson.f95.\n The new code has been extensively updated, refactored and combined into this\n one module (json_module.f90).\n Various Fortran 2003/2008 features are now used\n (e.g., allocatable strings, newunit, generic, class, and abstract interface). Development continues at: Github See also json-fortran development site json-fortran online documentation JSON website JSON validator Note Originally JSON -Fortran was entirely contained within this module. Uses json_string_utilities json_file_module json_value_module json_parameters json_kinds module~~json_module~~UsesGraph module~json_module json_module module~json_file_module json_file_module module~json_module->module~json_file_module module~json_kinds json_kinds module~json_module->module~json_kinds module~json_parameters json_parameters module~json_module->module~json_parameters module~json_string_utilities json_string_utilities module~json_module->module~json_string_utilities module~json_value_module json_value_module module~json_module->module~json_value_module module~json_file_module->module~json_kinds module~json_file_module->module~json_parameters module~json_file_module->module~json_string_utilities module~json_file_module->module~json_value_module iso_fortran_env iso_fortran_env module~json_file_module->iso_fortran_env module~json_kinds->iso_fortran_env module~json_parameters->module~json_kinds module~json_string_utilities->module~json_kinds module~json_string_utilities->module~json_parameters ieee_arithmetic ieee_arithmetic module~json_string_utilities->ieee_arithmetic module~json_value_module->module~json_kinds module~json_value_module->module~json_parameters module~json_value_module->module~json_string_utilities module~json_value_module->ieee_arithmetic module~json_value_module->iso_fortran_env Help Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\ndescended from. Dashed arrows point from a module or program unit to \nmodules which it uses. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Variables Type Visibility Attributes Name Initial character(kind=json_CK, len=*), private, parameter :: version = '8.5.2' JSON -Fortran version. Note This string should match the one in the .VERSION file (which is used\n for the documentation generation.) Functions public function json_fortran_version () result(ver) Returns the JSON -Fortran version string. Arguments None Return Value character(len=:), allocatable JSON -Fortran version string","tags":"","loc":"module/json_module.html"},{"title":"json_kinds – JSON-Fortran","text":"JSON -Fortran kind definitions. License JSON -Fortran is released under a BSD-style license.\n See the LICENSE file for details. Note -DUSE_UCS4 is an optional preprocessor flag.\n When present, Unicode support is enabled. Note that this\n is currently only supported with the gfortran compiler.\n Example: gfortran -DUSE_UCS4 ... The documentation given here assumes USE_UCS4 is defined. Warning CK and CDK are the JSON -Fortran character kind and JSON -Fortran default\n character kind respectively. Client code MUST ensure characters of kind=CK are used for all character variables and strings passed to the JSON -Fortran\n library EXCEPT for file names which must be of 'DEFAULT' character kind,\n provided here as CDK . In particular, any variable that is a: json path, string\n value or object name passed to the JSON -Fortran library MUST be of type CK . Note Most string literal constants of default kind are fine to pass as arguments to JSON -Fortran procedures since they have been overloaded to accept intent(in) character arguments of the default ( CDK ) kind. If you find a procedure which does\n not accept an intent(in) literal string argument of default kind, please file an issue on GitHub. Note The default real kind ( RK ) and the default integer kind ( IK ) can be\n changed using optional preprocessor flags. This library was built with kinds:\n real(kind=real64) [8 bytes]\n and\n integer(kind=int32) [4 bytes]\n . Note In addition to the real kind specified by RK , interfaces for\n the real kinds with less precision are also provided in the library,\n but all are converted to real(RK) variables internally. Uses iso_fortran_env module~~json_kinds~~UsesGraph module~json_kinds json_kinds iso_fortran_env iso_fortran_env module~json_kinds->iso_fortran_env Help Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\ndescended from. Dashed arrows point from a module or program unit to \nmodules which it uses. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Used by module~~json_kinds~~UsedByGraph module~json_kinds json_kinds module~json_file_module json_file_module module~json_file_module->module~json_kinds module~json_parameters json_parameters module~json_file_module->module~json_parameters module~json_string_utilities json_string_utilities module~json_file_module->module~json_string_utilities module~json_value_module json_value_module module~json_file_module->module~json_value_module module~json_module json_module module~json_module->module~json_kinds module~json_module->module~json_file_module module~json_module->module~json_parameters module~json_module->module~json_string_utilities module~json_module->module~json_value_module module~json_parameters->module~json_kinds module~json_string_utilities->module~json_kinds module~json_string_utilities->module~json_parameters module~json_value_module->module~json_kinds module~json_value_module->module~json_parameters module~json_value_module->module~json_string_utilities Help Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\ndescended from. Dashed arrows point from a module or program unit to \nmodules which it uses. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Variables Type Visibility Attributes Name Initial integer, public, parameter :: CDK = selected_char_kind('DEFAULT') Processor dependent ‘DEFAULT’ character kind.\nThis is 1 byte for the Intel and Gfortran compilers. integer, public, parameter :: CK = selected_char_kind(json_fortran_string_kind) Default character kind used by JSON -Fortran.\nIf ISO 10646 (UCS4) support is available, use that,\notherwise, gracefully fall back on ‘DEFAULT’ characters.\nCurrently only gfortran >= 4.9.2 will correctly support\nUCS4 which is stored in 4 bytes.\n(and perhaps others). integer, public, parameter :: IK = int32 Default integer kind if not specified [4 bytes] integer, public, parameter :: LK = logical_kinds(min(3, size(logical_kinds))) Default logical kind.\nThis is 4 bytes for the Intel and Gfortran compilers\n(and perhaps others).\nThe declaration ensures a valid kind\nif the compiler doesn’t have a logical_kinds(3). integer, public, parameter :: RK = real64 Default real kind if not specified [8 bytes] character(kind=CDK, len=*), private, parameter :: json_fortran_string_kind = 'ISO_10646' String kind preprocessor macro.\ngfortran compiler AND UCS4 support requested:","tags":"","loc":"module/json_kinds.html"},{"title":"json_string_utilities – JSON-Fortran","text":"JSON -Fortran support module for string manipulation. License JSON -Fortran is released under a BSD-style license.\n See the LICENSE file for details. Uses ieee_arithmetic json_kinds json_parameters module~~json_string_utilities~~UsesGraph module~json_string_utilities json_string_utilities ieee_arithmetic ieee_arithmetic module~json_string_utilities->ieee_arithmetic module~json_kinds json_kinds module~json_string_utilities->module~json_kinds module~json_parameters json_parameters module~json_string_utilities->module~json_parameters iso_fortran_env iso_fortran_env module~json_kinds->iso_fortran_env module~json_parameters->module~json_kinds Help Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\ndescended from. Dashed arrows point from a module or program unit to \nmodules which it uses. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Used by module~~json_string_utilities~~UsedByGraph module~json_string_utilities json_string_utilities module~json_file_module json_file_module module~json_file_module->module~json_string_utilities module~json_value_module json_value_module module~json_file_module->module~json_value_module module~json_module json_module module~json_module->module~json_string_utilities module~json_module->module~json_file_module module~json_module->module~json_value_module module~json_value_module->module~json_string_utilities Help Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\ndescended from. Dashed arrows point from a module or program unit to \nmodules which it uses. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Interfaces public interface operator(//) Provide a means to convert to UCS4 while\nconcatenating UCS4 and default strings private pure function ucs4_join_default (ucs4_str, def_str) result(res) Author Izaak Beekman CK // CDK operator. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: ucs4_str character(kind=CDK, len=*), intent(in) :: def_str Return Value character(kind=CK, len=len=(len(ucs4_str)+len(def_str))) private pure function default_join_ucs4 (def_str, ucs4_str) result(res) Author Izaak Beekman CDK // CK operator. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: def_str character(kind=CK, len=*), intent(in) :: ucs4_str Return Value character(kind=CK, len=len=(len(def_str)+len(ucs4_str))) public interface operator(/=) Provide a string /= operator that works\nwith mixed kinds private pure elemental function ucs4_neq_default (ucs4_str, def_str) result(res) Author Jacob Williams CK /= CDK operator. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: ucs4_str character(kind=CDK, len=*), intent(in) :: def_str Return Value logical(kind=LK) private pure elemental function default_neq_ucs4 (def_str, ucs4_str) result(res) Author Jacob Williams CDK /= CK operator. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: def_str character(kind=CK, len=*), intent(in) :: ucs4_str Return Value logical(kind=LK) public interface operator(==) Provide a string == operator that works\nwith mixed kinds private pure elemental function ucs4_comp_default (ucs4_str, def_str) result(res) Author Izaak Beekman CK == CDK operator. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: ucs4_str character(kind=CDK, len=*), intent(in) :: def_str Return Value logical(kind=LK) private pure elemental function default_comp_ucs4 (def_str, ucs4_str) result(res) Author Izaak Beekman CDK == CK operator. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: def_str character(kind=CK, len=*), intent(in) :: ucs4_str Return Value logical(kind=LK) public interface to_unicode Convert a ‘DEFAULT’ kind character input to\n‘ISO_10646’ kind and return it private pure function to_uni (str) Author Izaak Beekman Convert string to unicode (CDK to CK). Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: str Return Value character(kind=CK, len=len) private pure function to_uni_vec (str) Author Izaak Beekman Convert array of strings to unicode (CDK to CK). Note JW: may be able to remove this by making to_uni PURE ELEMENTAL ? Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in), dimension(:) :: str Return Value character(kind=CK, len=len), dimension(size(str)) Functions public pure function decode_rfc6901 (str) result(str_out) Decode a string from the “ JSON Pointer” RFC 6901 format. Read more… Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str Return Value character(kind=CK, len=:), allocatable private pure elemental function default_comp_ucs4 (def_str, ucs4_str) result(res) Author Izaak Beekman CDK == CK operator. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: def_str character(kind=CK, len=*), intent(in) :: ucs4_str Return Value logical(kind=LK) private pure function default_join_ucs4 (def_str, ucs4_str) result(res) Author Izaak Beekman CDK // CK operator. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: def_str character(kind=CK, len=*), intent(in) :: ucs4_str Return Value character(kind=CK, len=len=(len(def_str)+len(ucs4_str))) private pure elemental function default_neq_ucs4 (def_str, ucs4_str) result(res) Author Jacob Williams CDK /= CK operator. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: def_str character(kind=CK, len=*), intent(in) :: ucs4_str Return Value logical(kind=LK) public pure function encode_rfc6901 (str) result(str_out) Encode a string into the “ JSON Pointer” RFC 6901 format. Read more… Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str Return Value character(kind=CK, len=:), allocatable public pure function lowercase_string (str) result(s_lower) Author Jacob Williams Returns lowercase version of the CK string. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str input string Return Value character(kind=CK, len=len=(len(str))) lowercase version of the string private pure function to_uni (str) Author Izaak Beekman Convert string to unicode (CDK to CK). Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: str Return Value character(kind=CK, len=len) private pure function to_uni_vec (str) Author Izaak Beekman Convert array of strings to unicode (CDK to CK). Read more… Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in), dimension(:) :: str Return Value character(kind=CK, len=len), dimension(size(str)) private pure elemental function ucs4_comp_default (ucs4_str, def_str) result(res) Author Izaak Beekman CK == CDK operator. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: ucs4_str character(kind=CDK, len=*), intent(in) :: def_str Return Value logical(kind=LK) private pure function ucs4_join_default (ucs4_str, def_str) result(res) Author Izaak Beekman CK // CDK operator. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: ucs4_str character(kind=CDK, len=*), intent(in) :: def_str Return Value character(kind=CK, len=len=(len(ucs4_str)+len(def_str))) private pure elemental function ucs4_neq_default (ucs4_str, def_str) result(res) Author Jacob Williams CK /= CDK operator. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: ucs4_str character(kind=CDK, len=*), intent(in) :: def_str Return Value logical(kind=LK) public pure function valid_json_hex (str) result(valid) Author Jacob Williams Date 6/14/2014 Returns true if the string is a valid 4-digit hex string. Read more… Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str the string to check. Return Value logical(kind=LK) is str a value 4-digit hex string Subroutines private subroutine compact_real_string (str) Author Izaak Beekman Date 02/24/2015 Compact a string representing a real number, so that\n the same value is displayed with fewer characters. Read more… Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(inout) :: str string representation of a real number. public subroutine escape_string (str_in, str_out, escape_solidus) Author Jacob Williams Date 1/21/2014 Add the escape characters to a string for adding to JSON . Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str_in character(kind=CK, len=:), intent(out), allocatable :: str_out logical(kind=LK), intent(in) :: escape_solidus if the solidus (forward slash)\nis also to be escaped public pure subroutine integer_to_string (ival, int_fmt, str) Author Jacob Williams Date 12/4/2013 Convert an integer to a string. Arguments Type Intent Optional Attributes Name integer(kind=IK), intent(in) :: ival integer value. character(kind=CDK, len=*), intent(in) :: int_fmt format for integers character(kind=CK, len=*), intent(out) :: str ival converted to a string. public subroutine real_to_string (rval, real_fmt, compact_real, non_normals_to_null, str) Author Jacob Williams Date 12/4/2013 Convert a real value to a string. Read more… Arguments Type Intent Optional Attributes Name real(kind=RK), intent(in) :: rval real value. character(kind=CDK, len=*), intent(in) :: real_fmt format for real numbers logical(kind=LK), intent(in) :: compact_real compact the string so that it is\ndisplayed with fewer characters logical(kind=LK), intent(in) :: non_normals_to_null If True, NaN, Infinity, or -Infinity are returned as null .\nIf False, the string value will be returned in quotes\n(e.g., “NaN”, “Infinity”, or “-Infinity” ) character(kind=CK, len=*), intent(out) :: str rval converted to a string. public pure subroutine replace_string (str, s1, s2) Replace all occurrences of s1 in str with s2 . Read more… Arguments Type Intent Optional Attributes Name character(kind=CK, len=:), intent(inout), allocatable :: str character(kind=CK, len=*), intent(in) :: s1 character(kind=CK, len=*), intent(in) :: s2 public subroutine string_to_integer (str, ival, status_ok) Convert a string into an integer. Read more… Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str the string to convert to an integer integer(kind=IK), intent(out) :: ival the integer value logical(kind=LK), intent(out) :: status_ok true if there were no errors public subroutine string_to_real (str, use_quiet_nan, rval, status_ok) Author Jacob Williams Date 1/19/2014 Convert a string into a real(RK) . Read more… Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str the string to convert to a real logical(kind=LK), intent(in) :: use_quiet_nan if true, return NaN’s as ieee_quiet_nan .\notherwise, use ieee_signaling_nan . real(kind=RK), intent(out) :: rval str converted to a real value logical(kind=LK), intent(out) :: status_ok true if there were no errors public subroutine unescape_string (str, error_message) Remove the escape characters from a JSON string and return it. Read more… Arguments Type Intent Optional Attributes Name character(kind=CK, len=:), intent(inout), allocatable :: str Read more… character(kind=CK, len=:), intent(out), allocatable :: error_message will be allocated if\nthere was an error","tags":"","loc":"module/json_string_utilities.html"},{"title":"json_value_module – JSON-Fortran","text":"This module provides a low-level interface for manipulation of JSON data.\n The two public entities are json_value , and json_core .\n The json_file_module provides a higher-level interface to some\n of these routines. License JSON -Fortran is released under a BSD-style license.\n See the LICENSE file for details. Uses json_string_utilities ieee_arithmetic json_parameters iso_fortran_env json_kinds module~~json_value_module~~UsesGraph module~json_value_module json_value_module ieee_arithmetic ieee_arithmetic module~json_value_module->ieee_arithmetic iso_fortran_env iso_fortran_env module~json_value_module->iso_fortran_env module~json_kinds json_kinds module~json_value_module->module~json_kinds module~json_parameters json_parameters module~json_value_module->module~json_parameters module~json_string_utilities json_string_utilities module~json_value_module->module~json_string_utilities module~json_kinds->iso_fortran_env module~json_parameters->module~json_kinds module~json_string_utilities->ieee_arithmetic module~json_string_utilities->module~json_kinds module~json_string_utilities->module~json_parameters Help Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\ndescended from. Dashed arrows point from a module or program unit to \nmodules which it uses. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Used by module~~json_value_module~~UsedByGraph module~json_value_module json_value_module module~json_file_module json_file_module module~json_file_module->module~json_value_module module~json_module json_module module~json_module->module~json_value_module module~json_module->module~json_file_module Help Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\ndescended from. Dashed arrows point from a module or program unit to \nmodules which it uses. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Variables Type Visibility Attributes Name Initial character(kind=CDK, len=*), private, parameter :: access_spec = 'SEQUENTIAL' If Unicode is not enabled, then JSON files are opened using access=’STREAM’ and\nform=’UNFORMATTED’. This allows the file to\nbe read faster. character(kind=CDK, len=*), private, parameter :: form_spec = 'FORMATTED' If Unicode is not enabled, then JSON files are opened using access=’STREAM’ and\nform=’UNFORMATTED’. This allows the file to\nbe read faster. logical, private, parameter :: use_unformatted_stream = .false. If Unicode is not enabled, then JSON files are opened using access=’STREAM’ and\nform=’UNFORMATTED’. This allows the file to\nbe read faster. Interfaces public interface json_core Structure constructor to initialize a json_core object Example type ( json_file ) :: json_core json_core = json_core () private function initialize_json_core (verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) result(json_core_object) Author Jacob Williams Date 4/26/2016 Function constructor for a json_core .\n This is just a wrapper for json_initialize . Note initialize_json_core , json_initialize , initialize_json_core_in_file , and initialize_json_file all have a similar interface. Arguments Type Intent Optional Attributes Name logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Return Value type( json_core ) Abstract Interfaces abstract interface public subroutine json_array_callback_func(json, element, i, count) Array element callback function. Used by json_get_array Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: element integer(kind=IK), intent(in) :: i index integer(kind=IK), intent(in) :: count size of array abstract interface public subroutine json_traverse_callback_func(json, p, finished) Callback function used by json_traverse Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p logical(kind=LK), intent(out) :: finished set true to stop traversing Derived Types type, public :: json_core To access the core routines for manipulation\n of json_value pointer variables. This class allows\n for thread safe use of the module. Read more… Components Type Visibility Attributes Name Initial logical(kind=LK), private :: allow_comments = .true. if true, any comments will be ignored when\nparsing a file. The comment tokens are defined\nby the comment_char character variable. logical(kind=LK), private :: allow_duplicate_keys = .true. If False, then after parsing, if any\nduplicate keys are found, an error is\nthrown. A call to json_value_validate will also check for duplicates. If True\n[default] then no special checks are done logical(kind=LK), private :: allow_trailing_comma = .true. Allow a single trailing comma in arrays and objects. logical(kind=LK), private :: case_sensitive_keys = .true. if name and path comparisons\nare case sensitive. integer(kind=IK), private :: char_count = 0 character position in the current line character(kind=CK, len=:), private, allocatable :: chunk a chunk read from a stream file\nwhen use_unformatted_stream=True character(kind=CK, len=:), private, allocatable :: comment_char comment tokens when allow_comments is true.\nExamples: ‘ ! ’ or ‘ # ’.\nDefault is CK_'/!#' . logical(kind=LK), private :: compact_real = .true. to use the “compact” form of real\nnumbers for output logical(kind=LK), private :: compress_vectors = .false. If true, then arrays of integers,\nnulls, reals, & logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary] character(kind=CK, len=:), private, allocatable :: err_message the error message.\nif exception_thrown=False then\nthis variable is not allocated. logical(kind=LK), private :: escape_solidus = .false. If True then the solidus “ / ” is always escaped\n(“ \\/ ”) when serializing JSON .\nIf False [default], then it is not escaped.\nNote that this option does not affect parsing\n(both escaped and unescaped versions are still\nvalid in all cases). logical(kind=LK), private :: exception_thrown = .false. The error flag. Will be set to true\nwhen an error is thrown in the class.\nMany of the methods will check this\nand return immediately if it is true. integer, private :: filesize = 0 the file size when when use_unformatted_stream=True integer, private :: ichunk = 0 index in chunk for pop_char when use_unformatted_stream=True integer(kind=IK), private :: ipos = 1 for allocatable strings: next character to read logical(kind=LK), private :: is_verbose = .false. if true, all exceptions are\nimmediately printed to console. integer(kind=IK), private :: line_count = 1 lines read counter logical(kind=LK), private :: no_whitespace = .false. when printing a JSON string, don’t include\nnon-significant spaces or line breaks.\nIf true, the entire structure will be\nprinted on one line. logical(kind=LK), private :: non_normals_to_null = .false. How to serialize NaN, Infinity,\nand -Infinity real values: Read more… integer(kind=IK), private :: null_to_real_mode = 2_IK if strict_type_checking=false : Read more… integer(kind=IK), private :: path_mode = 1_IK How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), private :: path_separator = dot The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nNote: if path_mode/=1 then this is ignored. character(kind=CK, len=pushed_char_size), private :: pushed_char = CK_'' used when parsing\nlines in file integer(kind=IK), private :: pushed_index = 0 used when parsing lines in file character(kind=CDK, len=:), private, allocatable :: real_fmt the format string to use\nfor converting real numbers to strings.\nIt can be set in json_initialize ,\nand used in json_value_print If not set, then default_real_fmt is used instead. integer(kind=IK), private :: spaces_per_tab = 2 number of spaces for indenting logical(kind=LK), private :: stop_on_error = .false. if true, then the program is\nstopped immediately when an\nexception is raised. logical(kind=LK), private :: strict_integer_type_checking = .true. Read more… logical(kind=LK), private :: strict_type_checking = .false. if true, then no type conversions are done\nin the get routines if the actual variable\ntype is different from the return type (for\nexample, integer to real). logical(kind=LK), private :: trailing_spaces_significant = .false. for name and path comparisons, if trailing\nspace is to be considered significant. logical(kind=LK), private :: unescaped_strings = .true. If false, then the escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. logical(kind=LK), private :: use_quiet_nan = .true. if true [default], null_to_real_mode=2 and string_to_real will use ieee_quiet_nan for NaN values. If false, ieee_signaling_nan will be used. Constructor Structure constructor to initialize a json_core object Read more… private\n\n \n function initialize_json_core (verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) Function constructor for a json_core .\n This is just a wrapper for json_initialize . Read more… Type-Bound Procedures generic, public :: add => json_value_add_member , json_value_add_null , wrap_json_value_add_null , json_value_add_integer , wrap_json_value_add_integer , json_value_add_integer_vec , wrap_json_value_add_integer_vec , json_value_add_real32 , wrap_json_value_add_real32 , json_value_add_real32_vec , wrap_json_value_add_real32_vec , json_value_add_real , wrap_json_value_add_real , json_value_add_real_vec , wrap_json_value_add_real_vec , json_value_add_logical , wrap_json_value_add_logical , json_value_add_logical_vec , wrap_json_value_add_logical_vec , json_value_add_string , wrap_json_value_add_string , json_value_add_string_vec , wrap_json_value_add_string_vec Add objects to a linked list of json_value s. Read more… generic, public :: add => json_value_add_string_name_ascii , json_value_add_string_val_ascii , json_value_add_string_vec_name_ascii , json_value_add_string_vec_val_ascii generic, public :: add_by_path => json_add_member_by_path , wrap_json_add_member_by_path , json_add_integer_by_path , wrap_json_add_integer_by_path , json_add_real32_by_path , wrap_json_add_real32_by_path , json_add_real_by_path , wrap_json_add_real_by_path , json_add_logical_by_path , wrap_json_add_logical_by_path , json_add_string_by_path , wrap_json_add_string_by_path , json_add_integer_vec_by_path , wrap_json_add_integer_vec_by_path , json_add_real32_vec_by_path , wrap_json_add_real32_vec_by_path , json_add_real_vec_by_path , wrap_json_add_real_vec_by_path , json_add_logical_vec_by_path , wrap_json_add_logical_vec_by_path , json_add_string_vec_by_path , wrap_json_add_string_vec_by_path Add variables to a json_value linked list\n by specifying their paths. Read more… generic, public :: add_by_path => json_add_string_by_path_value_ascii , json_add_string_by_path_path_ascii , json_add_string_vec_by_path_value_ascii , json_add_string_vec_by_path_path_ascii procedure, private :: annotate_invalid_json procedure, public :: check_children_for_duplicate_keys => json_check_children_for_duplicate_keys ../../ Check a json_value object’s\nchildren for duplicate keys procedure, public :: check_for_duplicate_keys => json_check_all_for_duplicate_keys ../../ Check entire JSON structure\nfor duplicate keys (recursively) procedure, public :: check_for_errors => json_check_for_errors ../../ check for error and get error message procedure, public :: clear_exceptions => json_clear_exceptions ../../ clear exceptions procedure, public :: clone => json_clone ../../ clone a JSON structure (deep copy) procedure, private :: convert procedure, public :: count => json_count ../../ count the number of children generic, public :: create => json_create_by_path , wrap_json_create_by_path Create a json_value linked list using the\n path to the variables. Optionally return a\n pointer to the variable. Read more… generic, public :: create_array => json_value_create_array , wrap_json_value_create_array Allocate a json_value pointer and make it an array variable.\n The pointer should not already be allocated. Read more… generic, public :: create_double => json_value_create_real , wrap_json_value_create_real This is equivalent to create_real ,\nand is here only for backward compatibility. generic, public :: create_double => json_value_create_real32 , wrap_json_value_create_real32 generic, public :: create_integer => json_value_create_integer , wrap_json_value_create_integer Allocate a json_value pointer and make it an integer variable.\n The pointer should not already be allocated. Read more… generic, public :: create_logical => json_value_create_logical , wrap_json_value_create_logical Allocate a json_value pointer and make it a logical variable.\n The pointer should not already be allocated. Read more… generic, public :: create_null => json_value_create_null , wrap_json_value_create_null Allocate a json_value pointer and make it a null variable.\n The pointer should not already be allocated. Read more… generic, public :: create_object => json_value_create_object , wrap_json_value_create_object Allocate a json_value pointer and make it an object variable.\n The pointer should not already be allocated. Read more… generic, public :: create_real => json_value_create_real , wrap_json_value_create_real Allocate a json_value pointer and make it a real variable.\n The pointer should not already be allocated. Read more… generic, public :: create_real => json_value_create_real32 , wrap_json_value_create_real32 generic, public :: create_string => json_value_create_string , wrap_json_value_create_string Allocate a json_value pointer and make it a string variable.\n The pointer should not already be allocated. Read more… generic, public :: deserialize => json_parse_string , wrap_json_parse_string Parse the JSON string and populate the json_value tree. generic, public :: destroy => json_value_destroy , destroy_json_core Destructor routine for a json_value pointer.\n This must be called explicitly if it is no longer needed,\n before it goes out of scope. Otherwise, a memory leak will result. Read more… procedure, private :: destroy_json_core procedure, public :: failed => json_failed ../../ check for error generic, public :: get => json_get_by_path , wrap_json_get_by_path , json_get_integer , json_get_integer_by_path , wrap_json_get_integer_by_path , json_get_integer_vec , json_get_integer_vec_by_path , wrap_json_get_integer_vec_by_path , json_get_real32 , json_get_real32_by_path , wrap_json_get_real32_by_path , json_get_real32_vec , json_get_real32_vec_by_path , wrap_json_get_real32_vec_by_path , json_get_real , json_get_real_by_path , wrap_json_get_real_by_path , json_get_real_vec , json_get_real_vec_by_path , wrap_json_get_real_vec_by_path , json_get_logical , json_get_logical_by_path , wrap_json_get_logical_by_path , json_get_logical_vec , json_get_logical_vec_by_path , wrap_json_get_logical_vec_by_path , json_get_string , json_get_string_by_path , wrap_json_get_string_by_path , json_get_string_vec , json_get_string_vec_by_path , wrap_json_get_string_vec_by_path , json_get_alloc_string_vec , json_get_alloc_string_vec_by_path , wrap_json_get_alloc_string_vec_by_path , json_get_array , json_get_array_by_path , wrap_json_get_array_by_path Get data from a json_value linked list. Read more… generic, public :: get_child => json_value_get_child_by_index , json_value_get_child , json_value_get_child_by_name , wrap_json_value_get_child_by_name Return a child of a json_value structure. procedure, private, nopass :: get_current_line_from_file_sequential procedure, private :: get_current_line_from_file_stream procedure, public :: get_next => json_get_next ../../ get pointer to json_value next procedure, public :: get_parent => json_get_parent ../../ get pointer to json_value parent generic, public :: get_path => json_get_path , wrap_json_get_path ../../ get the path to a JSON variable in a structure: procedure, public :: get_previous => json_get_previous ../../ get pointer to json_value previous procedure, public :: get_tail => json_get_tail ../../ get pointer to json_value tail generic, public :: info => json_info , json_info_by_path , wrap_json_info_by_path get info about a json_value procedure, public :: initialize => json_initialize ../../ to initialize some parsing parameters generic, public :: insert_after => json_value_insert_after , json_value_insert_after_child_by_index ../../ insert a new element after an existing one,\nupdating the JSON structure accordingly procedure, public :: is_child_of => json_value_is_child_of Check if a json_value is a\ndescendant of another. procedure, private :: is_vector => json_is_vector procedure, private :: json_add_integer_by_path procedure, private :: json_add_integer_vec_by_path procedure, private :: json_add_logical_by_path procedure, private :: json_add_logical_vec_by_path procedure, private :: json_add_member_by_path procedure, private :: json_add_real32_by_path procedure, private :: json_add_real32_vec_by_path procedure, private :: json_add_real_by_path procedure, private :: json_add_real_vec_by_path procedure, private :: json_add_string_by_path procedure, private :: json_add_string_by_path_path_ascii procedure, private :: json_add_string_by_path_value_ascii procedure, private :: json_add_string_vec_by_path procedure, private :: json_add_string_vec_by_path_path_ascii procedure, private :: json_add_string_vec_by_path_value_ascii procedure, private :: json_create_by_path procedure, private :: json_get_alloc_string_vec procedure, private :: json_get_alloc_string_vec_by_path procedure, private :: json_get_array procedure, private :: json_get_array_by_path procedure, private :: json_get_by_path procedure, private :: json_get_by_path_default procedure, private :: json_get_by_path_jsonpath_bracket procedure, private :: json_get_by_path_rfc6901 procedure, private :: json_get_integer procedure, private :: json_get_integer_by_path procedure, private :: json_get_integer_vec procedure, private :: json_get_integer_vec_by_path procedure, private :: json_get_logical procedure, private :: json_get_logical_by_path procedure, private :: json_get_logical_vec procedure, private :: json_get_logical_vec_by_path procedure, private :: json_get_path procedure, private :: json_get_real procedure, private :: json_get_real32 procedure, private :: json_get_real32_by_path procedure, private :: json_get_real32_vec procedure, private :: json_get_real32_vec_by_path procedure, private :: json_get_real_by_path procedure, private :: json_get_real_vec procedure, private :: json_get_real_vec_by_path procedure, private :: json_get_string procedure, private :: json_get_string_by_path procedure, private :: json_get_string_vec procedure, private :: json_get_string_vec_by_path procedure, private :: json_info procedure, private :: json_info_by_path procedure, private :: json_matrix_info procedure, private :: json_matrix_info_by_path procedure, private :: json_parse_file procedure, private :: json_parse_string procedure, private :: json_print_to_console procedure, private :: json_print_to_filename procedure, private :: json_print_to_unit procedure, private :: json_rename_by_path procedure, private :: json_rename_by_path_name_ascii procedure, private :: json_rename_by_path_path_ascii procedure, private :: json_string_info procedure, private :: json_throw_exception procedure, private :: json_update_integer procedure, private :: json_update_logical procedure, private :: json_update_real procedure, private :: json_update_real32 procedure, private :: json_update_string procedure, private :: json_update_string_name_ascii procedure, private :: json_update_string_val_ascii procedure, private :: json_valid_path procedure, private :: json_value_add_integer procedure, private :: json_value_add_integer_vec procedure, private :: json_value_add_logical procedure, private :: json_value_add_logical_vec procedure, private :: json_value_add_member procedure, private :: json_value_add_null procedure, private :: json_value_add_real procedure, private :: json_value_add_real32 procedure, private :: json_value_add_real32_vec procedure, private :: json_value_add_real_vec procedure, private :: json_value_add_string procedure, private :: json_value_add_string_name_ascii procedure, private :: json_value_add_string_val_ascii procedure, private :: json_value_add_string_vec procedure, private :: json_value_add_string_vec_name_ascii procedure, private :: json_value_add_string_vec_val_ascii procedure, private, nopass :: json_value_clone_func procedure, private :: json_value_create_array procedure, private :: json_value_create_integer procedure, private :: json_value_create_logical procedure, private :: json_value_create_null procedure, private :: json_value_create_object procedure, private :: json_value_create_real procedure, private :: json_value_create_real32 procedure, private :: json_value_create_string procedure, private :: json_value_destroy procedure, private :: json_value_get_child procedure, private :: json_value_get_child_by_index procedure, private :: json_value_get_child_by_name procedure, private :: json_value_insert_after procedure, private :: json_value_insert_after_child_by_index procedure, private :: json_value_print procedure, private :: json_value_remove_if_present procedure, private :: json_value_rename generic, public :: load => json_parse_file Parse the JSON file and populate the json_value tree. generic, public :: matrix_info => json_matrix_info , json_matrix_info_by_path , wrap_json_matrix_info_by_path get matrix info about a json_value procedure, private :: name_equal procedure, private :: name_strings_equal generic, public :: parse => json_parse_file , json_parse_string , wrap_json_parse_string ../../ Same as load and deserialize but only here for backward compatibility. procedure, private :: parse_array procedure, private :: parse_end => json_parse_end procedure, private :: parse_for_chars procedure, private :: parse_number procedure, private :: parse_object procedure, private :: parse_string procedure, private :: parse_value procedure, private :: pop_char procedure, private :: prepare_parser => json_prepare_parser generic, public :: print => json_print_to_console , json_print_to_unit , json_print_to_filename Print the json_value to an output unit or file. Read more… procedure, public :: print_error_message => json_print_error_message ../../ simply routine to print error\nmessages procedure, public :: print_to_string => json_value_to_string ../../ The same as serialize , but only here for backward compatibility procedure, private :: push_char procedure, public :: remove => json_value_remove Remove a json_value from a\nlinked-list structure. generic, public :: remove_if_present => json_value_remove_if_present , wrap_json_value_remove_if_present ../../ If the child variable is present, then remove it. generic, public :: rename => json_value_rename , wrap_json_value_rename , json_rename_by_path , wrap_json_rename_by_path Rename a json_value variable. generic, public :: rename => json_rename_by_path_name_ascii , json_rename_by_path_path_ascii procedure, public :: replace => json_value_replace Replace a json_value in a\nlinked-list structure. procedure, public :: reverse => json_value_reverse ../../ Reverse the order of the children\nof an array of object. procedure, public :: serialize => json_value_to_string Print the json_value structure to an allocatable string generic, public :: string_info => json_string_info get string info about a json_value procedure, private :: string_to_dble procedure, private :: string_to_int procedure, public :: swap => json_value_swap Swap two json_value pointers\nin a structure (or two different\nstructures). generic, public :: throw_exception => json_throw_exception , wrap_json_throw_exception ../../ Throw an exception. procedure, private :: to_array procedure, private :: to_integer procedure, private :: to_logical procedure, private :: to_null procedure, private :: to_object procedure, private :: to_real procedure, private :: to_string procedure, public :: traverse => json_traverse ../../ to traverse all elements of a JSON structure generic, public :: update => json_update_logical , wrap_json_update_logical , json_update_real32 , wrap_json_update_real32 , json_update_real , wrap_json_update_real , json_update_integer , wrap_json_update_integer , json_update_string , wrap_json_update_string These are like the add methods, except if a variable with the\n same path is already present, then its value is simply updated.\n Note that currently, these only work for scalar variables.\n These routines can also change the variable’s type (but an error will be\n thrown if the existing variable is not a scalar). Read more… generic, public :: update => json_update_string_name_ascii , json_update_string_val_ascii generic, public :: valid_path => json_valid_path , wrap_json_valid_path ../../ verify if a path is valid\n(i.e., a variable with this path exists in the file). procedure, public :: validate => json_value_validate Check that a json_value linked\nlist is valid (i.e., is properly\nconstructed). This may be useful\nif it has been constructed externally. procedure, private :: wrap_json_add_integer_by_path procedure, private :: wrap_json_add_integer_vec_by_path procedure, private :: wrap_json_add_logical_by_path procedure, private :: wrap_json_add_logical_vec_by_path procedure, private :: wrap_json_add_member_by_path procedure, private :: wrap_json_add_real32_by_path procedure, private :: wrap_json_add_real32_vec_by_path procedure, private :: wrap_json_add_real_by_path procedure, private :: wrap_json_add_real_vec_by_path procedure, private :: wrap_json_add_string_by_path procedure, private :: wrap_json_add_string_vec_by_path procedure, private :: wrap_json_create_by_path procedure, private :: wrap_json_get_alloc_string_vec_by_path procedure, private :: wrap_json_get_array_by_path procedure, private :: wrap_json_get_by_path procedure, private :: wrap_json_get_integer_by_path procedure, private :: wrap_json_get_integer_vec_by_path procedure, private :: wrap_json_get_logical_by_path procedure, private :: wrap_json_get_logical_vec_by_path procedure, private :: wrap_json_get_path procedure, private :: wrap_json_get_real32_by_path procedure, private :: wrap_json_get_real32_vec_by_path procedure, private :: wrap_json_get_real_by_path procedure, private :: wrap_json_get_real_vec_by_path procedure, private :: wrap_json_get_string_by_path procedure, private :: wrap_json_get_string_vec_by_path procedure, private :: wrap_json_info_by_path procedure, private :: wrap_json_matrix_info_by_path procedure, private :: wrap_json_parse_string procedure, private :: wrap_json_rename_by_path procedure, private :: wrap_json_throw_exception procedure, private :: wrap_json_update_integer procedure, private :: wrap_json_update_logical procedure, private :: wrap_json_update_real procedure, private :: wrap_json_update_real32 procedure, private :: wrap_json_update_string procedure, private :: wrap_json_valid_path procedure, private :: wrap_json_value_add_integer procedure, private :: wrap_json_value_add_integer_vec procedure, private :: wrap_json_value_add_logical procedure, private :: wrap_json_value_add_logical_vec procedure, private :: wrap_json_value_add_null procedure, private :: wrap_json_value_add_real procedure, private :: wrap_json_value_add_real32 procedure, private :: wrap_json_value_add_real32_vec procedure, private :: wrap_json_value_add_real_vec procedure, private :: wrap_json_value_add_string procedure, private :: wrap_json_value_add_string_vec procedure, private :: wrap_json_value_create_array procedure, private :: wrap_json_value_create_integer procedure, private :: wrap_json_value_create_logical procedure, private :: wrap_json_value_create_null procedure, private :: wrap_json_value_create_object procedure, private :: wrap_json_value_create_real procedure, private :: wrap_json_value_create_real32 procedure, private :: wrap_json_value_create_string procedure, private :: wrap_json_value_get_child_by_name procedure, private :: wrap_json_value_remove_if_present procedure, private :: wrap_json_value_rename type, public, sequence :: json_value Type used to construct the linked-list JSON structure.\n Normally, this should always be a pointer variable.\n This type should only be used by an instance of json_core . Read more… Components Type Visibility Attributes Name Initial type( json_value ), private, pointer :: children => null() first child item of this real(kind=RK), private, allocatable :: dbl_value real data for this variable integer(kind=IK), private, allocatable :: int_value integer data for this variable logical(kind=LK), private, allocatable :: log_value logical data for this variable integer(kind=IK), private :: n_children = 0 number of children character(kind=CK, len=:), private, allocatable :: name variable name (unescaped) type( json_value ), private, pointer :: next => null() next item in the list type( json_value ), private, pointer :: parent => null() parent item of this type( json_value ), private, pointer :: previous => null() previous item in the list character(kind=CK, len=:), private, allocatable :: str_value string data for this variable\n(unescaped) type( json_value ), private, pointer :: tail => null() last child item of this integer(kind=IK), private :: var_type = json_unknown variable type Functions private function initialize_json_core (verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) result(json_core_object) Author Jacob Williams Date 4/26/2016 Function constructor for a json_core .\n This is just a wrapper for json_initialize . Read more… Arguments Type Intent Optional Attributes Name logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Return Value type( json_core ) private function json_count (json, p) result(count) Count the number of children in the object or array. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p this should normally be a json_object or a json_array . For any other variable type this will return 0. Return Value integer(kind=IK) number of children in p . private pure function json_failed (json) result(failed) Author Jacob Williams Date 12/5/2013 Logical function to indicate if an exception has been thrown in a json_core . Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(in) :: json Return Value logical(kind=LK) will be true if an exception\nhas been thrown. private function json_is_vector (json, p) result(is_vector) Returns true if all the children are the same type (and a scalar).\nNote that integers and reals are considered the same type for this purpose.\nThis routine is used for the compress_vectors option. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p Return Value logical(kind=LK) if all elements of a vector\nare scalars of the same type private function json_valid_path (json, p, path) result(found) Returns true if the path is present in the p JSON structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable Return Value logical(kind=LK) true if it was found private function json_value_is_child_of (json, p1, p2) result(is_child_of) Author Jacob Williams Date 4/28/2016 Returns True if p2 is a descendant of p1 (i.e, a child, or a child of child, etc.) Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p1 type( json_value ), pointer :: p2 Return Value logical(kind=LK) private function name_equal (json, p, name) result(is_equal) Author Jacob Williams Returns true if name is equal to p%name , using the specified\n settings for case sensitivity and trailing whitespace. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in) :: p the json object character(kind=CK, len=*), intent(in) :: name the name to check for Return Value logical(kind=LK) true if the string are\nlexically equal private function name_strings_equal (json, name1, name2) result(is_equal) Author Jacob Williams Date 8/25/2017 Returns true if the name strings name1 is equal to name2 , using\nthe specified settings for case sensitivity and trailing whitespace. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CK, len=*), intent(in) :: name1 the name to check character(kind=CK, len=*), intent(in) :: name2 the name to check Return Value logical(kind=LK) true if the string are\nlexically equal private function string_to_dble (json, str) result(rval) Convert a string into a real(RK) value. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CK, len=*), intent(in) :: str a string Return Value real(kind=RK) str converted to a real(RK) private function string_to_int (json, str) result(ival) Convert a string into an integer. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CK, len=*), intent(in) :: str a string Return Value integer(kind=IK) str converted to an integer private function wrap_json_valid_path (json, p, path) result(found) Alternate version of json_valid_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list character(kind=CDK, len=*), intent(in) :: path path to the variable Return Value logical(kind=LK) true if it was found Subroutines private subroutine annotate_invalid_json (json, iunit, str) Generate a warning message if there was an error parsing a JSON file or string. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: iunit file unit number character(kind=CK, len=*), intent(in) :: str string with JSON data private subroutine convert (json, p, var_type) Convert an existing JSON variable p to a different variable type .\n The existing variable (and its children) is destroyed. It is replaced\n in the structure by a new variable of type var_type (which can be a json_null , json_object or json_array ). Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p the variable to convert integer(kind=IK), intent(in) :: var_type the variable type to convert p to private subroutine destroy_json_core (me) Author Jacob Williams Date 4/17/2016 Destructor for the json_core type. Arguments Type Intent Optional Attributes Name class( json_core ), intent(out) :: me private pure subroutine destroy_json_data (d) Author Jacob Williams Destroy the data within a json_value , and reset type to json_unknown . Arguments Type Intent Optional Attributes Name type( json_value ), intent(inout) :: d private subroutine flag_not_found (found) If found is present, set it it false. Arguments Type Intent Optional Attributes Name logical(kind=LK), intent(out), optional :: found private subroutine get_current_line_from_file_sequential (iunit, line) Author Jacob Williams Rewind the file to the beginning of the current line, and return this line.\nThe file is assumed to be opened.\nThis is the SEQUENTIAL version (see also get_current_line_from_file_stream ). Arguments Type Intent Optional Attributes Name integer(kind=IK), intent(in) :: iunit file unit number character(kind=CK, len=:), intent(out), allocatable :: line current line private subroutine get_current_line_from_file_stream (json, iunit, line) Author Jacob Williams Rewind the file to the beginning of the current line, and return this line.\nThe file is assumed to be opened.\nThis is the STREAM version (see also get_current_line_from_file_sequential ). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: iunit file unit number character(kind=CK, len=:), intent(out), allocatable :: line current line private subroutine json_add_integer_by_path (json, me, path, value, found, was_created) Add an integer value to a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_integer_vec_by_path (json, me, path, value, found, was_created) Wrapper to json_add_integer_by_path for adding an integer vector by path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_logical_by_path (json, me, path, value, found, was_created) Add a logical value to a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_logical_vec_by_path (json, me, path, value, found, was_created) Wrapper to json_add_logical_by_path for adding a logical vector by path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_member_by_path (json, me, path, p, found, was_created) Add a new member ( json_value pointer) to a JSON structure, given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(in), pointer :: p the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_real32_by_path (json, me, path, value, found, was_created) Alternate version of json_add_real_by_path where value=real32. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_real32_vec_by_path (json, me, path, value, found, was_created) Wrapper to json_add_real_by_path for adding a real vector by path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_real_by_path (json, me, path, value, found, was_created) Add an real value to a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_real_vec_by_path (json, me, path, value, found, was_created) Wrapper to json_add_real_by_path for adding a real vector by path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_string_by_path (json, me, path, value, found, was_created, trim_str, adjustl_str) Add a string value to a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element private subroutine json_add_string_by_path_path_ascii (json, me, path, value, found, was_created, trim_str, adjustl_str) Wrapper for json_add_string_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element private subroutine json_add_string_by_path_value_ascii (json, me, path, value, found, was_created, trim_str, adjustl_str) Wrapper for json_add_string_by_path where “value” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element private subroutine json_add_string_vec_by_path (json, me, path, value, found, was_created, ilen, trim_str, adjustl_str) Wrapper to json_add_string_by_path for adding a string vector by path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element private subroutine json_add_string_vec_by_path_path_ascii (json, me, path, value, found, was_created, ilen, trim_str, adjustl_str) Wrapper for json_add_string_vec_by_path where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element private subroutine json_add_string_vec_by_path_value_ascii (json, me, path, value, found, was_created, ilen, trim_str, adjustl_str) Wrapper for json_add_string_vec_by_path where “value” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element private subroutine json_check_all_for_duplicate_keys (json, p, has_duplicate, name, path) Author Jacob Williams Date 8/25/2017 Checks a JSON structure for duplicate child names.\n This one recursively traverses the entire structure\n (calling json_check_children_for_duplicate_keys recursively for each element). Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p the object to search. If p is\nnot a json_object , then has_duplicate will be false. logical(kind=LK), intent(out) :: has_duplicate true if there is at least\none duplicate name key anywhere\nin the structure. character(kind=CK, len=:), intent(out), optional, allocatable :: name the duplicate name\n(unallocated if no\nduplicates were found) character(kind=CK, len=:), intent(out), optional, allocatable :: path the full path to the\nduplicate name\n(unallocated if no\nduplicate was found) private subroutine json_check_children_for_duplicate_keys (json, p, has_duplicate, name, path) Author Jacob Williams Date 8/25/2017 Checks a JSON object for duplicate child names. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p the object to search. If p is\nnot a json_object , then has_duplicate will be false. logical(kind=LK), intent(out) :: has_duplicate true if there is at least\ntwo children have duplicate name values. character(kind=CK, len=:), intent(out), optional, allocatable :: name the duplicate name\n(unallocated if no\nduplicate was found) character(kind=CK, len=:), intent(out), optional, allocatable :: path the full path to the\nduplicate name\n(unallocated if no\nduplicate was found) private subroutine json_check_for_errors (json, status_ok, error_msg) Author Jacob Williams Date 12/4/2013 Retrieve error code from the json_core .\n This should be called after parse to check for errors.\n If an error is thrown, before using the class again, json_initialize should be called to clean up before it is used again. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(in) :: json logical(kind=LK), intent(out), optional :: status_ok true if there were no errors character(kind=CK, len=:), intent(out), optional, allocatable :: error_msg the error message.\n(not allocated if\nthere were no errors) private pure subroutine json_clear_exceptions (json) Author Jacob Williams Date 12/4/2013 Clear exceptions in the json_core . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json private subroutine json_clone (json, from, to) Author Jacob Williams Date 10/31/2015 Create a deep copy of a json_value linked-list structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: from this is the structure to clone type( json_value ), pointer :: to the clone is put here\n(it must not already be associated) private subroutine json_create_by_path (json, me, path, p, found, was_created) Returns the json_value pointer given the path string,\n If necessary, by creating the variables as needed. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable type( json_value ), intent(out), optional, pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if there were no errors\n(variable found or created) logical(kind=LK), intent(out), optional :: was_created true if it was actually created\n(as opposed to already being there) private subroutine json_get_alloc_string_vec (json, me, vec, ilen) Author Jacob Williams Date 12/16/2016 Get a string vector from a json_value . This is an alternate\n version of json_get_string_vec . This one returns an allocatable\n length character (where the string length is the maximum length of\n any element in the array). It also returns an integer array of the\n actual sizes of the strings in the JSON structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array private subroutine json_get_alloc_string_vec_by_path (json, me, path, vec, ilen, found, default, default_ilen) Alternate version of json_get_alloc_string_vec where input is the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default integer(kind=IK), intent(in), optional, dimension(:) :: default_ilen the actual\nlength of default private recursive subroutine json_get_array (json, me, array_callback) This routine calls the user-supplied json_array_callback_func subroutine for each element in the array. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me procedure( json_array_callback_func ) :: array_callback private recursive subroutine json_get_array_by_path (json, me, path, array_callback, found) This routine calls the user-supplied array_callback subroutine\nfor each element in the array (specified by the path). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path procedure( json_array_callback_func ) :: array_callback logical(kind=LK), intent(out), optional :: found private subroutine json_get_by_path (json, me, path, p, found) Returns the json_value pointer given the path string. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable type( json_value ), intent(out), pointer :: p pointer to the variable\nspecified by path logical(kind=LK), intent(out), optional :: found true if it was found private subroutine json_get_by_path_default (json, me, path, p, found, create_it, was_created) Returns the json_value pointer given the path string. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable type( json_value ), intent(out), pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if it was found logical(kind=LK), intent(in), optional :: create_it if a variable is not present\nin the path, then it is created.\nthe leaf node is returned as\na null json type and can be\nchanged by the caller. logical(kind=LK), intent(out), optional :: was_created if create_it is true, this\nwill be true if the variable\nwas actually created. Otherwise\nit will be false. private subroutine json_get_by_path_jsonpath_bracket (json, me, path, p, found, create_it, was_created) Author Jacob Williams Date 9/2/2017 Returns the json_value pointer given the path string,\n using the “ JSON Pointer” path specification defined by the\n JSONPath “bracket-notation”. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable\n(using JSONPath\n“bracket-notation”) type( json_value ), intent(out), pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if it was found logical(kind=LK), intent(in), optional :: create_it if a variable is not present\nin the path, then it is created.\nthe leaf node is returned as\na null json type and can be\nchanged by the caller. logical(kind=LK), intent(out), optional :: was_created if create_it is true, this\nwill be true if the variable\nwas actually created. Otherwise\nit will be false. private subroutine json_get_by_path_rfc6901 (json, me, path, p, found) Author Jacob Williams Date 2/4/2017 Returns the json_value pointer given the path string,\n using the “ JSON Pointer” path specification defined by RFC 6901. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable\n(an RFC 6901 “ JSON Pointer”) type( json_value ), intent(out), pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if it was found private subroutine json_get_integer (json, me, value) Get an integer value from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me integer(kind=IK), intent(out) :: value the integer value private subroutine json_get_integer_by_path (json, me, path, value, found, default) Get an integer value from a json_value , given the path string. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path integer(kind=IK), intent(out) :: value logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(in), optional :: default default value if not found private subroutine json_get_integer_vec (json, me, vec) Author Jacob Williams Date 5/14/2014 Get an integer vector from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me integer(kind=IK), intent(out), dimension(:), allocatable :: vec private subroutine json_get_integer_vec_by_path (json, me, path, vec, found, default) Get an integer vector from a json_value , given the path string. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path integer(kind=IK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(in), optional, dimension(:) :: default default value if not found private subroutine json_get_logical (json, me, value) Get a logical value from a json_value . Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me logical(kind=LK), intent(out) :: value private subroutine json_get_logical_by_path (json, me, path, value, found, default) Get a logical value from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path logical(kind=LK), intent(out) :: value logical(kind=LK), intent(out), optional :: found logical(kind=LK), intent(in), optional :: default default value if not found private subroutine json_get_logical_vec (json, me, vec) Author Jacob Williams Date 5/14/2014 Get a logical vector from json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me logical(kind=LK), intent(out), dimension(:), allocatable :: vec private subroutine json_get_logical_vec_by_path (json, me, path, vec, found, default) Get a logical vector from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path logical(kind=LK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found logical(kind=LK), intent(in), optional, dimension(:) :: default private subroutine json_get_next (json, p, next) Author Jacob Williams Date 10/31/2015 Returns a pointer to the next of a json_value .\nIf there is no next, then a null() pointer is returned. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p JSON object type( json_value ), intent(out), pointer :: next pointer to next private subroutine json_get_parent (json, p, parent) Author Jacob Williams Date 10/16/2015 Returns a pointer to the parent of a json_value .\nIf there is no parent, then a null() pointer is returned. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p JSON object type( json_value ), intent(out), pointer :: parent pointer to parent private subroutine json_get_path (json, p, path, found, use_alt_array_tokens, path_sep) Returns the path to a JSON object that is part\n of a linked list structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list object character(kind=CK, len=:), intent(out), allocatable :: path path to the variable logical(kind=LK), intent(out), optional :: found true if there were no problems logical(kind=LK), intent(in), optional :: use_alt_array_tokens if true, then ‘()’ are used for array elements\notherwise, ‘[]’ are used [default]\n(only used if path_mode=1 ) character(kind=CK, len=1), intent(in), optional :: path_sep character to use for path separator\n(otherwise use json%path_separator )\n(only used if path_mode=1 ) private subroutine json_get_previous (json, p, previous) Author Jacob Williams Date 10/31/2015 Returns a pointer to the previous of a json_value .\nIf there is no previous, then a null() pointer is returned. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p JSON object type( json_value ), intent(out), pointer :: previous pointer to previous private subroutine json_get_real (json, me, value) Get a real value from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me real(kind=RK), intent(out) :: value private subroutine json_get_real32 (json, me, value) Alternate version of json_get_real where value=real32. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me real(kind=real32), intent(out) :: value private subroutine json_get_real32_by_path (json, me, path, value, found, default) Alternate version of json_get_real_by_path where value=real32. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CK, len=*), intent(in) :: path real(kind=real32), intent(out) :: value logical(kind=LK), intent(out), optional :: found real(kind=real32), intent(in), optional :: default default value if not found private subroutine json_get_real32_vec (json, me, vec) Alternate version of json_get_real_vec where vec is real32 . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me real(kind=real32), intent(out), dimension(:), allocatable :: vec private subroutine json_get_real32_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_real_vec_by_path where vec is real32 . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path real(kind=real32), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found real(kind=real32), intent(in), optional, dimension(:) :: default default value if not found private subroutine json_get_real_by_path (json, me, path, value, found, default) Get a real value from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CK, len=*), intent(in) :: path real(kind=RK), intent(out) :: value logical(kind=LK), intent(out), optional :: found real(kind=RK), intent(in), optional :: default default value if not found private subroutine json_get_real_vec (json, me, vec) Author Jacob Williams Date 5/14/2014 Get a real vector from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me real(kind=RK), intent(out), dimension(:), allocatable :: vec private subroutine json_get_real_vec_by_path (json, me, path, vec, found, default) Get a real vector from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path real(kind=RK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found real(kind=RK), intent(in), optional, dimension(:) :: default default value if not found private subroutine json_get_string (json, me, value) Get a character string from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=:), intent(out), allocatable :: value private subroutine json_get_string_by_path (json, me, path, value, found, default) Get a character string from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path character(kind=CK, len=:), intent(out), allocatable :: value logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional :: default private subroutine json_get_string_vec (json, me, vec) Author Jacob Williams Date 5/14/2014 Get a string vector from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec private subroutine json_get_string_vec_by_path (json, me, path, vec, found, default) Get a string vector from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default private subroutine json_get_tail (json, p, tail) Author Jacob Williams Date 10/31/2015 Returns a pointer to the tail of a json_value (the last child of an array of object).\nIf there is no tail, then a null() pointer is returned. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p JSON object type( json_value ), intent(out), pointer :: tail pointer to tail private subroutine json_info (json, p, var_type, n_children, name) Author Jacob Williams Date 2/13/2014 Returns information about a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(out), optional :: var_type variable type integer(kind=IK), intent(out), optional :: n_children number of children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name private subroutine json_info_by_path (json, p, path, found, var_type, n_children, name) Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable logical(kind=LK), intent(out), optional :: found true if it was found integer(kind=IK), intent(out), optional :: var_type variable type integer(kind=IK), intent(out), optional :: n_children number of children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name private subroutine json_initialize (me, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) Author Jacob Williams Date 12/4/2013 Initialize the json_core instance. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: me logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) private subroutine json_matrix_info (json, p, is_matrix, var_type, n_sets, set_size, name) Author Jacob Williams Date 10/16/2015 Alternate version of json_info that returns matrix\n information about a json_value . Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a JSON linked list logical(kind=LK), intent(out) :: is_matrix true if it is a valid matrix integer(kind=IK), intent(out), optional :: var_type variable type of data in the matrix\n(if all elements have the same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name private subroutine json_matrix_info_by_path (json, p, path, is_matrix, found, var_type, n_sets, set_size, name) Returns matrix information about a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a JSON linked list character(kind=CK, 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\nthe matrix (if all elements have\nthe same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name private subroutine json_parse_end (json, unit, str) An error checking routine to call after a file (or string) has been parsed.\nIt will throw an exception if there are any other non-whitespace characters\nin the file. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number character(kind=CK, len=*), intent(in) :: str string containing JSON data (only used if unit=0 ) private subroutine json_parse_file (json, file, p, unit) Parse the JSON file and populate the json_value tree. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CDK, len=*), intent(in) :: file JSON file name type( json_value ), pointer :: p output structure integer(kind=IK), intent(in), optional :: unit file unit number (/= 0) private subroutine json_parse_string (json, p, str) Parse the JSON string and populate the json_value tree. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p output structure character(kind=CK, len=*), intent(in) :: str string with JSON data private subroutine json_prepare_parser (json) Internal routine to be called before parsing JSON .\nCurrently, all this does it allocate the comment_char if none was specified. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json private subroutine json_print_error_message (json, io_unit) Author Jacob Williams Print any error message, and then clear the exceptions. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer, intent(in), optional :: io_unit unit number for\nprinting error message private subroutine json_print_to_console (json, p) Print the json_value structure to the console ( output_unit ). Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p private subroutine json_print_to_filename (json, p, filename) Author Jacob Williams Date 12/23/2014 Print the json_value structure to a file. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CDK, len=*), intent(in) :: filename the filename to print to\n(should not already be open) private subroutine json_print_to_unit (json, p, iunit) Author Jacob Williams Date 6/20/2014 Print the json_value structure to a file. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p integer(kind=IK), intent(in) :: iunit the file unit (the file must\nalready have been opened, can’t be -1). private subroutine json_rename_by_path (json, me, path, name, found) Rename a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path path to the variable to rename character(kind=CK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if there were no errors private subroutine json_rename_by_path_name_ascii (json, me, path, name, found) Alternate version of json_rename_by_path , where “name” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path character(kind=CDK, len=*), intent(in) :: name logical(kind=LK), intent(out), optional :: found private subroutine json_rename_by_path_path_ascii (json, me, path, name, found) Alternate version of json_rename_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=*), intent(in) :: name logical(kind=LK), intent(out), optional :: found private subroutine json_string_info (json, p, ilen, max_str_len, found) Author Jacob Williams Date 12/18/2016 Returns information about character strings returned from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(out), optional, dimension(:), allocatable :: ilen if p is an array, this\nis the actual length\nof each character\nstring in the array.\nif not an array, this\nis returned unallocated. integer(kind=IK), intent(out), optional :: max_str_len The maximum length required to\nhold the string representation returned\nby a call to a get routine. If a scalar,\nthis is just the length of the scalar. If\na vector, this is the maximum length of\nany element. logical(kind=LK), intent(out), optional :: found true if there were no errors.\nif not present, an error will\nthrow an exception private subroutine json_throw_exception (json, msg, found) Author Jacob Williams Date 12/4/2013 Throw an exception in the json_core .\n This routine sets the error flag, and prevents any subsequent routine\n from doing anything, until json_clear_exceptions is called. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CK, len=*), intent(in) :: msg the error message logical(kind=LK), intent(inout), optional :: found if the caller is handling the\nexception with an optimal return\nargument. If so, json%stop_on_error is ignored. private subroutine json_traverse (json, p, traverse_callback) Author Jacob Williams Date 4/28/2016 Traverse a JSON structure.\nThis routine calls the user-specified json_traverse_callback_func for each element of the structure. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p procedure( json_traverse_callback_func ) :: traverse_callback private subroutine json_update_integer (json, p, path, val, found) Author Jacob Williams Date 12/6/2014 Given the path string, if the variable is present,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure integer(kind=IK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. private subroutine json_update_logical (json, p, path, val, found) Author Jacob Williams Date 12/6/2014 Given the path string, if the variable is present,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure logical(kind=LK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. private subroutine json_update_real (json, p, path, val, found) Author Jacob Williams Date 12/6/2014 Given the path string, if the variable is present,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure real(kind=RK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. private subroutine json_update_real32 (json, p, path, val, found) Alternate version of json_update_real , where val is real32 . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure real(kind=real32), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. private subroutine json_update_string (json, p, path, val, found, trim_str, adjustl_str) Author Jacob Williams Date 12/6/2014 Given the path string, if the variable is present,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure character(kind=CK, len=*), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) private subroutine json_update_string_name_ascii (json, p, path, val, found, trim_str, adjustl_str) Alternate version of json_update_string , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure character(kind=CK, len=*), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) private subroutine json_update_string_val_ascii (json, p, path, val, found, trim_str, adjustl_str) Alternate version of json_update_string , where val is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure character(kind=CDK, len=*), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) private subroutine json_value_add_integer (json, p, name, val) Author Jacob Williams Date 1/20/2014 Add an integer value child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name integer(kind=IK), intent(in) :: val private subroutine json_value_add_integer_vec (json, p, name, val) Author Jacob Williams Date 1/20/2014 Add a integer vector child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the variable integer(kind=IK), intent(in), dimension(:) :: val value private subroutine json_value_add_logical (json, p, name, val) Author Jacob Williams Date 1/20/2014 Add a logical value child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the variable logical(kind=LK), intent(in) :: val value private subroutine json_value_add_logical_vec (json, p, name, val) Author Jacob Williams Date 1/20/2014 Add a logical vector child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the vector logical(kind=LK), intent(in), dimension(:) :: val value private subroutine json_value_add_member (json, p, member) Adds member as a child of p . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p p must be a json_object or a json_array type( json_value ), pointer :: member the child member\nto add to p private subroutine json_value_add_null (json, p, name) Add a NULL value child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name private subroutine json_value_add_real (json, p, name, val) Author Jacob Williams Date 1/19/2014 Add a real value child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name variable name real(kind=RK), intent(in) :: val real value private subroutine json_value_add_real32 (json, p, name, val) Alternate version of json_value_add_real where val is real32 . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name variable name real(kind=real32), intent(in) :: val real value private subroutine json_value_add_real32_vec (json, p, name, val) Alternate version of json_value_add_real_vec where val is real32 . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name real(kind=real32), intent(in), dimension(:) :: val private subroutine json_value_add_real_vec (json, p, name, val) Author Jacob Williams Date 1/20/2014 Add a real vector child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name real(kind=RK), intent(in), dimension(:) :: val private subroutine json_value_add_string (json, p, name, val, trim_str, adjustl_str) Author Jacob Williams Date 1/19/2014 Add a character string child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the variable character(kind=CK, len=*), intent(in) :: val value logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val private subroutine json_value_add_string_name_ascii (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable character(kind=CK, len=*), intent(in) :: val value logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val private subroutine json_value_add_string_val_ascii (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string where val is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the variable character(kind=CDK, len=*), intent(in) :: val value logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val private subroutine json_value_add_string_vec (json, p, name, val, trim_str, adjustl_str) Author Jacob Williams Date 1/19/2014 Add a character string vector child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name variable name character(kind=CK, len=*), intent(in), dimension(:) :: val array of strings logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element private subroutine json_value_add_string_vec_name_ascii (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string_vec where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name character(kind=CK, len=*), intent(in), dimension(:) :: val logical(kind=LK), intent(in), optional :: trim_str logical(kind=LK), intent(in), optional :: adjustl_str private subroutine json_value_add_string_vec_val_ascii (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string_vec where val is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name character(kind=CDK, len=*), intent(in), dimension(:) :: val logical(kind=LK), intent(in), optional :: trim_str logical(kind=LK), intent(in), optional :: adjustl_str private recursive subroutine json_value_clone_func (from, to, parent, previous, tail) Author Jacob Williams Date 10/31/2015 Recursive deep copy function called by json_clone . Read more… Arguments Type Intent Optional Attributes Name type( json_value ), pointer :: from this is the structure to clone type( json_value ), pointer :: to the clone is put here (it\nmust not already be associated) type( json_value ), optional, pointer :: parent to%parent type( json_value ), optional, pointer :: previous to%previous logical, optional :: tail if “to” is the tail of\nits parent’s children private subroutine json_value_create (p) Allocate a json_value pointer variable.\n This should be called before adding data to it. Read more… Arguments Type Intent Optional Attributes Name type( json_value ), pointer :: p private subroutine json_value_create_array (json, p, name) Author Jacob Williams Allocate a json_value pointer and make it an array variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name private subroutine json_value_create_integer (json, p, val, name) Author Jacob Williams Allocate a json_value pointer and make it an integer(IK) variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(in) :: val character(kind=CK, len=*), intent(in) :: name private subroutine json_value_create_logical (json, p, val, name) Author Jacob Williams Allocate a json_value pointer and make it a logical(LK) variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p logical(kind=LK), intent(in) :: val variable value character(kind=CK, len=*), intent(in) :: name variable name private subroutine json_value_create_null (json, p, name) Author Jacob Williams Allocate a json_value pointer and make it a null variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name private subroutine json_value_create_object (json, p, name) Author Jacob Williams Allocate a json_value pointer and make it an object variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name private subroutine json_value_create_real (json, p, val, name) Author Jacob Williams Allocate a json_value pointer and make it a real(RK) variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=RK), intent(in) :: val character(kind=CK, len=*), intent(in) :: name private subroutine json_value_create_real32 (json, p, val, name) Alternate version of json_value_create_real where val=real32. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=real32), intent(in) :: val character(kind=CK, len=*), intent(in) :: name private subroutine json_value_create_string (json, p, val, name, trim_str, adjustl_str) Author Jacob Williams Allocate a json_value pointer and make it a string variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: val character(kind=CK, len=*), intent(in) :: name logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val private pure recursive subroutine json_value_destroy (json, p, destroy_next) Author Jacob Williams Date 1/22/2014 Destroy a json_value linked-list structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p variable to destroy logical(kind=LK), intent(in), optional :: destroy_next if true, then p%next is also destroyed (default is true) private subroutine json_value_get_child (json, p, child) Returns pointer to the first child of the object\n(or null() if it is not associated). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p object or array JSON data type( json_value ), pointer :: child pointer to the child private subroutine json_value_get_child_by_index (json, p, idx, child, found) Returns a child in the object or array given the index. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p object or array JSON data integer(kind=IK), intent(in) :: idx index of the child\n(this is a 1-based Fortran\nstyle array index). type( json_value ), pointer :: child pointer to the child logical(kind=LK), intent(out), optional :: found true if the value was found\n(if not present, an exception\nwill be thrown if it was not\nfound. If present and not\nfound, no exception will be\nthrown). private subroutine json_value_get_child_by_name (json, p, name, child, found) Returns a child in the object or array given the name string. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CK, len=*), intent(in) :: name the name of a child of p type( json_value ), pointer :: child pointer to the child logical(kind=LK), intent(out), optional :: found true if the value was found\n(if not present, an exception\nwill be thrown if it was not\nfound. If present and not\nfound, no exception will be\nthrown). private subroutine json_value_insert_after (json, p, element) Inserts element after p , and updates the JSON structure accordingly. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a value from a JSON structure\n(presumably, this is a child of\nan object or array). type( json_value ), pointer :: element the element to insert after p private subroutine json_value_insert_after_child_by_index (json, p, idx, element) Inserts element after the idx -th child of p ,\nand updates the JSON structure accordingly. This is just\na wrapper for json_value_insert_after . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a JSON object or array. integer(kind=IK), intent(in) :: idx the index of the child of p to\ninsert the new element after\n(this is a 1-based Fortran\nstyle array index) type( json_value ), pointer :: element the element to insert private recursive subroutine json_value_print (json, p, iunit, str, indent, need_comma, colon, is_array_element, is_compressed_vector, iloc) Print the JSON structure to a string or a file. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p integer(kind=IK), intent(in) :: iunit file unit to write to (the\nfile is assumed to be open) character(kind=CK, len=:), intent(inout), allocatable :: str if iunit==unit2str (-1) then\nthe structure is printed to this\nstring rather than a file. This mode\nis used by json_value_to_string . integer(kind=IK), intent(in), optional :: indent indention level logical(kind=LK), intent(in), optional :: need_comma if it needs a comma after it logical(kind=LK), intent(in), optional :: colon if the colon was just written logical(kind=LK), intent(in), optional :: is_array_element if this is an array element logical(kind=LK), intent(in), optional :: is_compressed_vector if True, this is an element\nfrom an array being printed\non one line [default is False] integer(kind=IK), intent(inout) :: iloc current index in str . should be set to 0 initially.\n[only used when str is used.] private subroutine json_value_remove (json, p, destroy) Author Jacob Williams Date 9/9/2014 Remove a json_value (and all its children)\n from a linked-list structure, preserving the rest of the structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p logical(kind=LK), intent(in), optional :: destroy Option to destroy p after it is removed: Read more… private subroutine json_value_remove_if_present (json, p, path) Author Jacob Williams Date 12/6/2014 Given the path string, remove the variable\nfrom json_value , if it exists. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path the path to the variable to remove private subroutine json_value_rename (json, p, name) Author Jacob Williams Date 4/29/2016 Rename a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CK, len=*), intent(in) :: name new variable name private subroutine json_value_replace (json, p1, p2, destroy) Replace p1 with p2 in a JSON structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p1 the item to replace type( json_value ), pointer :: p2 item to take the place of p1 logical(kind=LK), intent(in), optional :: destroy Should p1 also be destroyed\n(default is True). Normally,\nthis should be true to avoid\na memory leak. private subroutine json_value_reverse (json, p) Author Jacob Williams Date 4/11/2017 Reverse the order of the children of an array or object. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p private subroutine json_value_swap (json, p1, p2) Author Jacob Williams Date 4/26/2016 Swap two elements in a JSON structure.\n All of the children are carried along as well. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p1 swap with p2 type( json_value ), pointer :: p2 swap with p1 private subroutine json_value_to_string (json, p, str) Author Jacob Williams Date 2/12/2014 Print the json_value structure to an allocatable string. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CK, len=:), intent(out), allocatable :: str prints structure to this string private subroutine json_value_validate (json, p, is_valid, error_msg) Author Jacob Williams Date 5/2/2016 Validate a json_value linked list by checking to make sure\n all the pointers are properly associated, arrays and objects\n have the correct number of children, and the correct data is\n allocated for the variable types. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p logical(kind=LK), intent(out) :: is_valid True if the structure is valid. character(kind=CK, len=:), intent(out), allocatable :: error_msg if not valid, this will contain\na description of the problem private recursive subroutine parse_array (json, unit, str, array) Core parsing routine. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if parsing from a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing from a string) type( json_value ), pointer :: array private subroutine parse_for_chars (json, unit, str, chars) Core parsing routine. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if parsing from a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing from a string) character(kind=CK, len=*), intent(in) :: chars the string to check for. private subroutine parse_number (json, unit, str, value) Author Jacob Williams Date 1/20/2014 Read a numerical value from the file (or string).\n The routine will determine if it is an integer or a real, and\n allocate the type accordingly. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if parsing from a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing from a string) type( json_value ), pointer :: value private recursive subroutine parse_object (json, unit, str, parent, expecting_next_element) Core parsing routine. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if parsing from a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing from a string) type( json_value ), pointer :: parent the parsed object will be added as a child of this logical(kind=LK), intent(in) :: expecting_next_element if true, this object is preceeded by a comma, so\nwe expect a valid object to exist. used to check\nfor trailing delimiters. private subroutine parse_string (json, unit, str, string) Parses a string while reading a JSON file. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if\nparsing from a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing\nfrom a string) character(kind=CK, len=:), intent(out), allocatable :: string the string (unescaped\nif necessary) private recursive subroutine parse_value (json, unit, str, value) Core parsing routine. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number character(kind=CK, len=*), intent(in) :: str string containing JSON data (only used if unit=0 ) type( json_value ), pointer :: value JSON data that is extracted private subroutine pop_char (json, unit, str, skip_ws, skip_comments, eof, popped) Get the next character from the file (or string). Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if parsing\nfrom a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing from a\nstring) – only used if unit=0 logical(kind=LK), intent(in), optional :: skip_ws to ignore whitespace [default False] logical(kind=LK), intent(in), optional :: skip_comments to ignore comment lines [default False] logical(kind=LK), intent(out) :: eof true if the end of the file has\nbeen reached. character(kind=CK, len=1), intent(out) :: popped the popped character returned private subroutine push_char (json, c) Core routine. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CK, len=1), intent(in) :: c to character to push private subroutine to_array (json, p, name) Author Jacob Williams Change the json_value variable to an array. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. private subroutine to_integer (json, p, val, name) Author Jacob Williams Change the json_value variable to an integer. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(in), optional :: val if the value is also to be set\n(if not present, then 0 is used). character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. private subroutine to_logical (json, p, val, name) Author Jacob Williams Change the json_value variable to a logical. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p logical(kind=LK), intent(in), optional :: val if the value is also to be set\n(if not present, then .false. is used). character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. private subroutine to_null (json, p, name) Author Jacob Williams Change the json_value variable to a null. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. private subroutine to_object (json, p, name) Author Jacob Williams Change the json_value variable to an object. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. private subroutine to_real (json, p, val, name) Author Jacob Williams Change the json_value variable to a real. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=RK), intent(in), optional :: val if the value is also to be set\n(if not present, then 0.0_rk is used). character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. private subroutine to_string (json, p, val, name, trim_str, adjustl_str) Author Jacob Williams Change the json_value variable to a string. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in), optional :: val if the value is also to be set\n(if not present, then ‘’ is used). character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) private subroutine wrap_json_add_integer_by_path (json, me, path, value, found, was_created) Wrapper to json_add_integer_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_integer_vec_by_path (json, me, path, value, found, was_created) Wrapper for json_add_integer_vec_by_path where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_logical_by_path (json, me, path, value, found, was_created) Wrapper to json_add_logical_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_logical_vec_by_path (json, me, path, value, found, was_created) Wrapper for json_add_logical_vec_by_path where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_member_by_path (json, me, path, p, found, was_created) Wrapper to json_add_member_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(in), pointer :: p the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_real32_by_path (json, me, path, value, found, was_created) Wrapper to json_add_real32_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_real32_vec_by_path (json, me, path, value, found, was_created) Wrapper for json_add_real32_vec_by_path where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_real_by_path (json, me, path, value, found, was_created) Wrapper to json_add_real_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_real_vec_by_path (json, me, path, value, found, was_created) Wrapper for json_add_real_vec_by_path where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_string_by_path (json, me, path, value, found, was_created, trim_str, adjustl_str) Wrapper to json_add_string_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element private subroutine wrap_json_add_string_vec_by_path (json, me, path, value, found, was_created, ilen, trim_str, adjustl_str) Wrapper for json_add_string_vec_by_path where “path” and “value” are kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element private subroutine wrap_json_create_by_path (json, me, path, p, found, was_created) Alternate version of json_create_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CDK, len=*), intent(in) :: path path to the variable type( json_value ), intent(out), optional, pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if there were no errors\n(variable found or created) logical(kind=LK), intent(out), optional :: was_created true if it was actually created\n(as opposed to already being there) private subroutine wrap_json_get_alloc_string_vec_by_path (json, me, path, vec, ilen, found, default, default_ilen) Alternate version of json_get_alloc_string_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default integer(kind=IK), intent(in), optional, dimension(:) :: default_ilen the actual\nlength of default private recursive subroutine wrap_json_get_array_by_path (json, me, path, array_callback, found) Alternate version of json_get_array_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path procedure( json_array_callback_func ) :: array_callback logical(kind=LK), intent(out), optional :: found private subroutine wrap_json_get_by_path (json, me, path, p, found) Alternate version of json_get_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path type( json_value ), intent(out), pointer :: p logical(kind=LK), intent(out), optional :: found private subroutine wrap_json_get_integer_by_path (json, me, path, value, found, default) Alternate version of json_get_integer_by_path , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path integer(kind=IK), intent(out) :: value logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(in), optional :: default default value if not found private subroutine wrap_json_get_integer_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_integer_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path integer(kind=IK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(in), optional, dimension(:) :: default default value if not found private subroutine wrap_json_get_logical_by_path (json, me, path, value, found, default) Alternate version of json_get_logical_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path logical(kind=LK), intent(out) :: value logical(kind=LK), intent(out), optional :: found logical(kind=LK), intent(in), optional :: default default value if not found private subroutine wrap_json_get_logical_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_logical_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path logical(kind=LK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found logical(kind=LK), intent(in), optional, dimension(:) :: default private subroutine wrap_json_get_path (json, p, path, found, use_alt_array_tokens, path_sep) Wrapper for json_get_path where “path” and “path_sep” are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list object character(kind=CDK, len=:), intent(out), allocatable :: path path to the variable logical(kind=LK), intent(out), optional :: found true if there were no problems logical(kind=LK), intent(in), optional :: use_alt_array_tokens if true, then ‘()’ are used\nfor array elements otherwise,\n‘[]’ are used [default] character(kind=CDK, len=1), intent(in), optional :: path_sep character to use for path\nseparator (default is ‘.’) private subroutine wrap_json_get_real32_by_path (json, me, path, value, found, default) Alternate version of json_get_real32_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path real(kind=real32), intent(out) :: value logical(kind=LK), intent(out), optional :: found real(kind=real32), intent(in), optional :: default default value if not found private subroutine wrap_json_get_real32_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_real32_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path real(kind=real32), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found real(kind=real32), intent(in), optional, dimension(:) :: default default value if not found private subroutine wrap_json_get_real_by_path (json, me, path, value, found, default) Alternate version of json_get_real_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path real(kind=RK), intent(out) :: value logical(kind=LK), intent(out), optional :: found real(kind=RK), intent(in), optional :: default default value if not found private subroutine wrap_json_get_real_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_real_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path real(kind=RK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found real(kind=RK), intent(in), optional, dimension(:) :: default default value if not found private subroutine wrap_json_get_string_by_path (json, me, path, value, found, default) Alternate version of json_get_string_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=:), intent(out), allocatable :: value logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional :: default private subroutine wrap_json_get_string_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_string_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default private subroutine wrap_json_info_by_path (json, p, path, found, var_type, n_children, name) Alternate version of json_info_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list character(kind=CDK, len=*), intent(in) :: path path to the variable logical(kind=LK), intent(out), optional :: found true if it was found integer(kind=IK), intent(out), optional :: var_type variable type integer(kind=IK), intent(out), optional :: n_children number of children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name private subroutine wrap_json_matrix_info_by_path (json, p, path, is_matrix, found, var_type, n_sets, set_size, name) Alternate version of json_matrix_info_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a JSON linked list 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\nthe matrix (if all elements have\nthe same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name private subroutine wrap_json_parse_string (json, p, str) Alternate version of json_parse_string , where str is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p output structure character(kind=CDK, len=*), intent(in) :: str string with JSON data private subroutine wrap_json_rename_by_path (json, me, path, name, found) Alternate version of json_rename_by_path , where “path” and “name” are kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CDK, len=*), intent(in) :: name logical(kind=LK), intent(out), optional :: found private subroutine wrap_json_throw_exception (json, msg, found) Alternate version of json_throw_exception , where msg is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CDK, len=*), intent(in) :: msg the error message logical(kind=LK), intent(inout), optional :: found if the caller is handling the\nexception with an optimal return\nargument. If so, json%stop_on_error is ignored. private subroutine wrap_json_update_integer (json, p, path, val, found) Alternate version of json_update_integer , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure integer(kind=IK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. private subroutine wrap_json_update_logical (json, p, path, val, found) Alternate version of json_update_logical , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure logical(kind=LK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. private subroutine wrap_json_update_real (json, p, path, val, found) Alternate version of json_update_real , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure real(kind=RK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. private subroutine wrap_json_update_real32 (json, p, path, val, found) Alternate version of json_update_real32 , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure real(kind=real32), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. private subroutine wrap_json_update_string (json, p, path, val, found, trim_str, adjustl_str) Alternate version of json_update_string , where path and value are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure character(kind=CDK, len=*), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) private subroutine wrap_json_value_add_integer (json, p, name, val) Alternate version of json_value_add_integer where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable integer(kind=IK), intent(in) :: val value private subroutine wrap_json_value_add_integer_vec (json, p, name, val) Alternate version of json_value_add_integer_vec where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable integer(kind=IK), intent(in), dimension(:) :: val value private subroutine wrap_json_value_add_logical (json, p, name, val) Alternate version of json_value_add_logical where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable logical(kind=LK), intent(in) :: val value private subroutine wrap_json_value_add_logical_vec (json, p, name, val) Alternate version of json_value_add_logical_vec where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable logical(kind=LK), intent(in), dimension(:) :: val value private subroutine wrap_json_value_add_null (json, p, name) Alternate version of json_value_add_null where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable private subroutine wrap_json_value_add_real (json, p, name, val) Alternate version of json_value_add_real where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name variable name real(kind=RK), intent(in) :: val real value private subroutine wrap_json_value_add_real32 (json, p, name, val) Alternate version of json_value_add_real32 where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name variable name real(kind=real32), intent(in) :: val real value private subroutine wrap_json_value_add_real32_vec (json, p, name, val) Alternate version of json_value_add_real32_vec where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name real(kind=real32), intent(in), dimension(:) :: val private subroutine wrap_json_value_add_real_vec (json, p, name, val) Alternate version of json_value_add_real_vec where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name real(kind=RK), intent(in), dimension(:) :: val private subroutine wrap_json_value_add_string (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string where name and val are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable character(kind=CDK, len=*), intent(in) :: val value logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val private subroutine wrap_json_value_add_string_vec (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string_vec where name and val are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name character(kind=CDK, len=*), intent(in), dimension(:) :: val logical(kind=LK), intent(in), optional :: trim_str logical(kind=LK), intent(in), optional :: adjustl_str private subroutine wrap_json_value_create_array (json, p, name) Author Izaak Beekman A wrapper for json_value_create_array so that create_array method may be\ncalled with an actual argument, corresponding to the dummy argument name ,\nthat is either of ‘DEFAULT’ or ‘ISO_10646’ character kind. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name private subroutine wrap_json_value_create_integer (json, p, val, name) Author Izaak Beekman A wrapper procedure for json_value_create_integer so that create_integer method may be called with either a ‘DEFAULT’ or ‘ISO_10646’ character kind name actual argument. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name private subroutine wrap_json_value_create_logical (json, p, val, name) Author Izaak Beekman Wrapper for json_value_create_logical so create_logical method can\nbe called with name of character kind ‘DEFAULT’ or ‘ISO_10646’ Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p logical(kind=LK), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name private subroutine wrap_json_value_create_null (json, p, name) Author Izaak Beekman Wrap json_value_create_null so that create_null method may be called with\nan actual argument corresponding to the dummy argument name that is either\nof ‘DEFAULT’ or ‘ISO_10646’ character kind. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name private subroutine wrap_json_value_create_object (json, p, name) Author Izaak Beekman Wrap json_value_create_object so that create_object method may be called\nwith an actual argument corresponding to the dummy argument name that is of\neither ‘DEFAULT’ or ‘ISO_10646’ character kind. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name private subroutine wrap_json_value_create_real (json, p, val, name) Author Izaak Beekman A wrapper for json_value_create_real so that create_real method\nmay be called with an actual argument corresponding to the dummy argument, name that may be of ‘DEFAULT’ or ‘ISO_10646’ character kind. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=RK), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name private subroutine wrap_json_value_create_real32 (json, p, val, name) Alternate version of json_value_create_real32 where “name” is kind(CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=real32), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name private subroutine wrap_json_value_create_string (json, p, val, name, trim_str, adjustl_str) Author Izaak Beekman Wrap json_value_create_string so that create_string method may be called\nwith actual character string arguments for name and val that are BOTH of\n‘DEFAULT’ or ‘ISO_10646’ character kind. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val private subroutine wrap_json_value_get_child_by_name (json, p, name, child, found) Alternate version of json_value_get_child_by_name where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CDK, len=*), intent(in) :: name type( json_value ), pointer :: child logical(kind=LK), intent(out), optional :: found private subroutine wrap_json_value_remove_if_present (json, p, path) Alternate version of json_value_remove_if_present , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path private subroutine wrap_json_value_rename (json, p, name) Author Jacob Williams Date 4/29/2016 Alternate version of json_value_rename , where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CDK, len=*), intent(in) :: name new variable name","tags":"","loc":"module/json_value_module.html"},{"title":"json_file_module.F90 – JSON-Fortran","text":"This file depends on sourcefile~~json_file_module.f90~~EfferentGraph sourcefile~json_file_module.f90 json_file_module.F90 sourcefile~json_kinds.f90 json_kinds.F90 sourcefile~json_file_module.f90->sourcefile~json_kinds.f90 sourcefile~json_parameters.f90 json_parameters.F90 sourcefile~json_file_module.f90->sourcefile~json_parameters.f90 sourcefile~json_string_utilities.f90 json_string_utilities.F90 sourcefile~json_file_module.f90->sourcefile~json_string_utilities.f90 sourcefile~json_value_module.f90 json_value_module.F90 sourcefile~json_file_module.f90->sourcefile~json_value_module.f90 sourcefile~json_parameters.f90->sourcefile~json_kinds.f90 sourcefile~json_string_utilities.f90->sourcefile~json_kinds.f90 sourcefile~json_string_utilities.f90->sourcefile~json_parameters.f90 sourcefile~json_value_module.f90->sourcefile~json_kinds.f90 sourcefile~json_value_module.f90->sourcefile~json_parameters.f90 sourcefile~json_value_module.f90->sourcefile~json_string_utilities.f90 Help Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\nis dependent upon another if the latter must be compiled before the former\ncan be. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Files dependent on this one sourcefile~~json_file_module.f90~~AfferentGraph sourcefile~json_file_module.f90 json_file_module.F90 sourcefile~json_module.f90 json_module.F90 sourcefile~json_module.f90->sourcefile~json_file_module.f90 Help Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\nis dependent upon another if the latter must be compiled before the former\ncan be. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code !***************************************************************************************** !> author: Jacob Williams ! license: BSD ! ! Higher-level [[json_file]] interface for the [[json_value]] type. ! !### License ! * JSON-Fortran is released under a BSD-style license. ! See the [LICENSE](https://github.com/jacobwilliams/json-fortran/blob/master/LICENSE) ! file for details. module json_file_module use , intrinsic :: iso_fortran_env use json_kinds use json_parameters , only : unit2str use json_string_utilities use json_value_module implicit none private #include \"json_macros.inc\" !********************************************************* !> author: Jacob Williams ! date: 12/9/2013 ! ! The `json_file` is the main public class that is ! used to open a file and get data from it. ! ! A `json_file` contains only two items: an instance of a [[json_core(type)]], ! which is used for all data manipulation, and a [[json_value]] pointer, ! which is used to construct the linked-list data structure. ! Note that most methods in the `json_file` class are simply wrappers ! to the lower-level routines in the [[json_value_module]]. ! !### Example ! !```fortran ! program test ! use json_module ! implicit none ! type(json_file) :: json ! integer :: ival ! real(real64) :: rval ! character(len=:),allocatable :: cval ! logical :: found ! call json%initialize(compact_reals=.true.) ! call json%load(filename='myfile.json') ! call json%print() !print to the console ! call json%get('var.i',ival,found) ! call json%get('var.r(3)',rval,found) ! call json%get('var.c',cval,found) ! call json%destroy() ! end program test !``` ! !@note The `destroy()` method may be called to free the memory if necessary. ! [[json_file(type)]] includes a finalizer that also calls ! `destroy()` when the variable goes out of scope. type , public :: json_file private type ( json_core ) :: core !! The instance of the [[json_core(type)]] !! factory used for this file. type ( json_value ), pointer :: p => null () !! the JSON structure read from the file contains generic , public :: initialize => initialize_json_core_in_file ,& set_json_core_in_file procedure , public :: get_core => get_json_core_in_file !> ! Load JSON from a file. procedure , public :: load => json_file_load !> ! The same as `load`, but only here for backward compatibility procedure , public :: load_file => json_file_load !> ! Load JSON from a string. generic , public :: deserialize => MAYBEWRAP ( json_file_load_from_string ) !> ! The same as `deserialize`, but only here for backward compatibility generic , public :: load_from_string => MAYBEWRAP ( json_file_load_from_string ) !> ! Print the [[json_value]] structure to an allocatable string procedure , public :: serialize => json_file_print_to_string !> ! The same as `serialize`, but only here for backward compatibility procedure , public :: print_to_string => json_file_print_to_string procedure , public :: destroy => json_file_destroy procedure , public :: nullify => json_file_nullify procedure , public :: move => json_file_move_pointer generic , public :: info => MAYBEWRAP ( json_file_variable_info ) generic , public :: matrix_info => MAYBEWRAP ( json_file_variable_matrix_info ) !error checking: procedure , public :: failed => json_file_failed procedure , public :: print_error_message => json_file_print_error_message procedure , public :: check_for_errors => json_file_check_for_errors procedure , public :: clear_exceptions => json_file_clear_exceptions generic , public :: print => json_file_print_to_console , & json_file_print_to_unit , & json_file_print_to_filename !> ! The same as `print`, but only here for backward compatibility generic , public :: print_file => json_file_print_to_console , & json_file_print_to_unit , & json_file_print_to_filename !> ! Rename a variable, specifying it by path generic , public :: rename => MAYBEWRAP ( json_file_rename ) #ifdef USE_UCS4 generic , public :: rename => json_file_rename_path_ascii , & json_file_rename_name_ascii #endif !> ! Verify that a path is valid ! (i.e., a variable with this path exists in the file). generic , public :: valid_path => MAYBEWRAP ( json_file_valid_path ) !> ! Get a variable from a [[json_file(type)]], by specifying the path. generic , public :: get => MAYBEWRAP ( json_file_get_object ), & MAYBEWRAP ( json_file_get_integer ), & #ifndef REAL32 MAYBEWRAP ( json_file_get_real32 ), & #endif MAYBEWRAP ( json_file_get_real ), & #ifdef REAL128 MAYBEWRAP ( json_file_get_real64 ), & #endif MAYBEWRAP ( json_file_get_logical ), & MAYBEWRAP ( json_file_get_string ), & MAYBEWRAP ( json_file_get_integer_vec ), & #ifndef REAL32 MAYBEWRAP ( json_file_get_real32_vec ), & #endif MAYBEWRAP ( json_file_get_real_vec ), & #ifdef REAL128 MAYBEWRAP ( json_file_get_real64_vec ), & #endif MAYBEWRAP ( json_file_get_logical_vec ), & MAYBEWRAP ( json_file_get_string_vec ), & MAYBEWRAP ( json_file_get_alloc_string_vec ), & json_file_get_root !> ! Add a variable to a [[json_file(type)]], by specifying the path. ! !### Example ! !```fortran ! program test ! use json_module, rk=>json_rk, ik=>json_ik ! implicit none ! type(json_file) :: f ! call f%initialize() ! specify whatever init options you want. ! call f%add('inputs.t', 0.0_rk) ! call f%add('inputs.x', [1.0_rk,2.0_rk,3.0_rk]) ! call f%add('inputs.flag', .true.) ! call f%print() ! print to the console ! end program test !``` generic , public :: add => json_file_add , & MAYBEWRAP ( json_file_add_object ), & MAYBEWRAP ( json_file_add_integer ), & #ifndef REAL32 MAYBEWRAP ( json_file_add_real32 ), & #endif MAYBEWRAP ( json_file_add_real ), & #ifdef REAL128 MAYBEWRAP ( json_file_add_real64 ), & #endif MAYBEWRAP ( json_file_add_logical ), & MAYBEWRAP ( json_file_add_string ), & MAYBEWRAP ( json_file_add_integer_vec ), & #ifndef REAL32 MAYBEWRAP ( json_file_add_real32_vec ), & #endif MAYBEWRAP ( json_file_add_real_vec ), & #ifdef REAL128 MAYBEWRAP ( json_file_add_real64_vec ), & #endif MAYBEWRAP ( json_file_add_logical_vec ), & MAYBEWRAP ( json_file_add_string_vec ) #ifdef USE_UCS4 generic , public :: add => json_file_add_string_path_ascii , & json_file_add_string_value_ascii ,& json_file_add_string_vec_path_ascii ,& json_file_add_string_vec_vec_ascii #endif !> ! Update a scalar variable in a [[json_file(type)]], ! by specifying the path. ! !@note These have been mostly supplanted by the `add` ! methods, which do a similar thing (and can be used for ! scalars and vectors, etc.) generic , public :: update => MAYBEWRAP ( json_file_update_integer ), & MAYBEWRAP ( json_file_update_logical ), & #ifndef REAL32 MAYBEWRAP ( json_file_update_real32 ), & #endif MAYBEWRAP ( json_file_update_real ), & #ifdef REAL128 MAYBEWRAP ( json_file_update_real64 ), & #endif MAYBEWRAP ( json_file_update_string ) #ifdef USE_UCS4 generic , public :: update => json_file_update_string_name_ascii , & json_file_update_string_val_ascii #endif !> ! Remove a variable from a [[json_file(type)]] ! by specifying the path. generic , public :: remove => MAYBEWRAP ( json_file_remove ) !traverse procedure , public :: traverse => json_file_traverse ! *************************************************** ! operators ! *************************************************** generic , public :: operator (. in .) => MAYBEWRAP ( json_file_valid_path_op ) procedure , pass ( me ) :: MAYBEWRAP ( json_file_valid_path_op ) generic , public :: assignment ( = ) => assign_json_file ,& assign_json_file_to_string ,& MAYBEWRAP ( assign_string_to_json_file ) procedure :: assign_json_file procedure , pass ( me ) :: assign_json_file_to_string procedure :: MAYBEWRAP ( assign_string_to_json_file ) ! *************************************************** ! private routines ! *************************************************** !load from string: procedure :: MAYBEWRAP ( json_file_load_from_string ) !initialize procedure :: initialize_json_core_in_file procedure :: set_json_core_in_file !get info: procedure :: MAYBEWRAP ( json_file_variable_info ) procedure :: MAYBEWRAP ( json_file_variable_matrix_info ) !rename: procedure :: MAYBEWRAP ( json_file_rename ) #ifdef USE_UCS4 procedure :: json_file_rename_path_ascii procedure :: json_file_rename_name_ascii #endif !validate path: procedure :: MAYBEWRAP ( json_file_valid_path ) !get: procedure :: MAYBEWRAP ( json_file_get_object ) procedure :: MAYBEWRAP ( json_file_get_integer ) #ifndef REAL32 procedure :: MAYBEWRAP ( json_file_get_real32 ) #endif procedure :: MAYBEWRAP ( json_file_get_real ) #ifdef REAL128 procedure :: MAYBEWRAP ( json_file_get_real64 ) #endif procedure :: MAYBEWRAP ( json_file_get_logical ) procedure :: MAYBEWRAP ( json_file_get_string ) procedure :: MAYBEWRAP ( json_file_get_integer_vec ) #ifndef REAL32 procedure :: MAYBEWRAP ( json_file_get_real32_vec ) #endif procedure :: MAYBEWRAP ( json_file_get_real_vec ) #ifdef REAL128 procedure :: MAYBEWRAP ( json_file_get_real64_vec ) #endif procedure :: MAYBEWRAP ( json_file_get_logical_vec ) procedure :: MAYBEWRAP ( json_file_get_string_vec ) procedure :: MAYBEWRAP ( json_file_get_alloc_string_vec ) procedure :: json_file_get_root !add: procedure :: json_file_add procedure :: MAYBEWRAP ( json_file_add_object ) procedure :: MAYBEWRAP ( json_file_add_integer ) #ifndef REAL32 procedure :: MAYBEWRAP ( json_file_add_real32 ) #endif procedure :: MAYBEWRAP ( json_file_add_real ) #ifdef REAL128 procedure :: MAYBEWRAP ( json_file_add_real64 ) #endif procedure :: MAYBEWRAP ( json_file_add_logical ) procedure :: MAYBEWRAP ( json_file_add_string ) procedure :: MAYBEWRAP ( json_file_add_integer_vec ) #ifndef REAL32 procedure :: MAYBEWRAP ( json_file_add_real32_vec ) #endif procedure :: MAYBEWRAP ( json_file_add_real_vec ) #ifdef REAL128 procedure :: MAYBEWRAP ( json_file_add_real64_vec ) #endif procedure :: MAYBEWRAP ( json_file_add_logical_vec ) procedure :: MAYBEWRAP ( json_file_add_string_vec ) #ifdef USE_UCS4 procedure :: json_file_add_string_path_ascii procedure :: json_file_add_string_value_ascii procedure :: json_file_add_string_vec_path_ascii procedure :: json_file_add_string_vec_vec_ascii #endif !update: procedure :: MAYBEWRAP ( json_file_update_integer ) procedure :: MAYBEWRAP ( json_file_update_logical ) #ifndef REAL32 procedure :: MAYBEWRAP ( json_file_update_real32 ) #endif procedure :: MAYBEWRAP ( json_file_update_real ) #ifdef REAL128 procedure :: MAYBEWRAP ( json_file_update_real64 ) #endif procedure :: MAYBEWRAP ( json_file_update_string ) #ifdef USE_UCS4 procedure :: json_file_update_string_name_ascii procedure :: json_file_update_string_val_ascii #endif !remove: procedure :: MAYBEWRAP ( json_file_remove ) !print: procedure :: json_file_print_to_console procedure :: json_file_print_to_unit procedure :: json_file_print_to_filename final :: finalize_json_file end type json_file !********************************************************* !********************************************************* !> author: Izaak Beekman ! date: 07/23/2015 ! ! Structure constructor to initialize a [[json_file(type)]] ! object with an existing [[json_value]] object or a JSON ! string, and either the [[json_core(type)]] settings or a ! [[json_core(type)]] instance. ! !### Example ! !```fortran ! ... ! type(json_file) :: my_file ! type(json_value),pointer :: json_object ! type(json_core) :: json_core_object ! ... ! ! Construct a json_object: ! !could do this: ! my_file = json_file(json_object) ! !or: ! my_file = json_file(json_object,verbose=.true.) ! !or: ! my_file = json_file('{\"x\": [1]}',verbose=.true.) ! !or: ! my_file = json_file(json_object,json_core_object) ! !or: ! my_file = json_file('{\"x\": [1]}',json_core_object) !``` interface json_file module procedure initialize_json_file , & initialize_json_file_v2 , & MAYBEWRAP ( initialize_json_file_from_string ), & MAYBEWRAP ( initialize_json_file_from_string_v2 ) end interface !************************************************************************************* contains !***************************************************************************************** !***************************************************************************************** !> ! Finalizer for [[json_file]] class. ! ! Just a wrapper for [[json_file_destroy]]. subroutine finalize_json_file ( me ) implicit none type ( json_file ), intent ( inout ) :: me call me % destroy ( destroy_core = . true .) end subroutine finalize_json_file !***************************************************************************************** !***************************************************************************************** !> ! Check error status in the file. pure function json_file_failed ( me ) result ( failed ) implicit none class ( json_file ), intent ( in ) :: me logical ( LK ) :: failed !! will be true if there has been an error. failed = me % core % failed () end function json_file_failed !***************************************************************************************** !***************************************************************************************** !> ! Retrieve error status and message from the class. subroutine json_file_check_for_errors ( me , status_ok , error_msg ) implicit none class ( json_file ), intent ( inout ) :: me logical ( LK ), intent ( out ), optional :: status_ok !! true if there were no errors character ( kind = CK , len = :), allocatable , intent ( out ), optional :: error_msg !! the error message !! (if there were errors) #if defined __GFORTRAN__ character ( kind = CK , len = :), allocatable :: tmp !! workaround for gfortran bugs call me % core % check_for_errors ( status_ok , tmp ) if ( present ( error_msg )) error_msg = tmp #else call me % core % check_for_errors ( status_ok , error_msg ) #endif end subroutine json_file_check_for_errors !***************************************************************************************** !***************************************************************************************** !> ! Clear exceptions in the class. pure subroutine json_file_clear_exceptions ( me ) implicit none class ( json_file ), intent ( inout ) :: me call me % core % clear_exceptions () end subroutine json_file_clear_exceptions !***************************************************************************************** !***************************************************************************************** !> ! This is a wrapper for [[json_print_error_message]]. subroutine json_file_print_error_message ( me , io_unit ) implicit none class ( json_file ), intent ( inout ) :: me integer , intent ( in ), optional :: io_unit call me % core % print_error_message ( io_unit ) end subroutine json_file_print_error_message !***************************************************************************************** !***************************************************************************************** !> ! Initialize the [[json_core(type)]] for this [[json_file]]. ! This is just a wrapper for [[json_initialize]]. ! !@note This does not destroy the data in the file. ! !@note [[initialize_json_core]], [[json_initialize]], ! [[initialize_json_core_in_file]], [[initialize_json_file]], ! [[initialize_json_file_v2]], [[initialize_json_file_from_string]], ! and [[initialize_json_file_from_string_v2]] ! all have a similar interface. subroutine initialize_json_core_in_file ( me ,& #include \"json_initialize_dummy_arguments.inc\" ) implicit none class ( json_file ), intent ( inout ) :: me #include \"json_initialize_arguments.inc\" call me % core % initialize (& #include \"json_initialize_dummy_arguments.inc\" ) end subroutine initialize_json_core_in_file !***************************************************************************************** !***************************************************************************************** !> ! Set the [[json_core(type)]] for this [[json_file]]. ! !@note This does not destroy the data in the file. ! !@note This one is used if you want to initialize the file with ! an already-existing [[json_core(type)]] (presumably, this was already ! initialized by a call to [[initialize_json_core]] or similar). subroutine set_json_core_in_file ( me , core ) implicit none class ( json_file ), intent ( inout ) :: me type ( json_core ), intent ( in ) :: core me % core = core end subroutine set_json_core_in_file !***************************************************************************************** !***************************************************************************************** !> ! Get a copy of the [[json_core(type)]] in this [[json_file]]. subroutine get_json_core_in_file ( me , core ) implicit none class ( json_file ), intent ( in ) :: me type ( json_core ), intent ( out ) :: core core = me % core end subroutine get_json_core_in_file !***************************************************************************************** !***************************************************************************************** !> author: Izaak Beekman ! date: 07/23/2015 ! ! Cast a [[json_value]] object as a [[json_file(type)]] object. ! It also calls the `initialize()` method. ! !@note [[initialize_json_core]], [[json_initialize]], ! [[initialize_json_core_in_file]], [[initialize_json_file]], ! [[initialize_json_file_v2]], [[initialize_json_file_from_string]], ! and [[initialize_json_file_from_string_v2]] ! all have a similar interface. function initialize_json_file ( p ,& #include \"json_initialize_dummy_arguments.inc\" , nullify_pointer & ) result ( file_object ) implicit none type ( json_file ) :: file_object type ( json_value ), pointer , optional :: p !! `json_value` object to cast !! as a `json_file` object. This !! will be nullified. #include \"json_initialize_arguments.inc\" logical ( LK ), intent ( in ), optional :: nullify_pointer !! if True, then `p` will be nullified !! if present. (default is True). Normally, !! this should be done, because the [[json_file]] will destroy !! the pointer when the class goes out of scope (causing `p` to be !! a dangling pointer). However, if the intent is to use `p` in !! a [[json_file]] and then call [[json_file:nullify]] and continue !! to use `p`, then this should be set to False. call file_object % initialize (& #include \"json_initialize_dummy_arguments.inc\" ) if ( present ( p )) then file_object % p => p ! we have to nullify it to avoid ! a dangling pointer when the file ! goes out of scope if ( present ( nullify_pointer )) then if ( nullify_pointer ) nullify ( p ) else nullify ( p ) end if end if end function initialize_json_file !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 4/26/2016 ! ! Cast a [[json_value]] pointer and a [[json_core(type)]] object ! as a [[json_file(type)]] object. function initialize_json_file_v2 ( json_value_object , json_core_object ) & result ( file_object ) implicit none type ( json_file ) :: file_object type ( json_value ), pointer , intent ( in ) :: json_value_object type ( json_core ), intent ( in ) :: json_core_object file_object % p => json_value_object file_object % core = json_core_object end function initialize_json_file_v2 !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 01/19/2019 ! ! Cast a JSON string as a [[json_file(type)]] object. ! It also calls the `initialize()` method. ! !### Example ! !```fortran ! type(json_file) :: f ! f = json_file('{\"key \": 1}', trailing_spaces_significant=.true.) !``` ! !@note [[initialize_json_core]], [[json_initialize]], ! [[initialize_json_core_in_file]], [[initialize_json_file]], ! [[initialize_json_file_v2]], [[initialize_json_file_from_string]], ! and [[initialize_json_file_from_string_v2]] ! all have a similar interface. function initialize_json_file_from_string ( str ,& #include \"json_initialize_dummy_arguments.inc\" ) result ( file_object ) implicit none type ( json_file ) :: file_object character ( kind = CK , len =* ), intent ( in ) :: str !! string to load JSON data from #include \"json_initialize_arguments.inc\" call file_object % initialize (& #include \"json_initialize_dummy_arguments.inc\" ) call file_object % deserialize ( str ) end function initialize_json_file_from_string !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[initialize_json_file_from_string]], where \"str\" is kind=CDK. function wrap_initialize_json_file_from_string ( str ,& #include \"json_initialize_dummy_arguments.inc\" ) result ( file_object ) implicit none type ( json_file ) :: file_object character ( kind = CDK , len =* ), intent ( in ) :: str !! string to load JSON data from #include \"json_initialize_arguments.inc\" file_object = initialize_json_file_from_string (& to_unicode ( str ),& #include \"json_initialize_dummy_arguments.inc\" ) end function wrap_initialize_json_file_from_string !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/19/2019 ! ! Cast a JSON string and a [[json_core(type)]] object ! as a [[json_file(type)]] object. function initialize_json_file_from_string_v2 ( str , json_core_object ) & result ( file_object ) implicit none type ( json_file ) :: file_object character ( kind = CK , len =* ), intent ( in ) :: str !! string to load JSON data from type ( json_core ), intent ( in ) :: json_core_object file_object % core = json_core_object call file_object % deserialize ( str ) end function initialize_json_file_from_string_v2 !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[initialize_json_file_from_string_v2]], where \"str\" is kind=CDK. function wrap_initialize_json_file_from_string_v2 ( str , json_core_object ) & result ( file_object ) implicit none type ( json_file ) :: file_object character ( kind = CDK , len =* ), intent ( in ) :: str !! string to load JSON data from type ( json_core ), intent ( in ) :: json_core_object file_object = initialize_json_file_from_string_v2 ( to_unicode ( str ), json_core_object ) end function wrap_initialize_json_file_from_string_v2 !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Nullify the [[json_value]] pointer in a [[json_file(type)]], ! but do not destroy it. ! ! This should normally only be done if the pointer is the target of ! another pointer outside the class that is still intended to be in ! scope after the [[json_file(type)]] has gone out of scope. ! Otherwise, this would result in a memory leak. ! !### See also ! * [[json_file_destroy]] ! !### History ! * 6/30/2019 : Created subroutine json_file_nullify ( me ) implicit none class ( json_file ), intent ( inout ) :: me nullify ( me % p ) end subroutine json_file_nullify !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Destroy the [[json_value]] data in a [[json_file(type)]]. ! This may be done when the variable is no longer needed, ! or will be reused to open a different file. ! Otherwise a memory leak will occur. ! ! Optionally, also destroy the [[json_core(type)]] instance (this ! is not necessary to prevent memory leaks, since a [[json_core(type)]] ! does not use pointers). ! !### See also ! * [[json_file_nullify]] ! !### History ! * 12/9/2013 : Created ! * 4/26/2016 : Added optional `destroy_core` argument ! !@note This routine will be called automatically when the variable ! goes out of scope. subroutine json_file_destroy ( me , destroy_core ) implicit none class ( json_file ), intent ( inout ) :: me logical , intent ( in ), optional :: destroy_core !! to also destroy the [[json_core(type)]]. !! default is to leave it as is. if ( associated ( me % p )) call me % core % destroy ( me % p ) if ( present ( destroy_core )) then if ( destroy_core ) call me % core % destroy () end if end subroutine json_file_destroy !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/5/2014 ! ! Move the [[json_value]] pointer from one [[json_file(type)]] to another. ! The \"from\" pointer is then nullified, but not destroyed. ! !@note If \"from%p\" is not associated, then an error is thrown. subroutine json_file_move_pointer ( to , from ) implicit none class ( json_file ), intent ( inout ) :: to class ( json_file ), intent ( inout ) :: from if ( associated ( from % p )) then if ( from % failed ()) then !Don't get the data if the FROM file has an !active exception, since it may not be valid. call to % core % throw_exception ( 'Error in json_file_move_pointer: ' // & 'error exception in FROM file.' ) else call to % initialize () !initialize and clear any exceptions that may be present to % p => from % p nullify ( from % p ) end if else call to % core % throw_exception ( 'Error in json_file_move_pointer: ' // & 'pointer is not associated.' ) end if end subroutine json_file_move_pointer !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/9/2013 ! ! Load the JSON data from a file. ! !### Example ! !```fortran ! program main ! use json_module ! implicit none ! type(json_file) :: f ! call f%load('my_file.json') ! !... ! call f%destroy() ! end program main !``` subroutine json_file_load ( me , filename , unit , destroy_pointer ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: filename !! the filename to open integer ( IK ), intent ( in ), optional :: unit !! the unit number to use !! (if not present, a newunit !! is used) logical ( LK ), intent ( in ), optional :: destroy_pointer !! destroy the pointer before !! loading (default is True) if ( present ( destroy_pointer )) then if ( destroy_pointer ) call me % destroy () else ! by default it is destroyed call me % destroy () end if call me % core % load ( file = filename , p = me % p , unit = unit ) end subroutine json_file_load !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/13/2015 ! ! Load the JSON data from a string. ! !### Example ! ! Load JSON from a string: !```fortran ! type(json_file) :: f ! call f%deserialize('{ \"name\": \"Leonidas\" }') !``` subroutine json_file_load_from_string ( me , str , destroy_pointer ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: str !! string to load JSON data from logical ( LK ), intent ( in ), optional :: destroy_pointer !! destroy the pointer before !! loading (default is True) if ( present ( destroy_pointer )) then if ( destroy_pointer ) call me % destroy () else ! by default it is destroyed call me % destroy () end if call me % core % deserialize ( me % p , str ) end subroutine json_file_load_from_string !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_load_from_string]], where \"str\" is kind=CDK. subroutine wrap_json_file_load_from_string ( me , str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: str call me % deserialize ( to_unicode ( str )) end subroutine wrap_json_file_load_from_string !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/11/2015 ! ! Print the JSON file to the console. subroutine json_file_print_to_console ( me ) implicit none class ( json_file ), intent ( inout ) :: me call me % core % print ( me % p , iunit = int ( output_unit , IK )) end subroutine json_file_print_to_console !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/9/2013 ! ! Prints the JSON file to the specified file unit number. subroutine json_file_print_to_unit ( me , iunit ) implicit none class ( json_file ), intent ( inout ) :: me integer ( IK ), intent ( in ) :: iunit !! file unit number (must not be -1) if ( iunit /= unit2str ) then call me % core % print ( me % p , iunit = iunit ) else call me % core % throw_exception ( 'Error in json_file_print_to_unit: iunit must not be -1.' ) end if end subroutine json_file_print_to_unit !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/11/2015 ! ! Print the JSON structure to the specified filename. ! The file is opened, printed, and then closed. ! !### Example ! Example loading a JSON file, changing a value, and then printing ! result to a new file: !```fortran ! type(json_file) :: f ! logical :: found ! call f%load('my_file.json') !open the original file ! call f%update('version',4,found) !change the value of a variable ! call f%print('my_file_2.json') !save file as new name !``` subroutine json_file_print_to_filename ( me , filename ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: filename !! filename to print to call me % core % print ( me % p , filename ) end subroutine json_file_print_to_filename !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/11/2015 ! ! Print the JSON file to a string. ! !### Example ! ! Open a JSON file, and then print the contents to a string: !```fortran ! type(json_file) :: f ! character(kind=CK,len=:),allocatable :: str ! call f%load('my_file.json') ! call f%serialize(str) !``` subroutine json_file_print_to_string ( me , str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len = :), allocatable , intent ( out ) :: str !! string to print JSON data to call me % core % serialize ( me % p , str ) end subroutine json_file_print_to_string !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 2/3/2014 ! ! Returns information about a variable in a [[json_file(type)]]. ! !@note 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. subroutine json_file_variable_info ( me , path , found , var_type , n_children , name ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable logical ( LK ), intent ( out ), optional :: found !! the variable exists in the structure integer ( IK ), intent ( out ), optional :: var_type !! variable type integer ( IK ), intent ( out ), optional :: n_children !! number of children character ( kind = CK , len = :), allocatable , intent ( out ), optional :: name !! variable name call me % core % info ( me % p , path , found , var_type , n_children , name ) end subroutine json_file_variable_info !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_variable_info]], where \"path\" is kind=CDK. ! !@note 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. subroutine wrap_json_file_variable_info ( me , path , found , var_type , n_children , name ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path logical ( LK ), intent ( out ), optional :: found integer ( IK ), intent ( out ), optional :: var_type integer ( IK ), intent ( out ), optional :: n_children character ( kind = CK , len = :), allocatable , intent ( out ), optional :: name !! variable name call me % info ( to_unicode ( path ), found , var_type , n_children , name ) end subroutine wrap_json_file_variable_info !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 6/26/2016 ! ! Returns matrix information about a variable in a [[json_file(type)]]. ! !@note 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. subroutine 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 = CK , 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 % core % matrix_info ( me % p , path , is_matrix , found , var_type , n_sets , set_size , name ) end subroutine json_file_variable_matrix_info !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_variable_matrix_info]], where \"path\" is kind=CDK. ! !@note 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. 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 !***************************************************************************************** !***************************************************************************************** !> author: Izaak Beekman ! date: 7/23/2015 ! ! Get a [[json_value]] pointer to the JSON file root. ! !@note This is equivalent to calling ```[[json_file]]%get('$',p)``` subroutine json_file_get_root ( me , p ) implicit none class ( json_file ), intent ( inout ) :: me type ( json_value ), pointer , intent ( out ) :: p !! pointer to the variable p => me % p end subroutine json_file_get_root !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Assignment operator for [[json_core(type)]] = [[json_core(type)]]. ! This will duplicate the [[json_core(type)]] and also ! perform a deep copy of the [[json_value(type)]] data structure. subroutine assign_json_file ( me , f ) implicit none class ( json_file ), intent ( out ) :: me type ( json_file ), intent ( in ) :: f me % core = f % core ! no pointers here so OK to copy call me % core % clone ( f % p , me % p ) end subroutine assign_json_file !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Assignment operator for character = [[json_core(type)]]. ! This is just a wrapper for the [[json_value_to_string]] routine. ! !### Note ! * If an exception is raised or the file contains no data, ! this will return an empty string. subroutine assign_json_file_to_string ( str , me ) implicit none character ( kind = CK , len = :), allocatable , intent ( out ) :: str class ( json_file ), intent ( in ) :: me type ( json_core ) :: core_copy !! a copy of `core` from `me` if ( me % core % failed () . or . . not . associated ( me % p )) then str = CK_ '' else ! This is sort of a hack. Since `me` has to have `intent(in)` ! for the assignment to work, we need to make a copy of `me%core` ! so we can call the low level routine (since it needs it to ! be `intent(inout)`) because it's possible for this ! function to raise an exception. core_copy = me % core ! copy the parser settings call core_copy % serialize ( me % p , str ) if ( me % core % failed ()) str = CK_ '' end if end subroutine assign_json_file_to_string !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Assignment operator for [[json_core(type)]] = character. ! This is just a wrapper for the [[json_file_load_from_string]] routine. subroutine assign_string_to_json_file ( me , str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: str if ( associated ( me % p )) call me % destroy () if ( me % core % failed ()) call me % core % clear_exceptions () call me % deserialize ( str ) end subroutine assign_string_to_json_file !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[assign_string_to_json_file]], where \"str\" is kind=CDK. subroutine wrap_assign_string_to_json_file ( me , str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: str call me % assign_string_to_json_file ( to_unicode ( str )) end subroutine wrap_assign_string_to_json_file !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! A wrapper for [[json_file_valid_path]] for the `.in.` operator function json_file_valid_path_op ( path , me ) result ( found ) implicit none character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable class ( json_file ), intent ( in ) :: me !! the JSON file logical ( LK ) :: found !! if the variable was found type ( json_core ) :: core_copy !! a copy of `core` from `me` ! This is sort of a hack. Since `me` has to have `intent(in)` ! for the operator to work, we need to make a copy of `me%core` ! so we can call the low level routine (since it needs it to ! be `intent(inout)`) because it's technically possible for this ! function to raise an exception. This normally should never ! happen here unless the JSON structure is malformed. core_copy = me % core ! copy the settings (need them to know ! how to interpret the path) found = core_copy % valid_path ( me % p , path ) ! call the low-level routine call core_copy % destroy () ! just in case (but not really necessary) end function json_file_valid_path_op !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_valid_path_op]], where \"path\" is kind=CDK. function wrap_json_file_valid_path_op ( path , me ) result ( found ) implicit none character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable class ( json_file ), intent ( in ) :: me !! the JSON file logical ( LK ) :: found !! if the variable was found found = to_unicode ( path ) . in . me end function wrap_json_file_valid_path_op !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Returns true if the `path` is present in the JSON file. function json_file_valid_path ( me , path ) result ( found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ) :: found !! if the variable was found found = me % core % valid_path ( me % p , path ) end function json_file_valid_path !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_valid_path]], where \"path\" is kind=CDK. function wrap_json_file_valid_path ( me , path ) result ( found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ) :: found !! if the variable was found found = me % valid_path ( to_unicode ( path )) end function wrap_json_file_valid_path !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Rename a variable in a JSON file. subroutine json_file_rename ( me , path , name , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), intent ( in ) :: name !! the new name logical ( LK ), intent ( out ), optional :: found !! if the variable was found call me % core % rename ( me % p , path , name , found ) end subroutine json_file_rename !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_rename]], where \"path\" and \"name\" are kind=CDK. subroutine wrap_json_file_rename ( me , path , name , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), intent ( in ) :: name !! the new name logical ( LK ), intent ( out ), optional :: found !! if the variable was found call me % json_file_rename ( to_unicode ( path ), to_unicode ( name ), found ) end subroutine wrap_json_file_rename !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Wrapper for [[json_file_rename]] where \"path\" is kind=CDK). subroutine json_file_rename_path_ascii ( me , path , name , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), intent ( in ) :: name !! the new name logical ( LK ), intent ( out ), optional :: found !! if the variable was found call me % json_file_rename ( to_unicode ( path ), name , found ) end subroutine json_file_rename_path_ascii !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Wrapper for [[json_file_rename]] where \"name\" is kind=CDK). subroutine json_file_rename_name_ascii ( me , path , name , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), intent ( in ) :: name !! the new name logical ( LK ), intent ( out ), optional :: found !! if the variable was found call me % json_file_rename ( path , to_unicode ( name ), found ) end subroutine json_file_rename_name_ascii !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 2/3/2014 ! ! Get a [[json_value]] pointer to an object from a JSON file. subroutine json_file_get_object ( me , path , p , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable type ( json_value ), pointer , intent ( out ) :: p !! pointer to the variable logical ( LK ), intent ( out ), optional :: found !! if it was really found call me % core % get ( me % p , path , p , found ) end subroutine json_file_get_object !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_get_object]], where \"path\" is kind=CDK. subroutine wrap_json_file_get_object ( me , path , p , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable type ( json_value ), pointer , intent ( out ) :: p !! pointer to the variable logical ( LK ), intent ( out ), optional :: found !! if it was really found call me % get ( to_unicode ( path ), p , found ) end subroutine wrap_json_file_get_object !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/9/2013 ! ! Get an integer value from a JSON file. subroutine json_file_get_integer ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found integer ( IK ), intent ( in ), optional :: default call me % core % get ( me % p , path , val , found , default ) end subroutine json_file_get_integer !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_get_integer]], where \"path\" is kind=CDK. subroutine wrap_json_file_get_integer ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found integer ( IK ), intent ( in ), optional :: default call me % get ( to_unicode ( path ), val , found , default ) end subroutine wrap_json_file_get_integer !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/20/2014 ! ! Get an integer vector from a JSON file. subroutine json_file_get_integer_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found integer ( IK ), dimension (:), intent ( in ), optional :: default call me % core % get ( me % p , path , vec , found , default ) end subroutine json_file_get_integer_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_get_integer_vec]], where \"path\" is kind=CDK. subroutine wrap_json_file_get_integer_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found integer ( IK ), dimension (:), intent ( in ), optional :: default call me % get ( to_unicode ( path ), vec , found , default ) end subroutine wrap_json_file_get_integer_vec !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/9/2013 ! ! Get a real(RK) variable value from a JSON file. subroutine json_file_get_real ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( RK ), intent ( in ), optional :: default call me % core % get ( me % p , path , val , found , default ) end subroutine json_file_get_real !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_get_real]], where \"path\" is kind=CDK. subroutine wrap_json_file_get_real ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( RK ), intent ( in ), optional :: default call me % get ( to_unicode ( path ), val , found , default ) end subroutine wrap_json_file_get_real !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/19/2014 ! ! Get a real(RK) vector from a JSON file. subroutine json_file_get_real_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( RK ), dimension (:), intent ( in ), optional :: default call me % core % get ( me % p , path , vec , found , default ) end subroutine json_file_get_real_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_get_real_vec]], where \"path\" is kind=CDK. subroutine wrap_json_file_get_real_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( RK ), dimension (:), intent ( in ), optional :: default call me % get ( to_unicode ( path ), vec , found , default ) end subroutine wrap_json_file_get_real_vec !***************************************************************************************** #ifndef REAL32 !***************************************************************************************** !> author: Jacob Williams ! date: 1/21/2019 ! ! Alternate version of [[json_file_get_real]] where `val` is `real32`. subroutine json_file_get_real32 ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( real32 ), intent ( in ), optional :: default call me % core % get ( me % p , path , val , found , default ) end subroutine json_file_get_real32 !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_get_real32]], where \"path\" is kind=CDK. subroutine wrap_json_file_get_real32 ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( real32 ), intent ( in ), optional :: default call me % get ( to_unicode ( path ), val , found , default ) end subroutine wrap_json_file_get_real32 !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/21/2019 ! ! Alternate version of [[json_file_get_real_vec]] where `vec` is `real32`. subroutine json_file_get_real32_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( real32 ), dimension (:), intent ( in ), optional :: default call me % core % get ( me % p , path , vec , found , default ) end subroutine json_file_get_real32_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_get_real32_vec]], where \"path\" is kind=CDK. subroutine wrap_json_file_get_real32_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( real32 ), dimension (:), intent ( in ), optional :: default call me % get ( to_unicode ( path ), vec , found , default ) end subroutine wrap_json_file_get_real32_vec !***************************************************************************************** #endif #ifdef REAL128 !***************************************************************************************** !> author: Jacob Williams ! date: 1/21/2019 ! ! Alternate version of [[json_file_get_real]] where `val` is `real64`. subroutine json_file_get_real64 ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real64 ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( real64 ), intent ( in ), optional :: default call me % core % get ( me % p , path , val , found , default ) end subroutine json_file_get_real64 !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_get_real64]], where \"path\" is kind=CDK. subroutine wrap_json_file_get_real64 ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real64 ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( real64 ), intent ( in ), optional :: default call me % get ( to_unicode ( path ), val , found , default ) end subroutine wrap_json_file_get_real64 !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/21/2019 ! ! Alternate version of [[json_file_get_real_vec]] where `vec` is `real64`. subroutine json_file_get_real64_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real64 ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( real64 ), dimension (:), intent ( in ), optional :: default call me % core % get ( me % p , path , vec , found , default ) end subroutine json_file_get_real64_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_get_real64_vec]], where \"path\" is kind=CDK. subroutine wrap_json_file_get_real64_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real64 ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( real64 ), dimension (:), intent ( in ), optional :: default call me % get ( to_unicode ( path ), vec , found , default ) end subroutine wrap_json_file_get_real64_vec !***************************************************************************************** #endif !***************************************************************************************** !> author: Jacob Williams ! date: 12/9/2013 ! ! Get a logical(LK) value from a JSON file. subroutine json_file_get_logical ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found logical ( LK ), intent ( in ), optional :: default call me % core % get ( me % p , path , val , found , default ) end subroutine json_file_get_logical !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_get_logical]], where \"path\" is kind=CDK. subroutine wrap_json_file_get_logical ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found logical ( LK ), intent ( in ), optional :: default call me % get ( to_unicode ( path ), val , found , default ) end subroutine wrap_json_file_get_logical !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/20/2014 ! ! Get a logical(LK) vector from a JSON file. subroutine json_file_get_logical_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found logical ( LK ), dimension (:), intent ( in ), optional :: default call me % core % get ( me % p , path , vec , found , default ) end subroutine json_file_get_logical_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_get_logical_vec]], where \"path\" is kind=CDK. subroutine wrap_json_file_get_logical_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found logical ( LK ), dimension (:), intent ( in ), optional :: default call me % get ( to_unicode ( path ), vec , found , default ) end subroutine wrap_json_file_get_logical_vec !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/9/2013 ! ! Get a character string from a json file. ! The output val is an allocatable character string. subroutine json_file_get_string ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len = :), allocatable , intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found character ( kind = CK , len =* ), intent ( in ), optional :: default call me % core % get ( me % p , path , val , found , default ) end subroutine json_file_get_string !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_get_string]], where \"path\" is kind=CDK. subroutine wrap_json_file_get_string ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len = :), allocatable , intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found character ( kind = CK , len =* ), intent ( in ), optional :: default call me % get ( to_unicode ( path ), val , found , default ) end subroutine wrap_json_file_get_string !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/19/2014 ! ! Get a string vector from a JSON file. subroutine json_file_get_string_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), dimension (:), allocatable , intent ( out ) :: vec !! value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found character ( kind = CK , len =* ), dimension (:), intent ( in ), optional :: default call me % core % get ( me % p , path , vec , found , default ) end subroutine json_file_get_string_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_get_string_vec]], where \"path\" is kind=CDK. subroutine wrap_json_file_get_string_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), dimension (:), allocatable , intent ( out ) :: vec !! value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found character ( kind = CK , len =* ), dimension (:), intent ( in ), optional :: default call me % get ( to_unicode ( path ), vec , found , default ) end subroutine wrap_json_file_get_string_vec !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/17/2016 ! ! Get an (allocatable length) string vector from a JSON file. ! This is just a wrapper for [[json_get_alloc_string_vec_by_path]]. subroutine json_file_get_alloc_string_vec ( me , path , vec , ilen , found , default , default_ilen ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len = :), dimension (:), allocatable , intent ( out ) :: vec !! value vector integer ( IK ), dimension (:), allocatable , intent ( out ) :: ilen !! the actual length !! of each character !! string in the array logical ( LK ), intent ( out ), optional :: found character ( kind = CK , len =* ), dimension (:), intent ( in ), optional :: default integer ( IK ), dimension (:), intent ( in ), optional :: default_ilen !! the actual !! length of `default` call me % core % get ( me % p , path , vec , ilen , found , default , default_ilen ) end subroutine json_file_get_alloc_string_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_get_alloc_string_vec]], where \"path\" is kind=CDK. ! This is just a wrapper for [[wrap_json_get_alloc_string_vec_by_path]]. subroutine wrap_json_file_get_alloc_string_vec ( me , path , vec , ilen , found , default , default_ilen ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len = :), dimension (:), allocatable , intent ( out ) :: vec !! value vector integer ( IK ), dimension (:), allocatable , intent ( out ) :: ilen !! the actual length !! of each character !! string in the array logical ( LK ), intent ( out ), optional :: found character ( kind = CK , len =* ), dimension (:), intent ( in ), optional :: default integer ( IK ), dimension (:), intent ( in ), optional :: default_ilen !! the actual !! length of `default` call me % get ( to_unicode ( path ), vec , ilen , found , default , default_ilen ) end subroutine wrap_json_file_get_alloc_string_vec !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Add a [[json_value]] pointer as the root object to a JSON file. ! !### Note ! ! This is mostly equivalent to: !```fortran ! f = [[json_file]](p) !``` ! But without the finalization calls. ! ! And: !```fortran ! if (destroy_original) call [[json_file]]%destroy() ! call [[json_file]]%add('$',p) !``` subroutine json_file_add ( me , p , destroy_original ) implicit none class ( json_file ), intent ( inout ) :: me type ( json_value ), pointer , intent ( in ) :: p !! pointer to the variable to add logical ( LK ), intent ( in ), optional :: destroy_original !! if the file currently contains !! an associated pointer, it is !! destroyed. [Default is True] logical ( LK ) :: destroy !! if `me%p` is to be destroyed if ( present ( destroy_original )) then destroy = destroy_original else destroy = . true . ! default end if if ( destroy ) call me % destroy () me % p => p end subroutine json_file_add !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Add a [[json_value]] pointer to an object to a JSON file. subroutine json_file_add_object ( me , path , p , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable type ( json_value ), pointer , intent ( in ) :: p !! pointer to the variable to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , p , found , was_created ) end subroutine json_file_add_object !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_object]], where \"path\" is kind=CDK. subroutine wrap_json_file_add_object ( me , path , p , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable type ( json_value ), pointer , intent ( in ) :: p !! pointer to the variable to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_object ( to_unicode ( path ), p , found , was_created ) end subroutine wrap_json_file_add_object !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Add an integer value to a JSON file. subroutine json_file_add_integer ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , val , found , was_created ) end subroutine json_file_add_integer !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_integer]], where \"path\" is kind=CDK. subroutine wrap_json_file_add_integer ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_integer ( to_unicode ( path ), val , found , was_created ) end subroutine wrap_json_file_add_integer !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Add an integer vector to a JSON file. subroutine json_file_add_integer_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , vec , found , was_created ) end subroutine json_file_add_integer_vec !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_integer_vec]], where \"path\" is kind=CDK. subroutine wrap_json_file_add_integer_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_integer_vec ( to_unicode ( path ), vec , found , was_created ) end subroutine wrap_json_file_add_integer_vec !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Add a real(RK) variable value to a JSON file. subroutine json_file_add_real ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , val , found , was_created ) end subroutine json_file_add_real !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_real]], where \"path\" is kind=CDK. subroutine wrap_json_file_add_real ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_real ( to_unicode ( path ), val , found , was_created ) end subroutine wrap_json_file_add_real !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Add a real(RK) vector to a JSON file. subroutine json_file_add_real_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , vec , found , was_created ) end subroutine json_file_add_real_vec !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_real_vec]], where \"path\" is kind=CDK. subroutine wrap_json_file_add_real_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_real_vec ( to_unicode ( path ), vec , found , was_created ) end subroutine wrap_json_file_add_real_vec !***************************************************************************************** #ifndef REAL32 !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_real]] where `val` is `real32`. subroutine json_file_add_real32 ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % core % add_by_path ( me % p , path , val , found , was_created ) end subroutine json_file_add_real32 !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_real32]], where \"path\" is kind=CDK. subroutine wrap_json_file_add_real32 ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_real32 ( to_unicode ( path ), val , found , was_created ) end subroutine wrap_json_file_add_real32 !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_real_vec]] where `vec` is `real32`. subroutine json_file_add_real32_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % core % add_by_path ( me % p , path , vec , found , was_created ) end subroutine json_file_add_real32_vec !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_real32_vec]], where \"path\" is kind=CDK. subroutine wrap_json_file_add_real32_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_real32_vec ( to_unicode ( path ), vec , found , was_created ) end subroutine wrap_json_file_add_real32_vec !***************************************************************************************** #endif #ifdef REAL128 !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_real]] where `val` is `real64`. subroutine json_file_add_real64 ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real64 ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % core % add_by_path ( me % p , path , val , found , was_created ) end subroutine json_file_add_real64 !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_real64]], where \"path\" is kind=CDK. subroutine wrap_json_file_add_real64 ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real64 ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_real64 ( to_unicode ( path ), val , found , was_created ) end subroutine wrap_json_file_add_real64 !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_real_vec]] where `vec` is `real64`. subroutine json_file_add_real64_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real64 ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % core % add_by_path ( me % p , path , vec , found , was_created ) end subroutine json_file_add_real64_vec !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_real64_vec]], where \"path\" is kind=CDK. subroutine wrap_json_file_add_real64_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real64 ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_real64_vec ( to_unicode ( path ), vec , found , was_created ) end subroutine wrap_json_file_add_real64_vec !***************************************************************************************** #endif !***************************************************************************************** !> author: Jacob Williams ! ! Add a logical(LK) value to a JSON file. subroutine json_file_add_logical ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , val , found , was_created ) end subroutine json_file_add_logical !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_logical]], where \"path\" is kind=CDK. subroutine wrap_json_file_add_logical ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_logical ( to_unicode ( path ), val , found , was_created ) end subroutine wrap_json_file_add_logical !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Add a logical(LK) vector to a JSON file. subroutine json_file_add_logical_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , vec , found , was_created ) end subroutine json_file_add_logical_vec !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_logical_vec]], where \"path\" is kind=CDK. subroutine wrap_json_file_add_logical_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_logical_vec ( to_unicode ( path ), vec , found , was_created ) end subroutine wrap_json_file_add_logical_vec !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Add a character string to a json file. subroutine json_file_add_string ( me , path , val , found , was_created , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (note that ADJUSTL is done before TRIM) if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , val , found , was_created , trim_str , adjustl_str ) end subroutine json_file_add_string !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_string]], where \"path\" and \"val\" are kind=CDK. subroutine wrap_json_file_add_string ( me , path , val , found , was_created , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (note that ADJUSTL is done before TRIM) call me % json_file_add_string ( to_unicode ( path ), to_unicode ( val ), found ,& was_created , trim_str , adjustl_str ) end subroutine wrap_json_file_add_string !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Wrapper for [[json_file_add_string]] where \"path\" is kind=CDK). subroutine json_file_add_string_path_ascii ( me , path , val , found ,& was_created , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (note that ADJUSTL is done before TRIM) if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % json_file_add_string ( to_unicode ( path ), val , found ,& was_created , trim_str , adjustl_str ) end subroutine json_file_add_string_path_ascii !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Wrapper for [[json_file_add_string]] where \"val\" is kind=CDK). subroutine json_file_add_string_value_ascii ( me , path , val , found ,& was_created , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (note that ADJUSTL is done before TRIM) if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % json_file_add_string ( path , to_unicode ( val ), found ,& was_created , trim_str , adjustl_str ) end subroutine json_file_add_string_value_ascii !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Add a string vector to a JSON file. subroutine json_file_add_string_vec ( me , path , vec , found ,& was_created , ilen , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created integer ( IK ), dimension (:), intent ( in ), optional :: ilen !! the string lengths of each !! element in `value`. If not present, !! the full `len(value)` string is added !! for each element. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element !! (note that ADJUSTL is done before TRIM) if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , vec , found , was_created , ilen , trim_str , adjustl_str ) end subroutine json_file_add_string_vec !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_string_vec]], where \"path\" and \"vec\" are kind=CDK. subroutine wrap_json_file_add_string_vec ( me , path , vec , found ,& was_created , ilen , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created integer ( IK ), dimension (:), intent ( in ), optional :: ilen !! the string lengths of each !! element in `value`. If not present, !! the full `len(value)` string is added !! for each element. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element !! (note that ADJUSTL is done before TRIM) call me % json_file_add_string_vec ( to_unicode ( path ), to_unicode ( vec ), found ,& was_created , ilen , trim_str , adjustl_str ) end subroutine wrap_json_file_add_string_vec !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_string_vec]], where \"path\" is kind=CDK. subroutine json_file_add_string_vec_path_ascii ( me , path , vec , found ,& was_created , ilen , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created integer ( IK ), dimension (:), intent ( in ), optional :: ilen !! the string lengths of each !! element in `value`. If not present, !! the full `len(value)` string is added !! for each element. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element !! (note that ADJUSTL is done before TRIM) call me % json_file_add_string_vec ( to_unicode ( path ), vec , found ,& was_created , ilen , trim_str , adjustl_str ) end subroutine json_file_add_string_vec_path_ascii !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_string_vec]], where \"vec\" is kind=CDK. subroutine json_file_add_string_vec_vec_ascii ( me , path , vec , found ,& was_created , ilen , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created integer ( IK ), dimension (:), intent ( in ), optional :: ilen !! the string lengths of each !! element in `value`. If not present, !! the full `len(value)` string is added !! for each element. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element !! (note that ADJUSTL is done before TRIM) call me % json_file_add_string_vec ( path , to_unicode ( vec ), found ,& was_created , ilen , trim_str , adjustl_str ) end subroutine json_file_add_string_vec_vec_ascii !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/10/2015 ! ! Given the path string, if the variable is present in the file, ! and is a scalar, then update its value. ! If it is not present, then create it and set its value. ! !### See also ! * [[json_update_integer]] subroutine json_file_update_integer ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path integer ( IK ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found if (. not . me % core % failed ()) call me % core % update ( me % p , path , val , found ) end subroutine json_file_update_integer !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_update_integer]], where \"path\" is kind=CDK. subroutine wrap_json_file_update_integer ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path integer ( IK ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found call me % update ( to_unicode ( path ), val , found ) end subroutine wrap_json_file_update_integer !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/10/2015 ! ! Given the path string, if the variable is present in the file, ! and is a scalar, then update its value. ! If it is not present, then create it and set its value. ! !### See also ! * [[json_update_logical]] subroutine json_file_update_logical ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path logical ( LK ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found if (. not . me % core % failed ()) call me % core % update ( me % p , path , val , found ) end subroutine json_file_update_logical !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_update_logical]], where \"path\" is kind=CDK. subroutine wrap_json_file_update_logical ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path logical ( LK ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found call me % update ( to_unicode ( path ), val , found ) end subroutine wrap_json_file_update_logical !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/10/2015 ! ! Given the path string, if the variable is present in the file, ! and is a scalar, then update its value. ! If it is not present, then create it and set its value. subroutine json_file_update_real ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path real ( RK ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found if (. not . me % core % failed ()) call me % core % update ( me % p , path , val , found ) end subroutine json_file_update_real !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_update_real]], where \"path\" is kind=CDK. subroutine wrap_json_file_update_real ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path real ( RK ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found call me % update ( to_unicode ( path ), val , found ) end subroutine wrap_json_file_update_real !***************************************************************************************** #ifndef REAL32 !***************************************************************************************** !> author: Jacob Williams ! date: 1/21/2019 ! ! Alternate version of [[json_file_update_real]] where `val` is `real32`. subroutine json_file_update_real32 ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path real ( real32 ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found call me % update ( path , real ( val , RK ), found ) end subroutine json_file_update_real32 !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_update_real32]], where \"path\" is kind=CDK. subroutine wrap_json_file_update_real32 ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path real ( real32 ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found call me % update ( to_unicode ( path ), val , found ) end subroutine wrap_json_file_update_real32 !***************************************************************************************** #endif #ifdef REAL128 !***************************************************************************************** !> author: Jacob Williams ! date: 1/21/2019 ! ! Alternate version of [[json_file_update_real]] where `val` is `real64`. subroutine json_file_update_real64 ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path real ( real64 ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found call me % update ( path , real ( val , RK ), found ) end subroutine json_file_update_real64 !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_update_real64]], where \"path\" is kind=CDK. subroutine wrap_json_file_update_real64 ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path real ( real64 ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found call me % update ( to_unicode ( path ), val , found ) end subroutine wrap_json_file_update_real64 !***************************************************************************************** #endif !***************************************************************************************** !> author: Jacob Williams ! date: 1/10/2015 ! ! Given the path string, if the variable is present in the file, ! and is a scalar, then update its value. ! If it is not present, then create it and set its value. ! !### See also ! * [[json_update_string]] subroutine json_file_update_string ( me , path , val , found , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path character ( kind = CK , len =* ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (note that ADJUSTL is done before TRIM) if (. not . me % core % failed ()) call me % core % update ( me % p , path , val , found , trim_str , adjustl_str ) end subroutine json_file_update_string !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_update_string]], where \"path\" and \"val\" are kind=CDK. subroutine wrap_json_file_update_string ( me , path , val , found , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path character ( kind = CDK , len =* ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (note that ADJUSTL is done before TRIM) call me % update ( to_unicode ( path ), to_unicode ( val ), found , trim_str , adjustl_str ) end subroutine wrap_json_file_update_string !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_update_string]], where \"path\" is kind=CDK. subroutine json_file_update_string_name_ascii ( me , path , val , found , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path character ( kind = CK , len =* ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (note that ADJUSTL is done before TRIM) call me % update ( to_unicode ( path ), val , found , trim_str , adjustl_str ) end subroutine json_file_update_string_name_ascii !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_update_string]], where \"val\" is kind=CDK. subroutine json_file_update_string_val_ascii ( me , path , val , found , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path character ( kind = CDK , len =* ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (note that ADJUSTL is done before TRIM) call me % update ( path , to_unicode ( val ), found , trim_str , adjustl_str ) end subroutine json_file_update_string_val_ascii !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 6/11/2016 ! ! Traverse the JSON structure in the file. ! This routine calls the user-specified [[json_traverse_callback_func]] ! for each element of the structure. subroutine json_file_traverse ( me , traverse_callback ) implicit none class ( json_file ), intent ( inout ) :: me procedure ( json_traverse_callback_func ) :: traverse_callback call me % core % traverse ( me % p , traverse_callback ) end subroutine json_file_traverse !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 7/7/2018 ! ! Remove a variable from a JSON file. ! !@note This is just a wrapper to [[remove_if_present]]. subroutine json_file_remove ( me , path ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable call me % core % remove_if_present ( me % p , path ) end subroutine json_file_remove !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_remove]], where \"path\" is kind=CDK. subroutine wrap_json_file_remove ( me , path ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable call me % remove ( to_unicode ( path )) end subroutine wrap_json_file_remove !***************************************************************************************** !***************************************************************************************** end module json_file_module !*****************************************************************************************","tags":"","loc":"sourcefile/json_file_module.f90.html"},{"title":"json_parameters.F90 – JSON-Fortran","text":"This file depends on sourcefile~~json_parameters.f90~~EfferentGraph sourcefile~json_parameters.f90 json_parameters.F90 sourcefile~json_kinds.f90 json_kinds.F90 sourcefile~json_parameters.f90->sourcefile~json_kinds.f90 Help Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\nis dependent upon another if the latter must be compiled before the former\ncan be. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Files dependent on this one sourcefile~~json_parameters.f90~~AfferentGraph sourcefile~json_parameters.f90 json_parameters.F90 sourcefile~json_file_module.f90 json_file_module.F90 sourcefile~json_file_module.f90->sourcefile~json_parameters.f90 sourcefile~json_string_utilities.f90 json_string_utilities.F90 sourcefile~json_file_module.f90->sourcefile~json_string_utilities.f90 sourcefile~json_value_module.f90 json_value_module.F90 sourcefile~json_file_module.f90->sourcefile~json_value_module.f90 sourcefile~json_module.f90 json_module.F90 sourcefile~json_module.f90->sourcefile~json_parameters.f90 sourcefile~json_module.f90->sourcefile~json_file_module.f90 sourcefile~json_module.f90->sourcefile~json_string_utilities.f90 sourcefile~json_module.f90->sourcefile~json_value_module.f90 sourcefile~json_string_utilities.f90->sourcefile~json_parameters.f90 sourcefile~json_value_module.f90->sourcefile~json_parameters.f90 sourcefile~json_value_module.f90->sourcefile~json_string_utilities.f90 Help Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\nis dependent upon another if the latter must be compiled before the former\ncan be. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code !***************************************************************************************** !> author: Jacob Williams ! license: BSD ! ! Other parameters used by JSON-Fortran. ! This is a low-level module not meant to be used by a JSON-Fortran user. ! !### License ! * JSON-Fortran is released under a BSD-style license. ! See the [LICENSE](https://github.com/jacobwilliams/json-fortran/blob/master/LICENSE) ! file for details. module json_parameters use json_kinds implicit none public character ( kind = CDK , len =* ), parameter :: json_ext = '.json' !! JSON file extension ! The types of JSON data. integer ( IK ), parameter :: json_unknown = 0 !! Unknown JSON data type !! (see [[json_file_variable_info]] and [[json_info]]) integer ( IK ), parameter :: json_null = 1 !! Null JSON data type !! (see [[json_file_variable_info]] and [[json_info]]) integer ( IK ), parameter :: json_object = 2 !! Object JSON data type !! (see [[json_file_variable_info]] and [[json_info]]) integer ( IK ), parameter :: json_array = 3 !! Array JSON data type !! (see [[json_file_variable_info]] and [[json_info]]) integer ( IK ), parameter :: json_logical = 4 !! Logical JSON data type (`logical(LK)`) !! (see [[json_file_variable_info]] and [[json_info]]) integer ( IK ), parameter :: json_integer = 5 !! Integer JSON data type (`integer(IK)`) !! (see [[json_file_variable_info]] and [[json_info]]). integer ( IK ), parameter :: json_real = 6 !! Real number JSON data type (`real(RK)`) !! (see [[json_file_variable_info]] and [[json_info]]) integer ( IK ), parameter :: json_string = 7 !! String JSON data type (`character(kind=CK)`) !! (see [[json_file_variable_info]] and [[json_info]]) integer ( IK ), parameter :: json_double = json_real !! Equivalent to `json_real` for !! backward compatibility. !special JSON characters character ( kind = CK , len =* ), parameter :: space = CK_ ' ' !! space character character ( kind = CK , len =* ), parameter :: start_object = CK_ '{' !! start of a JSON object character ( kind = CK , len =* ), parameter :: end_object = CK_ '}' !! end of a JSON object character ( kind = CK , len =* ), parameter :: start_array = CK_ '[' !! start of a JSON array character ( kind = CK , len =* ), parameter :: end_array = CK_ ']' !! end of a JSON array character ( kind = CK , len =* ), parameter :: delimiter = CK_ ',' !! delimiter for JSON character ( kind = CK , len =* ), parameter :: colon_char = CK_ ':' !! colon character for JSON character ( kind = CK , len =* ), parameter :: start_array_alt = CK_ '(' !! alternate start of JSON array for !! [[json_get_by_path_default]] character ( kind = CK , len =* ), parameter :: end_array_alt = CK_ ')' !! alternate end of JSON array for !! [[json_get_by_path_default]] character ( kind = CK , len =* ), parameter :: root = achar ( 36 , kind = CK ) !! (`$`) root for [[json_get_by_path_default]] character ( kind = CK , len =* ), parameter :: this = CK_ '@' !! 'this' for [[json_get_by_path_default]] character ( kind = CK , len =* ), parameter :: dot = CK_ '.' !! path separator for [[json_get_by_path_default]] character ( kind = CK , len =* ), parameter :: tilde = CK_ '~' !! RFC 6901 escape character character ( kind = CK , len =* ), parameter :: single_quote = CK_ \"'\" !! for JSONPath bracket-notation character ( kind = CK , len =* ), parameter :: quotation_mark = CK_ '\"' !! JSON special character character ( kind = CK , len =* ), parameter :: bspace = achar ( 8 , kind = CK ) !! JSON special character character ( kind = CK , len =* ), parameter :: horizontal_tab = achar ( 9 , kind = CK ) !! JSON special character character ( kind = CK , len =* ), parameter :: newline = achar ( 10 , kind = CK ) !! JSON special character character ( kind = CK , len =* ), parameter :: formfeed = achar ( 12 , kind = CK ) !! JSON special character character ( kind = CK , len =* ), parameter :: carriage_return = achar ( 13 , kind = CK ) !! JSON special character character ( kind = CK , len =* ), parameter :: slash = achar ( 47 , kind = CK ) !! JSON special character character ( kind = CK , len =* ), parameter :: backslash = achar ( 92 , kind = CK ) !! JSON special character !> default real number format statement (for writing real values to strings and files). ! Note that this can be overridden by calling [[json_initialize]]. #ifdef REAL32 character ( kind = CDK , len =* ), parameter :: default_real_fmt = '(ss,E17.8E3)' #elif REAL128 character ( kind = CDK , len =* ), parameter :: default_real_fmt = '(ss,E46.35E5)' #else character ( kind = CDK , len =* ), parameter :: default_real_fmt = '(ss,E27.17E4)' #endif character ( kind = CK , len =* ), parameter :: star = CK_ '*' !! for invalid numbers and !! list-directed real output #if defined __GFORTRAN__ !not parameters due to gfortran bug (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65141) character ( kind = CK , len = 26 ), protected :: upper = CK_ 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' !! uppercase characters character ( kind = CK , len = 26 ), protected :: lower = CK_ 'abcdefghijklmnopqrstuvwxyz' !! lowercase characters #else character ( kind = CK , len =* ), parameter :: upper = CK_ 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' !! uppercase characters character ( kind = CK , len =* ), parameter :: lower = CK_ 'abcdefghijklmnopqrstuvwxyz' !! lowercase characters #endif #if defined __GFORTRAN__ !not parameters due to gfortran bug (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65141) character ( kind = CK , len = 4 ), protected :: null_str = CK_ 'null' !! JSON Null variable string character ( kind = CK , len = 4 ), protected :: true_str = CK_ 'true' !! JSON logical True string character ( kind = CK , len = 5 ), protected :: false_str = CK_ 'false' !! JSON logical False string #else character ( kind = CK , len =* ), parameter :: null_str = CK_ 'null' !! JSON Null variable string character ( kind = CK , len =* ), parameter :: true_str = CK_ 'true' !! JSON logical True string character ( kind = CK , len =* ), parameter :: false_str = CK_ 'false' !! JSON logical False string #endif integer , private :: i_ !! just a counter for `control_chars` array character ( kind = CK , len =* ), dimension ( 32 ), parameter :: control_chars = & [( achar ( i_ , kind = CK ), i_ = 1 , 31 ), achar ( 127 , kind = CK )] !! Control characters, possibly in unicode !find out the precision of the floating point number system !and set safety factors integer ( IK ), parameter :: rp_safety_factor = 1_IK integer ( IK ), parameter :: rp_addl_safety = 2_IK integer ( IK ), parameter :: real_precision = rp_safety_factor * precision ( 1.0_RK ) + & rp_addl_safety !Get the number of possible digits in the exponent when using decimal number system integer ( IK ), parameter :: maxexp = maxexponent ( 1.0_RK ) integer ( IK ), parameter :: minexp = minexponent ( 1.0_RK ) integer ( IK ), parameter :: real_exponent_digits = floor ( 1_IK + log10 ( & real ( max ( maxexp , abs ( maxexp )),& kind = RK ) ) ) integer ( IK ), parameter :: max_numeric_str_len = real_precision + real_exponent_digits + 6_IK !! 6 = sign + leading 0 + decimal + 'E' + exponent sign + 1 extra character ( kind = CDK , len =* ), parameter :: int_fmt = '(ss,I0)' !! minimum width format for integers integer ( IK ), parameter :: max_integer_str_len = 256_IK !! maximum string length of an integer. !! This is totally arbitrary (any way !! to get the compiler to tell us this?) integer ( IK ), parameter :: chunk_size = 256_IK !! for allocatable strings: allocate chunks of this size integer ( IK ), parameter :: unit2str = - 1_IK !! unit number to cause stuff to be !! output to strings rather than files. !! See 9.5.6.12 in the F2003/08 standard character ( kind = CK , len =* ), parameter :: blank_chunk = repeat ( space , chunk_size ) !! a blank string integer ( IK ), parameter :: seq_chunk_size = 256_IK !! chunk size for reading sequential files integer ( IK ), parameter :: stream_chunk_size = 256_IK !! chunk size for reading stream files integer ( IK ), parameter :: print_str_chunk_size = 1000_IK !! chunk size for writing JSON to a string integer ( IK ), parameter :: pushed_char_size = 10_IK !! size for `pushed_char` !! array in [[json_core(type)]] end module json_parameters !*****************************************************************************************","tags":"","loc":"sourcefile/json_parameters.f90.html"},{"title":"json_module.F90 – JSON-Fortran","text":"This file depends on sourcefile~~json_module.f90~~EfferentGraph sourcefile~json_module.f90 json_module.F90 sourcefile~json_file_module.f90 json_file_module.F90 sourcefile~json_module.f90->sourcefile~json_file_module.f90 sourcefile~json_kinds.f90 json_kinds.F90 sourcefile~json_module.f90->sourcefile~json_kinds.f90 sourcefile~json_parameters.f90 json_parameters.F90 sourcefile~json_module.f90->sourcefile~json_parameters.f90 sourcefile~json_string_utilities.f90 json_string_utilities.F90 sourcefile~json_module.f90->sourcefile~json_string_utilities.f90 sourcefile~json_value_module.f90 json_value_module.F90 sourcefile~json_module.f90->sourcefile~json_value_module.f90 sourcefile~json_file_module.f90->sourcefile~json_kinds.f90 sourcefile~json_file_module.f90->sourcefile~json_parameters.f90 sourcefile~json_file_module.f90->sourcefile~json_string_utilities.f90 sourcefile~json_file_module.f90->sourcefile~json_value_module.f90 sourcefile~json_parameters.f90->sourcefile~json_kinds.f90 sourcefile~json_string_utilities.f90->sourcefile~json_kinds.f90 sourcefile~json_string_utilities.f90->sourcefile~json_parameters.f90 sourcefile~json_value_module.f90->sourcefile~json_kinds.f90 sourcefile~json_value_module.f90->sourcefile~json_parameters.f90 sourcefile~json_value_module.f90->sourcefile~json_string_utilities.f90 Help Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\nis dependent upon another if the latter must be compiled before the former\ncan be. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code !***************************************************************************************** !> author: Jacob Williams ! license: BSD ! ! A Modern Fortran JSON (JavaScript Object Notation) API. ! ! This module provides access to [[json_value_module]] and ! [[json_file_module]]. For normal JSON-Fortran use, using this module ! is all that is necessary. ! ! Note that this module renames the kind definition variables from [[json_kinds]] ! from [`RK`, `IK`, `LK`, `CK`, and `CDK`] to [`json_RK`, `json_IK`, `json_LK`, ! `json_CK`, and `json_CDK`] so as to avoid namespace pollution with short ! variable names. ! #ifdef USE_UCS4 #pragma push_macro(\"USE_UCS4\") #undef USE_UCS4 ! Since ```USE_UCS4``` **is** defined, this module also exports the ! operators `==`, `/=`, and `//` from [[json_string_utilities]] for ! `CK` and `CDK` operations. #pragma pop_macro(\"USE_UCS4\") #endif ! !### License ! * JSON-Fortran is released under a BSD-style license. ! See the [LICENSE](https://github.com/jacobwilliams/json-fortran/blob/master/LICENSE) ! file for details. ! !### History ! * Joseph A. Levin : March 2012 : Original [FSON](https://github.com/josephalevin/fson) ! code [retrieved on 12/2/2013]. ! * Jacob Williams : 2/8/2014 : Extensive modifications to the original FSON code. ! The original F95 code was split into four files: ! fson_path_m.f95, fson_string_m.f95, fson_value_m.f95, and fson.f95. ! The new code has been extensively updated, refactored and combined into this ! one module (json_module.f90). ! Various Fortran 2003/2008 features are now used ! (e.g., allocatable strings, newunit, generic, class, and abstract interface). ! * Development continues at: [Github](https://github.com/jacobwilliams/json-fortran) ! !### See also ! * [json-fortran development site](https://github.com/jacobwilliams/json-fortran) ! * [json-fortran online documentation](https://jacobwilliams.github.io/json-fortran) ! * [JSON website](http://www.json.org/) ! * [JSON validator](http://jsonlint.com/) ! !@note Originally JSON-Fortran was entirely contained within this module. module json_module use json_kinds , only : json_RK => RK , & json_IK => IK , & json_LK => LK , & json_CK => CK , & json_CDK => CDK #ifdef USE_UCS4 use json_string_utilities , only : operator ( == ),& operator ( // ),& operator ( /= ) #endif use json_parameters , only : json_unknown ,& json_null , & json_object , & json_array , & json_logical ,& json_integer ,& json_real , & json_double , & json_string use json_value_module use json_file_module implicit none character ( kind = json_CK , len =* ), parameter , private :: version = '8.5.2' !! JSON-Fortran version. !! !!@note This string should match the one in the `.VERSION` file (which is used !! for the documentation generation.) public contains !***************************************************************************************** !***************************************************************************************** !> ! Returns the JSON-Fortran version string. function json_fortran_version () result ( ver ) implicit none character ( len = :), allocatable :: ver !! JSON-Fortran version string ver = version end function json_fortran_version !***************************************************************************************** !***************************************************************************************** end module json_module !*****************************************************************************************","tags":"","loc":"sourcefile/json_module.f90.html"},{"title":"json_kinds.F90 – JSON-Fortran","text":"Files dependent on this one sourcefile~~json_kinds.f90~~AfferentGraph sourcefile~json_kinds.f90 json_kinds.F90 sourcefile~json_file_module.f90 json_file_module.F90 sourcefile~json_file_module.f90->sourcefile~json_kinds.f90 sourcefile~json_parameters.f90 json_parameters.F90 sourcefile~json_file_module.f90->sourcefile~json_parameters.f90 sourcefile~json_string_utilities.f90 json_string_utilities.F90 sourcefile~json_file_module.f90->sourcefile~json_string_utilities.f90 sourcefile~json_value_module.f90 json_value_module.F90 sourcefile~json_file_module.f90->sourcefile~json_value_module.f90 sourcefile~json_module.f90 json_module.F90 sourcefile~json_module.f90->sourcefile~json_kinds.f90 sourcefile~json_module.f90->sourcefile~json_file_module.f90 sourcefile~json_module.f90->sourcefile~json_parameters.f90 sourcefile~json_module.f90->sourcefile~json_string_utilities.f90 sourcefile~json_module.f90->sourcefile~json_value_module.f90 sourcefile~json_parameters.f90->sourcefile~json_kinds.f90 sourcefile~json_string_utilities.f90->sourcefile~json_kinds.f90 sourcefile~json_string_utilities.f90->sourcefile~json_parameters.f90 sourcefile~json_value_module.f90->sourcefile~json_kinds.f90 sourcefile~json_value_module.f90->sourcefile~json_parameters.f90 sourcefile~json_value_module.f90->sourcefile~json_string_utilities.f90 Help Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\nis dependent upon another if the latter must be compiled before the former\ncan be. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code !***************************************************************************************** !> author: Jacob Williams ! license: BSD ! ! JSON-Fortran kind definitions. ! !### License ! * JSON-Fortran is released under a BSD-style license. ! See the [LICENSE](https://github.com/jacobwilliams/json-fortran/blob/master/LICENSE) ! file for details. ! !@note ```-DUSE_UCS4``` is an optional preprocessor flag. ! When present, Unicode support is enabled. Note that this ! is currently only supported with the gfortran compiler. ! Example: ```gfortran -DUSE_UCS4 ... ``` #ifdef USE_UCS4 # pragma push_macro(\"USE_UCS4\") # undef USE_UCS4 ! The documentation given here assumes ```USE_UCS4``` **is** defined. # pragma pop_macro(\"USE_UCS4\") #else ! The documentation given here assumes ```USE_UCS4``` **is not** defined. #endif ! !@warning ```CK``` and ```CDK``` are the JSON-Fortran character kind and JSON-Fortran default ! character kind respectively. Client code **MUST** ensure characters of ```kind=CK``` ! are used for all character variables and strings passed to the JSON-Fortran ! library *EXCEPT* for file names which must be of ```'DEFAULT'``` character kind, ! provided here as ```CDK```. In particular, any variable that is a: json path, string ! value or object name passed to the JSON-Fortran library **MUST** be of type ```CK```. ! !@note Most string literal constants of default kind are fine to pass as arguments to ! JSON-Fortran procedures since they have been overloaded to accept ```intent(in)``` ! character arguments of the default (```CDK```) kind. If you find a procedure which does ! not accept an ```intent(in)``` literal string argument of default kind, please ! [file an issue](https://github.com/jacobwilliams/json-fortran/issues/new) on GitHub. ! !@note The default real kind (`RK`) and the default integer kind (`IK`) can be ! changed using optional preprocessor flags. This library was built with kinds: #ifdef REAL32 ! real(kind=real32) [4 bytes] #elif REAL64 ! real(kind=real64) [8 bytes] #elif REAL128 ! real(kind=real128) [16 bytes] #else ! real(kind=real64) [8 bytes] #endif ! and #ifdef INT8 ! integer(kind=int8) [1 byte] #elif INT16 ! integer(kind=int16) [2 bytes] #elif INT32 ! integer(kind=int32) [4 bytes] #elif INT64 ! integer(kind=int64) [8 bytes] #else ! integer(kind=int32) [4 bytes] #endif ! . ! !@note In addition to the real kind specified by `RK`, interfaces for ! the real kinds with less precision are also provided in the library, ! but all are converted to `real(RK)` variables internally. module json_kinds use , intrinsic :: iso_fortran_env implicit none private ! used for the reals with less precision ! than the default precision: #ifndef REAL32 public :: real32 #endif #ifdef REAL128 public :: real64 #endif #ifdef REAL32 integer , parameter , public :: RK = real32 !! Default real kind [4 bytes] #elif REAL64 integer , parameter , public :: RK = real64 !! Default real kind [8 bytes] #elif REAL128 integer , parameter , public :: RK = real128 !! Default real kind [16 bytes] #else integer , parameter , public :: RK = real64 !! Default real kind if not specified [8 bytes] #endif #ifdef INT8 integer , parameter , public :: IK = int8 !! Default integer kind [1 byte] #elif INT16 integer , parameter , public :: IK = int16 !! Default integer kind [2 bytes] #elif INT32 integer , parameter , public :: IK = int32 !! Default integer kind [4 bytes] #elif INT64 integer , parameter , public :: IK = int64 !! Default integer kind [8 bytes] #else integer , parameter , public :: IK = int32 !! Default integer kind if not specified [4 bytes] #endif !********************************************************* !> ! Processor dependent 'DEFAULT' character kind. ! This is 1 byte for the Intel and Gfortran compilers. integer , parameter , public :: CDK = selected_char_kind ( 'DEFAULT' ) !********************************************************* !********************************************************* !> ! Default logical kind. ! This is 4 bytes for the Intel and Gfortran compilers ! (and perhaps others). ! The declaration ensures a valid kind ! if the compiler doesn't have a logical_kinds(3). integer , parameter , public :: LK = logical_kinds ( min ( 3 , size ( logical_kinds ))) !********************************************************* !********************************************************* !> ! String kind preprocessor macro. #if defined __GFORTRAN__ && defined USE_UCS4 ! gfortran compiler AND UCS4 support requested: character ( kind = CDK , len =* ), parameter :: json_fortran_string_kind = 'ISO_10646' #else ! this is the string kind to use unless compiling with GFortran AND ! UCS4/ISO 10646 support is requested character ( kind = CDK , len =* ), parameter :: json_fortran_string_kind = 'DEFAULT' #endif !********************************************************* !********************************************************* !> ! Default character kind used by JSON-Fortran. ! If ISO 10646 (UCS4) support is available, use that, ! otherwise, gracefully fall back on 'DEFAULT' characters. ! Currently only gfortran >= 4.9.2 will correctly support ! UCS4 which is stored in 4 bytes. ! (and perhaps others). integer , parameter , public :: CK = selected_char_kind ( json_fortran_string_kind ) !********************************************************* end module json_kinds !*****************************************************************************************","tags":"","loc":"sourcefile/json_kinds.f90.html"},{"title":"json_string_utilities.F90 – JSON-Fortran","text":"This file depends on sourcefile~~json_string_utilities.f90~~EfferentGraph sourcefile~json_string_utilities.f90 json_string_utilities.F90 sourcefile~json_kinds.f90 json_kinds.F90 sourcefile~json_string_utilities.f90->sourcefile~json_kinds.f90 sourcefile~json_parameters.f90 json_parameters.F90 sourcefile~json_string_utilities.f90->sourcefile~json_parameters.f90 sourcefile~json_parameters.f90->sourcefile~json_kinds.f90 Help Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\nis dependent upon another if the latter must be compiled before the former\ncan be. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Files dependent on this one sourcefile~~json_string_utilities.f90~~AfferentGraph sourcefile~json_string_utilities.f90 json_string_utilities.F90 sourcefile~json_file_module.f90 json_file_module.F90 sourcefile~json_file_module.f90->sourcefile~json_string_utilities.f90 sourcefile~json_value_module.f90 json_value_module.F90 sourcefile~json_file_module.f90->sourcefile~json_value_module.f90 sourcefile~json_module.f90 json_module.F90 sourcefile~json_module.f90->sourcefile~json_string_utilities.f90 sourcefile~json_module.f90->sourcefile~json_file_module.f90 sourcefile~json_module.f90->sourcefile~json_value_module.f90 sourcefile~json_value_module.f90->sourcefile~json_string_utilities.f90 Help Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\nis dependent upon another if the latter must be compiled before the former\ncan be. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code !***************************************************************************************** !> author: Jacob Williams ! license: BSD ! ! JSON-Fortran support module for string manipulation. ! !### License ! * JSON-Fortran is released under a BSD-style license. ! See the [LICENSE](https://github.com/jacobwilliams/json-fortran/blob/master/LICENSE) ! file for details. module json_string_utilities use , intrinsic :: ieee_arithmetic use json_kinds use json_parameters implicit none private !****************************************************** !> ! Convert a 'DEFAULT' kind character input to ! 'ISO_10646' kind and return it interface to_unicode module procedure to_uni , to_uni_vec end interface !****************************************************** #ifdef USE_UCS4 !****************************************************** !> ! Provide a means to convert to UCS4 while ! concatenating UCS4 and default strings interface operator ( // ) module procedure ucs4_join_default , default_join_ucs4 end interface public :: operator ( // ) !****************************************************** !****************************************************** !> ! Provide a string `==` operator that works ! with mixed kinds interface operator ( == ) module procedure ucs4_comp_default , default_comp_ucs4 end interface public :: operator ( == ) !****************************************************** !****************************************************** !> ! Provide a string `/=` operator that works ! with mixed kinds interface operator ( /= ) module procedure ucs4_neq_default , default_neq_ucs4 end interface public :: operator ( /= ) !****************************************************** #endif public :: integer_to_string public :: real_to_string public :: string_to_integer public :: string_to_real public :: valid_json_hex public :: to_unicode public :: escape_string public :: unescape_string public :: lowercase_string public :: replace_string public :: decode_rfc6901 public :: encode_rfc6901 contains !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/4/2013 ! ! Convert an integer to a string. pure subroutine integer_to_string ( ival , int_fmt , str ) implicit none integer ( IK ), intent ( in ) :: ival !! integer value. character ( kind = CDK , len =* ), intent ( in ) :: int_fmt !! format for integers character ( kind = CK , len =* ), intent ( out ) :: str !! `ival` converted to a string. integer ( IK ) :: istat write ( str , fmt = int_fmt , iostat = istat ) ival if ( istat == 0 ) then str = adjustl ( str ) else str = repeat ( star , len ( str )) end if end subroutine integer_to_string !***************************************************************************************** !***************************************************************************************** !> ! Convert a string into an integer. ! !# History ! * Jacob Williams : 12/10/2013 : Rewrote original `parse_integer` routine. ! Added error checking. ! * Modified by Izaak Beekman ! * Jacob Williams : 2/4/2017 : moved core logic to this routine. subroutine string_to_integer ( str , ival , status_ok ) implicit none character ( kind = CK , len =* ), intent ( in ) :: str !! the string to convert to an integer integer ( IK ), intent ( out ) :: ival !! the integer value logical ( LK ), intent ( out ) :: status_ok !! true if there were no errors character ( kind = CDK , len = :), allocatable :: digits integer ( IK ) :: ndigits_digits , ndigits , ierr ! Compute how many digits we need to read ndigits = 2 * len_trim ( str ) if ( ndigits /= 0 ) then ndigits_digits = nint ( log10 ( real ( ndigits ))) + 1 allocate ( character ( kind = CDK , len = ndigits_digits ) :: digits ) write ( digits , '(I0)' ) ndigits !gfortran will have a runtime error with * edit descriptor here ! gfortran bug: '*' edit descriptor for ISO_10646 strings does bad stuff. read ( str , '(I' // trim ( digits ) // ')' , iostat = ierr ) ival !string to integer ! error check: status_ok = ( ierr == 0 ) else status_ok = . false . end if if (. not . status_ok ) ival = 0_IK end subroutine string_to_integer !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/4/2013 ! ! Convert a real value to a string. ! !### Modified ! * Izaak Beekman : 02/24/2015 : added the compact option. ! * Jacob Williams : 10/27/2015 : added the star option. ! * Jacob Williams : 07/07/2019 : added null and ieee options. subroutine real_to_string ( rval , real_fmt , compact_real , non_normals_to_null , str ) implicit none real ( RK ), intent ( in ) :: rval !! real value. character ( kind = CDK , len =* ), intent ( in ) :: real_fmt !! format for real numbers logical ( LK ), intent ( in ) :: compact_real !! compact the string so that it is !! displayed with fewer characters logical ( LK ), intent ( in ) :: non_normals_to_null !! If True, NaN, Infinity, or -Infinity are returned as `null`. !! If False, the string value will be returned in quotes !! (e.g., \"NaN\", \"Infinity\", or \"-Infinity\" ) character ( kind = CK , len =* ), intent ( out ) :: str !! `rval` converted to a string. integer ( IK ) :: istat !! write `iostat` flag if ( ieee_is_finite ( rval ) . and . . not . ieee_is_nan ( rval )) then ! normal real numbers if ( real_fmt == star ) then write ( str , fmt =* , iostat = istat ) rval else write ( str , fmt = real_fmt , iostat = istat ) rval end if if ( istat == 0 ) then !in this case, the default string will be compacted, ! so that the same value is displayed with fewer characters. if ( compact_real ) call compact_real_string ( str ) else str = repeat ( star , len ( str )) ! error end if else ! special cases for NaN, Infinity, and -Infinity if ( non_normals_to_null ) then ! return it as a JSON null value str = null_str else ! Let the compiler do the real to string conversion ! like before, but put the result in quotes so it ! gets printed as a string write ( str , fmt =* , iostat = istat ) rval if ( istat == 0 ) then str = quotation_mark // trim ( adjustl ( str )) // quotation_mark else str = repeat ( star , len ( str )) ! error end if end if end if end subroutine real_to_string !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/19/2014 ! ! Convert a string into a `real(RK)`. ! !# History ! * Jacob Williams, 10/27/2015 : Now using `fmt=*`, rather than ! `fmt=real_fmt`, since it doesn't work for some unusual cases ! (e.g., when `str='1E-5'`). ! * Jacob Williams : 2/6/2017 : moved core logic to this routine. subroutine string_to_real ( str , use_quiet_nan , rval , status_ok ) implicit none character ( kind = CK , len =* ), intent ( in ) :: str !! the string to convert to a real logical ( LK ), intent ( in ) :: use_quiet_nan !! if true, return NaN's as `ieee_quiet_nan`. !! otherwise, use `ieee_signaling_nan`. real ( RK ), intent ( out ) :: rval !! `str` converted to a real value logical ( LK ), intent ( out ) :: status_ok !! true if there were no errors integer ( IK ) :: ierr !! read iostat error code read ( str , fmt =* , iostat = ierr ) rval status_ok = ( ierr == 0 ) if (. not . status_ok ) then rval = 0.0_RK else if ( ieee_support_nan ( rval )) then if ( ieee_is_nan ( rval )) then ! make sure to return the correct NaN if ( use_quiet_nan ) then rval = ieee_value ( rval , ieee_quiet_nan ) else rval = ieee_value ( rval , ieee_signaling_nan ) end if end if end if end if end subroutine string_to_real !***************************************************************************************** !***************************************************************************************** !> author: Izaak Beekman ! date: 02/24/2015 ! ! Compact a string representing a real number, so that ! the same value is displayed with fewer characters. ! !# See also ! * [[real_to_string]] subroutine compact_real_string ( str ) implicit none character ( kind = CK , len =* ), intent ( inout ) :: str !! string representation of a real number. character ( kind = CK , len = len ( str )) :: significand character ( kind = CK , len = len ( str )) :: expnt character ( kind = CK , len = 2 ) :: separator integer ( IK ) :: exp_start integer ( IK ) :: decimal_pos integer ( IK ) :: sig_trim integer ( IK ) :: exp_trim integer ( IK ) :: i !! counter str = adjustl ( str ) exp_start = scan ( str , CK_ 'eEdD' ) if ( exp_start == 0 ) exp_start = scan ( str , CK_ '-+' , back = . true .) decimal_pos = scan ( str , CK_ '.' ) if ( exp_start /= 0 ) separator = str ( exp_start : exp_start ) if ( exp_start < decimal_pos ) then !possibly signed, exponent-less float significand = str sig_trim = len ( trim ( significand )) do i = len ( trim ( significand )), decimal_pos + 2 , - 1 !look from right to left at 0s !but save one after the decimal place if ( significand ( i : i ) == '0' ) then sig_trim = i - 1 else exit end if end do str = trim ( significand ( 1 : sig_trim )) else if ( exp_start > decimal_pos ) then !float has exponent significand = str ( 1 : exp_start - 1 ) sig_trim = len ( trim ( significand )) do i = len ( trim ( significand )), decimal_pos + 2 , - 1 !look from right to left at 0s if ( significand ( i : i ) == '0' ) then sig_trim = i - 1 else exit end if end do expnt = adjustl ( str ( exp_start + 1 :)) if ( expnt ( 1 : 1 ) == '+' . or . expnt ( 1 : 1 ) == '-' ) then separator = trim ( adjustl ( separator )) // expnt ( 1 : 1 ) exp_start = exp_start + 1 expnt = adjustl ( str ( exp_start + 1 :)) end if exp_trim = 1 do i = 1 ,( len ( trim ( expnt )) - 1 ) !look at exponent leading zeros saving last if ( expnt ( i : i ) == '0' ) then exp_trim = i + 1 else exit end if end do str = trim ( adjustl ( significand ( 1 : sig_trim ))) // & trim ( adjustl ( separator )) // & trim ( adjustl ( expnt ( exp_trim :))) !else ! mal-formed real, BUT this code should be unreachable end if end subroutine compact_real_string !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/21/2014 ! ! Add the escape characters to a string for adding to JSON. subroutine escape_string ( str_in , str_out , escape_solidus ) implicit none character ( kind = CK , len =* ), intent ( in ) :: str_in character ( kind = CK , len = :), allocatable , intent ( out ) :: str_out logical ( LK ), intent ( in ) :: escape_solidus !! if the solidus (forward slash) !! is also to be escaped integer ( IK ) :: i !! counter integer ( IK ) :: ipos !! accumulated string size !! (so we can allocate it in chunks for !! greater runtime efficiency) character ( kind = CK , len = 1 ) :: c !! for reading `str_in` one character at a time. #if defined __GFORTRAN__ character ( kind = CK , len = :), allocatable :: tmp !! workaround for bug in gfortran 6.1 #endif logical :: to_be_escaped !! if there are characters to be escaped character ( kind = CK , len =* ), parameter :: specials_no_slash = quotation_mark // & backslash // & bspace // & formfeed // & newline // & carriage_return // & horizontal_tab character ( kind = CK , len =* ), parameter :: specials = specials_no_slash // slash !Do a quick scan for the special characters, ! if any are present, then process the string, ! otherwise, return the string as is. if ( escape_solidus ) then to_be_escaped = scan ( str_in , specials ) > 0 else to_be_escaped = scan ( str_in , specials_no_slash ) > 0 end if if ( to_be_escaped ) then str_out = repeat ( space , chunk_size ) ipos = 1 !go through the string and look for special characters: do i = 1 , len ( str_in ) c = str_in ( i : i ) !get next character in the input string !if the string is not big enough, then add another chunk: if ( ipos + 3 > len ( str_out )) str_out = str_out // blank_chunk select case ( c ) case ( backslash ) !test for unicode sequence: '\\uXXXX' ![don't add an extra '\\' for those] if ( i + 5 <= len ( str_in )) then if ( str_in ( i + 1 : i + 1 ) == CK_ 'u' . and . & valid_json_hex ( str_in ( i + 2 : i + 5 ))) then str_out ( ipos : ipos ) = c ipos = ipos + 1 cycle end if end if str_out ( ipos : ipos + 1 ) = backslash // c ipos = ipos + 2 case ( quotation_mark ) str_out ( ipos : ipos + 1 ) = backslash // c ipos = ipos + 2 case ( slash ) if ( escape_solidus ) then str_out ( ipos : ipos + 1 ) = backslash // c ipos = ipos + 2 else str_out ( ipos : ipos ) = c ipos = ipos + 1 end if case ( bspace ) str_out ( ipos : ipos + 1 ) = '\\b' ipos = ipos + 2 case ( formfeed ) str_out ( ipos : ipos + 1 ) = '\\f' ipos = ipos + 2 case ( newline ) str_out ( ipos : ipos + 1 ) = '\\n' ipos = ipos + 2 case ( carriage_return ) str_out ( ipos : ipos + 1 ) = '\\r' ipos = ipos + 2 case ( horizontal_tab ) str_out ( ipos : ipos + 1 ) = '\\t' ipos = ipos + 2 case default str_out ( ipos : ipos ) = c ipos = ipos + 1 end select end do !trim the string if necessary: if ( ipos < len ( str_out ) + 1 ) then if ( ipos == 1 ) then str_out = CK_ '' else #if defined __GFORTRAN__ tmp = str_out ( 1 : ipos - 1 ) !workaround for bug in gfortran 6.1 str_out = tmp #else str_out = str_out ( 1 : ipos - 1 ) !original #endif end if end if else str_out = str_in end if end subroutine escape_string !***************************************************************************************** !***************************************************************************************** !> ! Remove the escape characters from a JSON string and return it. ! ! The escaped characters are denoted by the `\\` character: ! ! * `\\\"` - quotation mark ! * `\\\\` - reverse solidus ! * `\\/` - solidus ! * `\\b` - backspace ! * `\\f` - formfeed ! * `\\n` - newline (LF) ! * `\\r` - carriage return (CR) ! * `\\t` - horizontal tab ! * `\\uXXXX` - 4 hexadecimal digits subroutine unescape_string ( str , error_message ) implicit none character ( kind = CK , len = :), allocatable , intent ( inout ) :: str !! * in: string as stored !! in a [[json_value]]. !! * out: decoded string. character ( kind = CK , len = :), allocatable , intent ( out ) :: error_message !! will be allocated if !! there was an error integer :: i !! counter integer :: n !! length of `str` integer :: m !! length of `str_tmp` character ( kind = CK , len = 1 ) :: c !! for scanning each character in string character ( kind = CK , len = :), allocatable :: str_tmp !! temp decoded string (if the input !! string contains an escape character !! and needs to be decoded). if ( scan ( str , backslash ) > 0 ) then !there is at least one escape character, so process this string: n = len ( str ) str_tmp = repeat ( space , n ) !size the output string (will be trimmed later) m = 0 !counter in str_tmp i = 0 !counter in str do i = i + 1 if ( i > n ) exit ! finished c = str ( i : i ) ! get next character in the string if ( c == backslash ) then if ( i < n ) then i = i + 1 c = str ( i : i ) !character after the escape select case ( c ) case ( quotation_mark , backslash , slash ) !use d as is m = m + 1 str_tmp ( m : m ) = c case ( CK_ 'b' ) c = bspace m = m + 1 str_tmp ( m : m ) = c case ( CK_ 'f' ) c = formfeed m = m + 1 str_tmp ( m : m ) = c case ( CK_ 'n' ) c = newline m = m + 1 str_tmp ( m : m ) = c case ( CK_ 'r' ) c = carriage_return m = m + 1 str_tmp ( m : m ) = c case ( CK_ 't' ) c = horizontal_tab m = m + 1 str_tmp ( m : m ) = c case ( CK_ 'u' ) ! expecting 4 hexadecimal digits after ! the escape character [\\uXXXX] !for now, we are just returning them as is ![not checking to see if it is a valid hex value] ! ! Example: ! 123456 ! \\uXXXX if ( i + 4 <= n ) then ! validate the hex string: if ( valid_json_hex ( str ( i + 1 : i + 4 ))) then m = m + 1 str_tmp ( m : m + 5 ) = str ( i - 1 : i + 4 ) i = i + 4 m = m + 5 else error_message = 'Error in unescape_string:' // & ' Invalid hexadecimal sequence in string \"' // & trim ( str ) // '\" [' // str ( i - 1 : i + 4 ) // ']' if ( allocated ( str_tmp )) deallocate ( str_tmp ) return end if else error_message = 'Error in unescape_string:' // & ' Invalid hexadecimal sequence in string \"' // & trim ( str ) // '\" [' // str ( i - 1 :) // ']' if ( allocated ( str_tmp )) deallocate ( str_tmp ) return end if case default !unknown escape character error_message = 'Error in unescape_string:' // & ' unknown escape sequence in string \"' // & trim ( str ) // '\" [' // backslash // c // ']' if ( allocated ( str_tmp )) deallocate ( str_tmp ) return end select else ! an escape character is the last character in ! the string. This is an error. error_message = 'Error in unescape_string:' // & ' invalid escape character in string \"' // & trim ( str ) // '\"' if ( allocated ( str_tmp )) deallocate ( str_tmp ) return end if else m = m + 1 str_tmp ( m : m ) = c end if end do !trim trailing space: str = str_tmp ( 1 : m ) end if end subroutine unescape_string !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 6/14/2014 ! ! Returns true if the string is a valid 4-digit hex string. ! !# Examples !```fortran ! valid_json_hex('0000') !returns true ! valid_json_hex('ABC4') !returns true ! valid_json_hex('AB') !returns false (< 4 characters) ! valid_json_hex('WXYZ') !returns false (invalid characters) !``` pure function valid_json_hex ( str ) result ( valid ) implicit none logical ( LK ) :: valid !! is str a value 4-digit hex string character ( kind = CK , len =* ), intent ( in ) :: str !! the string to check. integer ( IK ) :: n !! length of `str` integer ( IK ) :: i !! counter !> an array of the valid hex characters character ( kind = CK , len = 1 ), dimension ( 22 ), parameter :: valid_chars = & [ ( achar ( i ), i = 48 , 57 ), & ! decimal digits ( achar ( i ), i = 65 , 70 ), & ! capital A-F ( achar ( i ), i = 97 , 102 ) ] ! lowercase a-f !initialize valid = . false . !check all the characters in the string: n = len ( str ) if ( n == 4 ) then do i = 1 , n if (. not . any ( str ( i : i ) == valid_chars )) return end do valid = . true . !all are in the set, so it is OK end if end function valid_json_hex !***************************************************************************************** !***************************************************************************************** !> author: Izaak Beekman ! ! Convert string to unicode (CDK to CK). pure function to_uni ( str ) implicit none character ( kind = CDK , len =* ), intent ( in ) :: str character ( kind = CK , len = len ( str )) :: to_uni to_uni = str end function to_uni !***************************************************************************************** !***************************************************************************************** !> author: Izaak Beekman ! ! Convert array of strings to unicode (CDK to CK). ! !@note JW: may be able to remove this by making [[to_uni]] PURE ELEMENTAL ? pure function to_uni_vec ( str ) implicit none character ( kind = CDK , len =* ), dimension (:), intent ( in ) :: str character ( kind = CK , len = len ( str )), dimension ( size ( str )) :: to_uni_vec to_uni_vec = str end function to_uni_vec !***************************************************************************************** !***************************************************************************************** !> author: Izaak Beekman ! ! `CK`//`CDK` operator. pure function ucs4_join_default ( ucs4_str , def_str ) result ( res ) implicit none character ( kind = CK , len =* ), intent ( in ) :: ucs4_str character ( kind = CDK , len =* ), intent ( in ) :: def_str character ( kind = CK , len = ( len ( ucs4_str ) + len ( def_str ))) :: res res = ucs4_str // to_unicode ( def_str ) end function ucs4_join_default !***************************************************************************************** !***************************************************************************************** !> author: Izaak Beekman ! ! `CDK`//`CK` operator. pure function default_join_ucs4 ( def_str , ucs4_str ) result ( res ) implicit none character ( kind = CDK , len =* ), intent ( in ) :: def_str character ( kind = CK , len =* ), intent ( in ) :: ucs4_str character ( kind = CK , len = ( len ( def_str ) + len ( ucs4_str ))) :: res res = to_unicode ( def_str ) // ucs4_str end function default_join_ucs4 !***************************************************************************************** !***************************************************************************************** !> author: Izaak Beekman ! ! `CK`==`CDK` operator. pure elemental function ucs4_comp_default ( ucs4_str , def_str ) result ( res ) implicit none character ( kind = CK , len =* ), intent ( in ) :: ucs4_str character ( kind = CDK , len =* ), intent ( in ) :: def_str logical ( LK ) :: res res = ( ucs4_str == to_unicode ( def_str ) ) end function ucs4_comp_default !***************************************************************************************** !***************************************************************************************** !> author: Izaak Beekman ! ! `CDK`==`CK` operator. pure elemental function default_comp_ucs4 ( def_str , ucs4_str ) result ( res ) implicit none character ( kind = CDK , len =* ), intent ( in ) :: def_str character ( kind = CK , len =* ), intent ( in ) :: ucs4_str logical ( LK ) :: res res = ( to_unicode ( def_str ) == ucs4_str ) end function default_comp_ucs4 !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! `CK`/=`CDK` operator. pure elemental function ucs4_neq_default ( ucs4_str , def_str ) result ( res ) implicit none character ( kind = CK , len =* ), intent ( in ) :: ucs4_str character ( kind = CDK , len =* ), intent ( in ) :: def_str logical ( LK ) :: res res = ( ucs4_str /= to_unicode ( def_str ) ) end function ucs4_neq_default !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! `CDK`/=`CK` operator. pure elemental function default_neq_ucs4 ( def_str , ucs4_str ) result ( res ) implicit none character ( kind = CDK , len =* ), intent ( in ) :: def_str character ( kind = CK , len =* ), intent ( in ) :: ucs4_str logical ( LK ) :: res res = ( to_unicode ( def_str ) /= ucs4_str ) end function default_neq_ucs4 !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Returns lowercase version of the `CK` string. pure function lowercase_string ( str ) result ( s_lower ) implicit none character ( kind = CK , len =* ), intent ( in ) :: str !! input string character ( kind = CK , len = ( len ( str ))) :: s_lower !! lowercase version of the string integer :: i !! counter integer :: j !! index of uppercase character s_lower = str do i = 1 , len_trim ( str ) j = index ( upper , s_lower ( i : i )) if ( j > 0 ) s_lower ( i : i ) = lower ( j : j ) end do end function lowercase_string !***************************************************************************************** !***************************************************************************************** !> ! Replace all occurrences of `s1` in `str` with `s2`. ! ! A case-sensitive match is used. ! !@note `str` must be allocated. pure subroutine replace_string ( str , s1 , s2 ) implicit none character ( kind = CK , len = :), allocatable , intent ( inout ) :: str character ( kind = CK , len =* ), intent ( in ) :: s1 character ( kind = CK , len =* ), intent ( in ) :: s2 character ( kind = CK , len = :), allocatable :: tmp !! temporary string for accumulating result integer ( IK ) :: i !! counter integer ( IK ) :: n !! for accumulating the string integer ( IK ) :: ilen !! length of `str` string integer ( IK ) :: ilen1 !! length of `s1` string if ( len ( str ) > 0 ) then tmp = CK_ '' ! initialize ilen1 = len ( s1 ) ! . ! '123ab789' do ilen = len ( str ) i = index ( str , s1 ) if ( i > 0 ) then if ( i > 1 ) tmp = tmp // str ( 1 : i - 1 ) tmp = tmp // s2 ! replace s1 with s2 in new string n = i + ilen1 ! start of remainder of str to keep if ( n <= ilen ) then str = str ( n : ilen ) else ! done exit end if else ! done: get remainder of string tmp = tmp // str exit end if end do str = tmp end if end subroutine replace_string !***************************************************************************************** !***************************************************************************************** !> ! Decode a string from the \"JSON Pointer\" RFC 6901 format. ! ! It replaces `~1` with `/` and `~0` with `~`. pure function decode_rfc6901 ( str ) result ( str_out ) implicit none character ( kind = CK , len =* ), intent ( in ) :: str character ( kind = CK , len = :), allocatable :: str_out str_out = str call replace_string ( str_out , tilde // CK_ '1' , slash ) call replace_string ( str_out , tilde // CK_ '0' , tilde ) end function decode_rfc6901 !***************************************************************************************** !***************************************************************************************** !> ! Encode a string into the \"JSON Pointer\" RFC 6901 format. ! ! It replaces `~` with `~0` and `/` with `~1`. pure function encode_rfc6901 ( str ) result ( str_out ) implicit none character ( kind = CK , len =* ), intent ( in ) :: str character ( kind = CK , len = :), allocatable :: str_out str_out = str call replace_string ( str_out , tilde , tilde // CK_ '0' ) call replace_string ( str_out , slash , tilde // CK_ '1' ) end function encode_rfc6901 !***************************************************************************************** end module json_string_utilities !*****************************************************************************************","tags":"","loc":"sourcefile/json_string_utilities.f90.html"},{"title":"json_value_module.F90 – JSON-Fortran","text":"This file depends on sourcefile~~json_value_module.f90~~EfferentGraph sourcefile~json_value_module.f90 json_value_module.F90 sourcefile~json_kinds.f90 json_kinds.F90 sourcefile~json_value_module.f90->sourcefile~json_kinds.f90 sourcefile~json_parameters.f90 json_parameters.F90 sourcefile~json_value_module.f90->sourcefile~json_parameters.f90 sourcefile~json_string_utilities.f90 json_string_utilities.F90 sourcefile~json_value_module.f90->sourcefile~json_string_utilities.f90 sourcefile~json_parameters.f90->sourcefile~json_kinds.f90 sourcefile~json_string_utilities.f90->sourcefile~json_kinds.f90 sourcefile~json_string_utilities.f90->sourcefile~json_parameters.f90 Help Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\nis dependent upon another if the latter must be compiled before the former\ncan be. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Files dependent on this one sourcefile~~json_value_module.f90~~AfferentGraph sourcefile~json_value_module.f90 json_value_module.F90 sourcefile~json_file_module.f90 json_file_module.F90 sourcefile~json_file_module.f90->sourcefile~json_value_module.f90 sourcefile~json_module.f90 json_module.F90 sourcefile~json_module.f90->sourcefile~json_value_module.f90 sourcefile~json_module.f90->sourcefile~json_file_module.f90 Help Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\nis dependent upon another if the latter must be compiled before the former\ncan be. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code !***************************************************************************************** !> author: Jacob Williams ! license: BSD ! ! This module provides a low-level interface for manipulation of JSON data. ! The two public entities are [[json_value]], and [[json_core(type)]]. ! The [[json_file_module]] provides a higher-level interface to some ! of these routines. ! !### License ! * JSON-Fortran is released under a BSD-style license. ! See the [LICENSE](https://github.com/jacobwilliams/json-fortran/blob/master/LICENSE) ! file for details. module json_value_module use , intrinsic :: iso_fortran_env , only : iostat_end , error_unit , output_unit use , intrinsic :: ieee_arithmetic use json_kinds use json_parameters use json_string_utilities implicit none private #include \"json_macros.inc\" !********************************************************* !> ! If Unicode is not enabled, then ! JSON files are opened using access='STREAM' and ! form='UNFORMATTED'. This allows the file to ! be read faster. ! #ifdef USE_UCS4 logical , parameter :: use_unformatted_stream = . false . #else logical , parameter :: use_unformatted_stream = . true . #endif !********************************************************* !********************************************************* !> ! If Unicode is not enabled, then ! JSON files are opened using access='STREAM' and ! form='UNFORMATTED'. This allows the file to ! be read faster. ! #ifdef USE_UCS4 character ( kind = CDK , len =* ), parameter :: access_spec = 'SEQUENTIAL' #else character ( kind = CDK , len =* ), parameter :: access_spec = 'STREAM' #endif !********************************************************* !********************************************************* !> ! If Unicode is not enabled, then ! JSON files are opened using access='STREAM' and ! form='UNFORMATTED'. This allows the file to ! be read faster. ! #ifdef USE_UCS4 character ( kind = CDK , len =* ), parameter :: form_spec = 'FORMATTED' #else character ( kind = CDK , len =* ), parameter :: form_spec = 'UNFORMATTED' #endif !********************************************************* !********************************************************* !> ! Type used to construct the linked-list JSON structure. ! Normally, this should always be a pointer variable. ! This type should only be used by an instance of [[json_core(type)]]. ! !### Example ! ! The following test program: ! !````fortran ! program test ! use json_module ! implicit none ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_object(p,'') !create the root ! call json%add(p,'year',1805) !add some data ! call json%add(p,'value',1.0_RK) !add some data ! call json%print(p,'test.json') !write it to a file ! call json%destroy(p) !cleanup ! end program test !```` ! ! Produces the JSON file **test.json**: ! !````json ! { ! \"year\": 1805, ! \"value\": 0.1E+1 ! } !```` ! !@warning Pointers of this type should only be allocated ! using the methods from [[json_core(type)]]. type , public :: json_value !force the constituents to be stored contiguously ![note: on Intel, the order of the variables below ! is significant to avoid the misaligned field warnings] sequence private !for the linked list: type ( json_value ), pointer :: previous => null () !! previous item in the list type ( json_value ), pointer :: next => null () !! next item in the list type ( json_value ), pointer :: parent => null () !! parent item of this type ( json_value ), pointer :: children => null () !! first child item of this type ( json_value ), pointer :: tail => null () !! last child item of this character ( kind = CK , len = :), allocatable :: name !! variable name (unescaped) real ( RK ), allocatable :: dbl_value !! real data for this variable logical ( LK ), allocatable :: log_value !! logical data for this variable character ( kind = CK , len = :), allocatable :: str_value !! string data for this variable !! (unescaped) integer ( IK ), allocatable :: int_value !! integer data for this variable integer ( IK ) :: var_type = json_unknown !! variable type integer ( IK ), private :: n_children = 0 !! number of children end type json_value !********************************************************* !********************************************************* !> ! To access the core routines for manipulation ! of [[json_value]] pointer variables. This class allows ! for thread safe use of the module. ! !### Usage !````fortran ! program test ! use json_module, wp=>json_RK ! implicit none ! type(json_core) :: json !<--have to declare this ! type(json_value),pointer :: p ! call json%create_object(p,'') !create the root ! call json%add(p,'year',1805) !add some data ! call json%add(p,'value',1.0_wp) !add some data ! call json%print(p,'test.json') !write it to a file ! call json%destroy(p) !cleanup ! end program test !```` type , public :: json_core private integer ( IK ) :: spaces_per_tab = 2 !! number of spaces for indenting logical ( LK ) :: compact_real = . true . !! to use the \"compact\" form of real !! numbers for output character ( kind = CDK , len = :), allocatable :: real_fmt !! the format string to use !! for converting real numbers to strings. !! It can be set in [[json_initialize]], !! and used in [[json_value_print]] !! If not set, then `default_real_fmt` !! is used instead. logical ( LK ) :: is_verbose = . false . !! if true, all exceptions are !! immediately printed to console. logical ( LK ) :: stop_on_error = . false . !! if true, then the program is !! stopped immediately when an !! exception is raised. logical ( LK ) :: exception_thrown = . false . !! The error flag. Will be set to true !! when an error is thrown in the class. !! Many of the methods will check this !! and return immediately if it is true. character ( kind = CK , len = :), allocatable :: err_message !! the error message. !! if `exception_thrown=False` then !! this variable is not allocated. integer ( IK ) :: char_count = 0 !! character position in the current line integer ( IK ) :: line_count = 1 !! lines read counter integer ( IK ) :: pushed_index = 0 !! used when parsing lines in file character ( kind = CK , len = pushed_char_size ) :: pushed_char = CK_ '' !! used when parsing !! lines in file integer ( IK ) :: ipos = 1 !! for allocatable strings: next character to read logical ( LK ) :: strict_type_checking = . false . !! if true, then no type conversions are done !! in the `get` routines if the actual variable !! type is different from the return type (for !! example, integer to real). logical ( LK ) :: trailing_spaces_significant = . false . !! for name and path comparisons, if trailing !! space is to be considered significant. logical ( LK ) :: case_sensitive_keys = . true . !! if name and path comparisons !! are case sensitive. logical ( LK ) :: no_whitespace = . false . !! when printing a JSON string, don't include !! non-significant spaces or line breaks. !! If true, the entire structure will be !! printed on one line. logical ( LK ) :: unescaped_strings = . true . !! If false, then the escaped !! string is returned from [[json_get_string]] !! and similar routines. If true [default], !! then the string is returned unescaped. logical ( LK ) :: allow_comments = . true . !! if true, any comments will be ignored when !! parsing a file. The comment tokens are defined !! by the `comment_char` character variable. character ( kind = CK , len = :), allocatable :: comment_char !! comment tokens when !! `allow_comments` is true. !! Examples: '`!`' or '`#`'. !! Default is `CK_'/!#'`. integer ( IK ) :: path_mode = 1_IK !! How the path strings are interpreted in the !! `get_by_path` routines: !! !! * 1 -- Default mode (see [[json_get_by_path_default]]) !! * 2 -- as RFC 6901 \"JSON Pointer\" paths !! (see [[json_get_by_path_rfc6901]]) !! * 3 -- JSONPath \"bracket-notation\" !! see [[json_get_by_path_jsonpath_bracket]]) character ( kind = CK , len = 1 ) :: path_separator = dot !! The `path` separator to use !! in the \"default\" mode for !! the paths in the various !! `get_by_path` routines. !! Note: if `path_mode/=1` !! then this is ignored. logical ( LK ) :: compress_vectors = . false . !! If true, then arrays of integers, !! nulls, reals, & logicals are !! printed all on one line. !! [Note: `no_whitespace` will !! override this option if necessary] logical ( LK ) :: allow_duplicate_keys = . true . !! If False, then after parsing, if any !! duplicate keys are found, an error is !! thrown. A call to [[json_value_validate]] !! will also check for duplicates. If True !! [default] then no special checks are done logical ( LK ) :: escape_solidus = . false . !! If True then the solidus \"`/`\" is always escaped !! (\"`\\/`\") when serializing JSON. !! If False [default], then it is not escaped. !! Note that this option does not affect parsing !! (both escaped and unescaped versions are still !! valid in all cases). integer ( IK ) :: null_to_real_mode = 2_IK !! if `strict_type_checking=false`: !! !! * 1 : an exception will be raised if !! try to retrieve a `null` as a real. !! * 2 : a `null` retrieved as a real !! will return NaN. [default] !! * 3 : a `null` retrieved as a real !! will return 0.0. logical ( LK ) :: non_normals_to_null = . false . !! How to serialize NaN, Infinity, !! and -Infinity real values: !! !! * If true : as JSON `null` values !! * If false : as strings (e.g., \"NaN\", !! \"Infinity\", \"-Infinity\") [default] logical ( LK ) :: use_quiet_nan = . true . !! if true [default], `null_to_real_mode=2` !! and [[string_to_real]] will use !! `ieee_quiet_nan` for NaN values. If false, !! `ieee_signaling_nan` will be used. logical ( LK ) :: strict_integer_type_checking = . true . !! * If false, when parsing JSON, if an integer numeric value !! cannot be converted to an integer (`integer(IK)`), !! then an attempt is then make to convert it !! to a real (`real(RK)`). !! * If true [default], an exception will be raised if an integer !! value cannot be read when parsing JSON. logical ( LK ) :: allow_trailing_comma = . true . !! Allow a single trailing comma in arrays and objects. integer :: ichunk = 0 !! index in `chunk` for [[pop_char]] !! when `use_unformatted_stream=True` integer :: filesize = 0 !! the file size when when `use_unformatted_stream=True` character ( kind = CK , len = :), allocatable :: chunk !! a chunk read from a stream file !! when `use_unformatted_stream=True` contains private !> ! Return a child of a [[json_value]] structure. generic , public :: get_child => json_value_get_child_by_index , & json_value_get_child ,& MAYBEWRAP ( json_value_get_child_by_name ) procedure , private :: json_value_get_child_by_index procedure , private :: MAYBEWRAP ( json_value_get_child_by_name ) procedure , private :: json_value_get_child !> ! Add objects to a linked list of [[json_value]]s. ! !@note It might make more sense to call this `add_child`. generic , public :: add => json_value_add_member , & MAYBEWRAP ( json_value_add_null ), & MAYBEWRAP ( json_value_add_integer ), & MAYBEWRAP ( json_value_add_integer_vec ), & #ifndef REAL32 MAYBEWRAP ( json_value_add_real32 ), & MAYBEWRAP ( json_value_add_real32_vec ), & #endif MAYBEWRAP ( json_value_add_real ), & MAYBEWRAP ( json_value_add_real_vec ), & #ifdef REAL128 MAYBEWRAP ( json_value_add_real64 ), & MAYBEWRAP ( json_value_add_real64_vec ), & #endif MAYBEWRAP ( json_value_add_logical ), & MAYBEWRAP ( json_value_add_logical_vec ), & MAYBEWRAP ( json_value_add_string ), & MAYBEWRAP ( json_value_add_string_vec ) #ifdef USE_UCS4 generic , public :: add => json_value_add_string_name_ascii , & json_value_add_string_val_ascii , & json_value_add_string_vec_name_ascii , & json_value_add_string_vec_val_ascii #endif procedure , private :: json_value_add_member procedure , private :: MAYBEWRAP ( json_value_add_integer ) procedure , private :: MAYBEWRAP ( json_value_add_null ) procedure , private :: MAYBEWRAP ( json_value_add_integer_vec ) #ifndef REAL32 procedure , private :: MAYBEWRAP ( json_value_add_real32 ) procedure , private :: MAYBEWRAP ( json_value_add_real32_vec ) #endif procedure , private :: MAYBEWRAP ( json_value_add_real ) procedure , private :: MAYBEWRAP ( json_value_add_real_vec ) #ifdef REAL128 procedure , private :: MAYBEWRAP ( json_value_add_real64 ) procedure , private :: MAYBEWRAP ( json_value_add_real64_vec ) #endif procedure , private :: MAYBEWRAP ( json_value_add_logical ) procedure , private :: MAYBEWRAP ( json_value_add_logical_vec ) procedure , private :: MAYBEWRAP ( json_value_add_string ) procedure , private :: MAYBEWRAP ( json_value_add_string_vec ) #ifdef USE_UCS4 procedure , private :: json_value_add_string_name_ascii procedure , private :: json_value_add_string_val_ascii procedure , private :: json_value_add_string_vec_name_ascii procedure , private :: json_value_add_string_vec_val_ascii #endif !> ! These are like the `add` methods, except if a variable with the ! same path is already present, then its value is simply updated. ! Note that currently, these only work for scalar variables. ! These routines can also change the variable's type (but an error will be ! thrown if the existing variable is not a scalar). ! !### See also ! * [[json_core(type):add_by_path]] - this one can be used to change ! arrays and objects to scalars if so desired. ! !@note Unlike some routines, the `found` output is not optional, ! so it doesn't present exceptions from being thrown. ! !@note These have been mostly supplanted by the [[json_core(type):add_by_path]] ! methods, which do a similar thing (and can be used for ! scalars and vectors, etc.) generic , public :: update => MAYBEWRAP ( json_update_logical ),& #ifndef REAL32 MAYBEWRAP ( json_update_real32 ),& #endif MAYBEWRAP ( json_update_real ),& #ifdef REAL128 MAYBEWRAP ( json_update_real64 ),& #endif MAYBEWRAP ( json_update_integer ),& MAYBEWRAP ( json_update_string ) #ifdef USE_UCS4 generic , public :: update => json_update_string_name_ascii ,& json_update_string_val_ascii #endif procedure , private :: MAYBEWRAP ( json_update_logical ) #ifndef REAL32 procedure , private :: MAYBEWRAP ( json_update_real32 ) #endif procedure , private :: MAYBEWRAP ( json_update_real ) #ifdef REAL128 procedure , private :: MAYBEWRAP ( json_update_real64 ) #endif procedure , private :: MAYBEWRAP ( json_update_integer ) procedure , private :: MAYBEWRAP ( json_update_string ) #ifdef USE_UCS4 procedure , private :: json_update_string_name_ascii procedure , private :: json_update_string_val_ascii #endif !> ! Add variables to a [[json_value]] linked list ! by specifying their paths. ! !### Example ! !````fortran ! use, intrinsic :: iso_fortran_env, only: output_unit ! use json_module, wp=>json_RK ! type(json_core) :: json ! type(json_value) :: p ! call json%create_object(p,'root') ! create the root ! ! now add some variables using the paths: ! call json%add_by_path(p,'inputs.t', 0.0_wp ) ! call json%add_by_path(p,'inputs.x(1)', 100.0_wp) ! call json%add_by_path(p,'inputs.x(2)', 200.0_wp) ! call json%print(p) ! now print to console !```` ! !### Notes ! * This uses [[json_create_by_path]] ! !### See also ! * The `json_core%update` methods. ! * [[json_create_by_path]] generic , public :: add_by_path => MAYBEWRAP ( json_add_member_by_path ),& MAYBEWRAP ( json_add_integer_by_path ),& #ifndef REAL32 MAYBEWRAP ( json_add_real32_by_path ),& #endif MAYBEWRAP ( json_add_real_by_path ),& #ifdef REAL128 MAYBEWRAP ( json_add_real64_by_path ),& #endif MAYBEWRAP ( json_add_logical_by_path ),& MAYBEWRAP ( json_add_string_by_path ),& MAYBEWRAP ( json_add_integer_vec_by_path ),& #ifndef REAL32 MAYBEWRAP ( json_add_real32_vec_by_path ),& #endif MAYBEWRAP ( json_add_real_vec_by_path ),& #ifdef REAL128 MAYBEWRAP ( json_add_real64_vec_by_path ),& #endif MAYBEWRAP ( json_add_logical_vec_by_path ),& MAYBEWRAP ( json_add_string_vec_by_path ) #ifdef USE_UCS4 generic , public :: add_by_path => json_add_string_by_path_value_ascii ,& json_add_string_by_path_path_ascii ,& json_add_string_vec_by_path_value_ascii ,& json_add_string_vec_by_path_path_ascii #endif procedure :: MAYBEWRAP ( json_add_member_by_path ) procedure :: MAYBEWRAP ( json_add_integer_by_path ) #ifndef REAL32 procedure :: MAYBEWRAP ( json_add_real32_by_path ) #endif procedure :: MAYBEWRAP ( json_add_real_by_path ) #ifdef REAL128 procedure :: MAYBEWRAP ( json_add_real64_by_path ) #endif procedure :: MAYBEWRAP ( json_add_logical_by_path ) procedure :: MAYBEWRAP ( json_add_string_by_path ) procedure :: MAYBEWRAP ( json_add_integer_vec_by_path ) #ifndef REAL32 procedure :: MAYBEWRAP ( json_add_real32_vec_by_path ) #endif procedure :: MAYBEWRAP ( json_add_real_vec_by_path ) #ifdef REAL128 procedure :: MAYBEWRAP ( json_add_real64_vec_by_path ) #endif procedure :: MAYBEWRAP ( json_add_logical_vec_by_path ) procedure :: MAYBEWRAP ( json_add_string_vec_by_path ) #ifdef USE_UCS4 procedure :: json_add_string_by_path_value_ascii procedure :: json_add_string_by_path_path_ascii procedure :: json_add_string_vec_by_path_value_ascii procedure :: json_add_string_vec_by_path_path_ascii #endif !> ! Create a [[json_value]] linked list using the ! path to the variables. Optionally return a ! pointer to the variable. ! ! (This will create a `null` variable) ! !### See also ! * [[json_core(type):add_by_path]] generic , public :: create => MAYBEWRAP ( json_create_by_path ) procedure :: MAYBEWRAP ( json_create_by_path ) !> ! Get data from a [[json_value]] linked list. ! !@note There are two versions (e.g. [[json_get_integer]] and [[json_get_integer_by_path]]). ! The first one gets the value from the [[json_value]] passed into the routine, ! while the second one gets the value from the [[json_value]] found by parsing the ! path. The path version is split up into unicode and non-unicode versions. generic , public :: get => & MAYBEWRAP ( json_get_by_path ), & json_get_integer , MAYBEWRAP ( json_get_integer_by_path ), & json_get_integer_vec , MAYBEWRAP ( json_get_integer_vec_by_path ), & #ifndef REAL32 json_get_real32 , MAYBEWRAP ( json_get_real32_by_path ), & json_get_real32_vec , MAYBEWRAP ( json_get_real32_vec_by_path ), & #endif json_get_real , MAYBEWRAP ( json_get_real_by_path ), & json_get_real_vec , MAYBEWRAP ( json_get_real_vec_by_path ), & #ifdef REAL128 json_get_real64 , MAYBEWRAP ( json_get_real64_by_path ), & json_get_real64_vec , MAYBEWRAP ( json_get_real64_vec_by_path ), & #endif json_get_logical , MAYBEWRAP ( json_get_logical_by_path ), & json_get_logical_vec , MAYBEWRAP ( json_get_logical_vec_by_path ), & json_get_string , MAYBEWRAP ( json_get_string_by_path ), & json_get_string_vec , MAYBEWRAP ( json_get_string_vec_by_path ), & json_get_alloc_string_vec , MAYBEWRAP ( json_get_alloc_string_vec_by_path ),& json_get_array , MAYBEWRAP ( json_get_array_by_path ) procedure , private :: json_get_integer procedure , private :: json_get_integer_vec #ifndef REAL32 procedure , private :: json_get_real32 procedure , private :: json_get_real32_vec #endif procedure , private :: json_get_real procedure , private :: json_get_real_vec #ifdef REAL128 procedure , private :: json_get_real64 procedure , private :: json_get_real64_vec #endif procedure , private :: json_get_logical procedure , private :: json_get_logical_vec procedure , private :: json_get_string procedure , private :: json_get_string_vec procedure , private :: json_get_alloc_string_vec procedure , private :: json_get_array procedure , private :: MAYBEWRAP ( json_get_by_path ) procedure , private :: MAYBEWRAP ( json_get_integer_by_path ) procedure , private :: MAYBEWRAP ( json_get_integer_vec_by_path ) #ifndef REAL32 procedure , private :: MAYBEWRAP ( json_get_real32_by_path ) procedure , private :: MAYBEWRAP ( json_get_real32_vec_by_path ) #endif procedure , private :: MAYBEWRAP ( json_get_real_by_path ) procedure , private :: MAYBEWRAP ( json_get_real_vec_by_path ) #ifdef REAL128 procedure , private :: MAYBEWRAP ( json_get_real64_by_path ) procedure , private :: MAYBEWRAP ( json_get_real64_vec_by_path ) #endif procedure , private :: MAYBEWRAP ( json_get_logical_by_path ) procedure , private :: MAYBEWRAP ( json_get_logical_vec_by_path ) procedure , private :: MAYBEWRAP ( json_get_string_by_path ) procedure , private :: MAYBEWRAP ( json_get_string_vec_by_path ) procedure , private :: MAYBEWRAP ( json_get_array_by_path ) procedure , private :: MAYBEWRAP ( json_get_alloc_string_vec_by_path ) procedure , private :: json_get_by_path_default procedure , private :: json_get_by_path_rfc6901 procedure , private :: json_get_by_path_jsonpath_bracket !> ! Print the [[json_value]] to an output unit or file. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value) :: p ! !... ! call json%print(p,'test.json') !this is [[json_print_to_filename]] !```` generic , public :: print => json_print_to_console ,& json_print_to_unit ,& json_print_to_filename procedure :: json_print_to_console procedure :: json_print_to_unit procedure :: json_print_to_filename !> ! Destructor routine for a [[json_value]] pointer. ! This must be called explicitly if it is no longer needed, ! before it goes out of scope. Otherwise, a memory leak will result. ! !### Example ! ! Destroy the [[json_value]] pointer before the variable goes out of scope: !````fortran ! subroutine example1() ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_object(p,'') ! call json%add(p,'year',2015) ! call json%print(p) ! call json%destroy(p) ! end subroutine example1 !```` ! ! Note: it should NOT be called for a [[json_value]] pointer than has already been ! added to another [[json_value]] structure, since doing so may render the ! other structure invalid. Consider the following example: !````fortran ! subroutine example2(p) ! type(json_core) :: json ! type(json_value),pointer,intent(out) :: p ! type(json_value),pointer :: q ! call json%create_object(p,'') ! call json%add(p,'year',2015) ! call json%create_object(q,'q') ! call json%add(q,'val',1) ! call json%add(p, q) !add q to p structure ! ! do NOT call json%destroy(q) here, because q is ! ! now part of the output structure p. p should be destroyed ! ! somewhere upstream by the caller of this routine. ! nullify(q) !OK, but not strictly necessary ! end subroutine example2 !```` generic , public :: destroy => json_value_destroy , destroy_json_core procedure :: json_value_destroy procedure :: destroy_json_core !> ! If the child variable is present, then remove it. generic , public :: remove_if_present => MAYBEWRAP ( json_value_remove_if_present ) procedure :: MAYBEWRAP ( json_value_remove_if_present ) !> ! Allocate a [[json_value]] pointer and make it a real variable. ! The pointer should not already be allocated. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_real(p,'value',1.0_RK) !```` ! !### Note ! * [[json_core(type):create_real]] is just an alias ! to this one for backward compatibility. generic , public :: create_real => MAYBEWRAP ( json_value_create_real ) procedure :: MAYBEWRAP ( json_value_create_real ) #ifndef REAL32 generic , public :: create_real => MAYBEWRAP ( json_value_create_real32 ) procedure :: MAYBEWRAP ( json_value_create_real32 ) #endif #ifdef REAL128 generic , public :: create_real => MAYBEWRAP ( json_value_create_real64 ) procedure :: MAYBEWRAP ( json_value_create_real64 ) #endif !> ! This is equivalent to [[json_core(type):create_real]], ! and is here only for backward compatibility. generic , public :: create_double => MAYBEWRAP ( json_value_create_real ) #ifndef REAL32 generic , public :: create_double => MAYBEWRAP ( json_value_create_real32 ) #endif #ifdef REAL128 generic , public :: create_double => MAYBEWRAP ( json_value_create_real64 ) #endif !> ! Allocate a [[json_value]] pointer and make it an array variable. ! The pointer should not already be allocated. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_array(p,'arrayname') !```` generic , public :: create_array => MAYBEWRAP ( json_value_create_array ) procedure :: MAYBEWRAP ( json_value_create_array ) !> ! Allocate a [[json_value]] pointer and make it an object variable. ! The pointer should not already be allocated. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_object(p,'objectname') !```` ! !@note The name is not significant for the root structure or an array element. ! In those cases, an empty string can be used. generic , public :: create_object => MAYBEWRAP ( json_value_create_object ) procedure :: MAYBEWRAP ( json_value_create_object ) !> ! Allocate a json_value pointer and make it a null variable. ! The pointer should not already be allocated. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_null(p,'value') !```` generic , public :: create_null => MAYBEWRAP ( json_value_create_null ) procedure :: MAYBEWRAP ( json_value_create_null ) !> ! Allocate a json_value pointer and make it a string variable. ! The pointer should not already be allocated. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_string(p,'value','foobar') !```` generic , public :: create_string => MAYBEWRAP ( json_value_create_string ) procedure :: MAYBEWRAP ( json_value_create_string ) !> ! Allocate a json_value pointer and make it an integer variable. ! The pointer should not already be allocated. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_integer(p,42,'value') !```` generic , public :: create_integer => MAYBEWRAP ( json_value_create_integer ) procedure :: MAYBEWRAP ( json_value_create_integer ) !> ! Allocate a json_value pointer and make it a logical variable. ! The pointer should not already be allocated. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_logical(p,'value',.true.) !```` generic , public :: create_logical => MAYBEWRAP ( json_value_create_logical ) procedure :: MAYBEWRAP ( json_value_create_logical ) !> ! Parse the JSON file and populate the [[json_value]] tree. generic , public :: load => json_parse_file procedure :: json_parse_file !> ! Print the [[json_value]] structure to an allocatable string procedure , public :: serialize => json_value_to_string !> ! The same as `serialize`, but only here for backward compatibility procedure , public :: print_to_string => json_value_to_string !> ! Parse the JSON string and populate the [[json_value]] tree. generic , public :: deserialize => MAYBEWRAP ( json_parse_string ) procedure :: MAYBEWRAP ( json_parse_string ) !> ! Same as `load` and `deserialize` but only here for backward compatibility. generic , public :: parse => json_parse_file , & MAYBEWRAP ( json_parse_string ) !> ! Throw an exception. generic , public :: throw_exception => MAYBEWRAP ( json_throw_exception ) procedure :: MAYBEWRAP ( json_throw_exception ) !> ! Rename a [[json_value]] variable. generic , public :: rename => MAYBEWRAP ( json_value_rename ),& MAYBEWRAP ( json_rename_by_path ) procedure :: MAYBEWRAP ( json_value_rename ) procedure :: MAYBEWRAP ( json_rename_by_path ) #ifdef USE_UCS4 generic , public :: rename => json_rename_by_path_name_ascii ,& json_rename_by_path_path_ascii procedure :: json_rename_by_path_name_ascii procedure :: json_rename_by_path_path_ascii #endif !> ! get info about a [[json_value]] generic , public :: info => json_info , MAYBEWRAP ( json_info_by_path ) procedure :: json_info procedure :: MAYBEWRAP ( json_info_by_path ) !> ! get string info about a [[json_value]] generic , public :: string_info => json_string_info procedure :: json_string_info !> ! get matrix info about a [[json_value]] generic , public :: matrix_info => json_matrix_info , MAYBEWRAP ( json_matrix_info_by_path ) procedure :: json_matrix_info procedure :: MAYBEWRAP ( json_matrix_info_by_path ) !> ! insert a new element after an existing one, ! updating the JSON structure accordingly generic , public :: insert_after => json_value_insert_after , & json_value_insert_after_child_by_index procedure :: json_value_insert_after procedure :: json_value_insert_after_child_by_index !> ! get the path to a JSON variable in a structure: generic , public :: get_path => MAYBEWRAP ( json_get_path ) procedure :: MAYBEWRAP ( json_get_path ) !> ! verify if a path is valid ! (i.e., a variable with this path exists in the file). generic , public :: valid_path => MAYBEWRAP ( json_valid_path ) procedure :: MAYBEWRAP ( json_valid_path ) procedure , public :: remove => json_value_remove !! Remove a [[json_value]] from a !! linked-list structure. procedure , public :: replace => json_value_replace !! Replace a [[json_value]] in a !! linked-list structure. procedure , public :: reverse => json_value_reverse !! Reverse the order of the children !! of an array of object. procedure , public :: check_for_errors => json_check_for_errors !! check for error and get error message procedure , public :: clear_exceptions => json_clear_exceptions !! clear exceptions procedure , public :: count => json_count !! count the number of children procedure , public :: clone => json_clone !! clone a JSON structure (deep copy) procedure , public :: failed => json_failed !! check for error procedure , public :: get_parent => json_get_parent !! get pointer to json_value parent procedure , public :: get_next => json_get_next !! get pointer to json_value next procedure , public :: get_previous => json_get_previous !! get pointer to json_value previous procedure , public :: get_tail => json_get_tail !! get pointer to json_value tail procedure , public :: initialize => json_initialize !! to initialize some parsing parameters procedure , public :: traverse => json_traverse !! to traverse all elements of a JSON !! structure procedure , public :: print_error_message => json_print_error_message !! simply routine to print error !! messages procedure , public :: swap => json_value_swap !! Swap two [[json_value]] pointers !! in a structure (or two different !! structures). procedure , public :: is_child_of => json_value_is_child_of !! Check if a [[json_value]] is a !! descendant of another. procedure , public :: validate => json_value_validate !! Check that a [[json_value]] linked !! list is valid (i.e., is properly !! constructed). This may be useful !! if it has been constructed externally. procedure , public :: check_for_duplicate_keys & => json_check_all_for_duplicate_keys !! Check entire JSON structure !! for duplicate keys (recursively) procedure , public :: check_children_for_duplicate_keys & => json_check_children_for_duplicate_keys !! Check a `json_value` object's !! children for duplicate keys !other private routines: procedure :: name_equal procedure :: name_strings_equal procedure :: json_value_print procedure :: string_to_int procedure :: string_to_dble procedure :: prepare_parser => json_prepare_parser procedure :: parse_end => json_parse_end procedure :: parse_value procedure :: parse_number procedure :: parse_string procedure :: parse_for_chars procedure :: parse_object procedure :: parse_array procedure :: annotate_invalid_json procedure :: pop_char procedure :: push_char procedure :: get_current_line_from_file_stream procedure , nopass :: get_current_line_from_file_sequential procedure :: convert procedure :: to_string procedure :: to_logical procedure :: to_integer procedure :: to_real procedure :: to_null procedure :: to_object procedure :: to_array procedure , nopass :: json_value_clone_func procedure :: is_vector => json_is_vector end type json_core !********************************************************* !********************************************************* !> ! Structure constructor to initialize a ! [[json_core(type)]] object ! !### Example ! !```fortran ! type(json_file) :: json_core ! json_core = json_core() !``` interface json_core module procedure initialize_json_core end interface !********************************************************* !************************************************************************************* abstract interface subroutine json_array_callback_func ( json , element , i , count ) !! Array element callback function. Used by [[json_get_array]] import :: json_value , json_core , IK implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: element integer ( IK ), intent ( in ) :: i !! index integer ( IK ), intent ( in ) :: count !! size of array end subroutine json_array_callback_func subroutine json_traverse_callback_func ( json , p , finished ) !! Callback function used by [[json_traverse]] import :: json_value , json_core , LK implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p logical ( LK ), intent ( out ) :: finished !! set true to stop traversing end subroutine json_traverse_callback_func end interface public :: json_array_callback_func public :: json_traverse_callback_func !************************************************************************************* contains !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 4/17/2016 ! ! Destructor for the [[json_core(type)]] type. subroutine destroy_json_core ( me ) implicit none class ( json_core ), intent ( out ) :: me end subroutine destroy_json_core !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 4/26/2016 ! ! Function constructor for a [[json_core(type)]]. ! This is just a wrapper for [[json_initialize]]. ! !@note [[initialize_json_core]], [[json_initialize]], ! [[initialize_json_core_in_file]], and [[initialize_json_file]] ! all have a similar interface. function initialize_json_core (& #include \"json_initialize_dummy_arguments.inc\" ) result ( json_core_object ) implicit none type ( json_core ) :: json_core_object #include \"json_initialize_arguments.inc\" call json_core_object % initialize (& #include \"json_initialize_dummy_arguments.inc\" ) end function initialize_json_core !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/4/2013 ! ! Initialize the [[json_core(type)]] instance. ! ! The routine may be called before any of the [[json_core(type)]] methods are used in ! order to specify certain parameters. If it is not called, then the defaults ! are used. This routine is also called internally by various routines. ! It can also be called to clear exceptions, or to reset some ! of the variables (note that only the arguments present are changed). ! !### Modified ! * Izaak Beekman : 02/24/2015 ! !@note [[initialize_json_core]], [[json_initialize]], ! [[initialize_json_core_in_file]], and [[initialize_json_file]] ! all have a similar interface. subroutine json_initialize ( me ,& #include \"json_initialize_dummy_arguments.inc\" ) implicit none class ( json_core ), intent ( inout ) :: me #include \"json_initialize_arguments.inc\" character ( kind = CDK , len = 10 ) :: w !! max string length character ( kind = CDK , len = 10 ) :: d !! real precision digits character ( kind = CDK , len = 10 ) :: e !! real exponent digits character ( kind = CDK , len = 2 ) :: sgn !! sign flag: `ss` or `sp` character ( kind = CDK , len = 2 ) :: rl_edit_desc !! `G`, `E`, `EN`, or `ES` integer ( IK ) :: istat !! `iostat` flag for !! write statements logical ( LK ) :: sgn_prnt !! print sign flag character ( kind = CK , len = max_integer_str_len ) :: istr !! for integer to !! string conversion !reset exception to false: call me % clear_exceptions () !Just in case, clear these global variables also: me % pushed_index = 0 me % pushed_char = CK_ '' me % char_count = 0 me % line_count = 1 me % ipos = 1 if ( use_unformatted_stream ) then me % filesize = 0 me % ichunk = 0 me % chunk = repeat ( space , stream_chunk_size ) ! default chunk size end if #ifdef USE_UCS4 ! reopen stdout and stderr with utf-8 encoding open ( output_unit , encoding = 'utf-8' ) open ( error_unit , encoding = 'utf-8' ) #endif !various optional inputs: if ( present ( spaces_per_tab )) & me % spaces_per_tab = spaces_per_tab if ( present ( stop_on_error )) & me % stop_on_error = stop_on_error if ( present ( verbose )) & me % is_verbose = verbose if ( present ( strict_type_checking )) & me % strict_type_checking = strict_type_checking if ( present ( trailing_spaces_significant )) & me % trailing_spaces_significant = trailing_spaces_significant if ( present ( case_sensitive_keys )) & me % case_sensitive_keys = case_sensitive_keys if ( present ( no_whitespace )) & me % no_whitespace = no_whitespace if ( present ( unescape_strings )) & me % unescaped_strings = unescape_strings if ( present ( path_mode )) then if ( path_mode == 1_IK . or . path_mode == 2_IK . or . path_mode == 3_IK ) then me % path_mode = path_mode else me % path_mode = 1_IK ! just to have a valid value call me % throw_exception ( 'Invalid path_mode.' ) end if end if ! if we are allowing comments in the file: ! [an empty string disables comments] if ( present ( comment_char )) then me % allow_comments = comment_char /= CK_ '' me % comment_char = trim ( adjustl ( comment_char )) end if ! path separator: if ( present ( path_separator )) then me % path_separator = path_separator end if ! printing vectors in compressed form: if ( present ( compress_vectors )) then me % compress_vectors = compress_vectors end if ! checking for duplicate keys: if ( present ( allow_duplicate_keys )) then me % allow_duplicate_keys = allow_duplicate_keys end if ! if escaping the forward slash: if ( present ( escape_solidus )) then me % escape_solidus = escape_solidus end if ! how to handle null to real conversions: if ( present ( null_to_real_mode )) then select case ( null_to_real_mode ) case ( 1_IK : 3_IK ) me % null_to_real_mode = null_to_real_mode case default me % null_to_real_mode = 2_IK ! just to have a valid value call integer_to_string ( null_to_real_mode , int_fmt , istr ) call me % throw_exception ( 'Invalid null_to_real_mode: ' // istr ) end select end if ! how to handle NaN and Infinities: if ( present ( non_normal_mode )) then select case ( non_normal_mode ) case ( 1_IK ) ! use strings me % non_normals_to_null = . false . case ( 2_IK ) ! use null me % non_normals_to_null = . true . case default call integer_to_string ( non_normal_mode , int_fmt , istr ) call me % throw_exception ( 'Invalid non_normal_mode: ' // istr ) end select end if if ( present ( use_quiet_nan )) then me % use_quiet_nan = use_quiet_nan end if if ( present ( strict_integer_type_checking )) then me % strict_integer_type_checking = strict_integer_type_checking end if if ( present ( allow_trailing_comma )) then me % allow_trailing_comma = allow_trailing_comma end if !Set the format for real numbers: ! [if not changing it, then it remains the same] if ( (. not . allocated ( me % real_fmt )) . or . & ! if this hasn't been done yet present ( compact_reals ) . or . & present ( print_signs ) . or . & present ( real_format ) ) then !allow the special case where real format is '*': ! [this overrides the other options] if ( present ( real_format )) then if ( real_format == star ) then if ( present ( compact_reals )) then ! we will also allow for compact reals with ! '*' format, if both arguments are present. me % compact_real = compact_reals else me % compact_real = . false . end if me % real_fmt = star return end if end if if ( present ( compact_reals )) me % compact_real = compact_reals !set defaults sgn_prnt = . false . if ( present ( print_signs ) ) sgn_prnt = print_signs if ( sgn_prnt ) then sgn = 'sp' else sgn = 'ss' end if rl_edit_desc = 'E' if ( present ( real_format ) ) then select case ( real_format ) case ( 'g' , 'G' , 'e' , 'E' , 'en' , 'EN' , 'es' , 'ES' ) rl_edit_desc = real_format case default call me % throw_exception ( 'Invalid real format, \"' // & trim ( real_format ) // '\", passed to json_initialize.' // & new_line ( 'a' ) // 'Acceptable formats are: \"G\", \"E\", \"EN\", and \"ES\".' ) end select end if ! set the default output/input format for reals: write ( w , '(ss,I0)' , iostat = istat ) max_numeric_str_len if ( istat == 0 ) write ( d , '(ss,I0)' , iostat = istat ) real_precision if ( istat == 0 ) write ( e , '(ss,I0)' , iostat = istat ) real_exponent_digits if ( istat == 0 ) then me % real_fmt = '(' // sgn // ',' // trim ( rl_edit_desc ) // & trim ( w ) // '.' // trim ( d ) // 'E' // trim ( e ) // ')' else me % real_fmt = '(' // sgn // ',' // trim ( rl_edit_desc ) // & '27.17E4)' !just use this one (should never happen) end if end if end subroutine json_initialize !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Returns true if `name` is equal to `p%name`, using the specified ! settings for case sensitivity and trailing whitespace. ! !### History ! * 4/30/2016 : original version ! * 8/25/2017 : now just a wrapper for [[name_strings_equal]] function name_equal ( json , p , name ) result ( is_equal ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), intent ( in ) :: p !! the json object character ( kind = CK , len =* ), intent ( in ) :: name !! the name to check for logical ( LK ) :: is_equal !! true if the string are !! lexically equal if ( allocated ( p % name )) then ! call the low-level routines for the name strings: is_equal = json % name_strings_equal ( p % name , name ) else is_equal = name == CK_ '' ! check a blank name end if end function name_equal !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 8/25/2017 ! ! Returns true if the name strings `name1` is equal to `name2`, using ! the specified settings for case sensitivity and trailing whitespace. function name_strings_equal ( json , name1 , name2 ) result ( is_equal ) implicit none class ( json_core ), intent ( inout ) :: json character ( kind = CK , len =* ), intent ( in ) :: name1 !! the name to check character ( kind = CK , len =* ), intent ( in ) :: name2 !! the name to check logical ( LK ) :: is_equal !! true if the string are !! lexically equal !must be the same length if we are treating !trailing spaces as significant, so do a !quick test of this first: if ( json % trailing_spaces_significant ) then is_equal = len ( name1 ) == len ( name2 ) if (. not . is_equal ) return end if if ( json % case_sensitive_keys ) then is_equal = name1 == name2 else is_equal = lowercase_string ( name1 ) == lowercase_string ( name2 ) end if end function name_strings_equal !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 10/31/2015 ! ! Create a deep copy of a [[json_value]] linked-list structure. ! !### Notes ! ! * If `from` has children, then they are also cloned. ! * The parent of `from` is not linked to `to`. ! * If `from` is an element of an array, then the previous and ! next entries are not cloned (only that element and it's children, if any). ! !### Example ! !````fortran ! program test ! use json_module ! implicit none ! type(json_core) :: json ! type(json_value),pointer :: j1, j2 ! call json%load('files/inputs/test1.json',j1) ! call json%clone(j1,j2) !now have two independent copies ! call json%destroy(j1) !destroys j1, but j2 remains ! call json%print(j2,'j2.json') ! call json%destroy(j2) ! end program test !```` subroutine json_clone ( json , from , to ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: from !! this is the structure to clone type ( json_value ), pointer :: to !! the clone is put here !! (it must not already be associated) !call the main function: call json % json_value_clone_func ( from , to ) end subroutine json_clone !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 10/31/2015 ! ! Recursive deep copy function called by [[json_clone]]. ! !@note If new data is added to the [[json_value]] type, ! then this would need to be updated. recursive subroutine json_value_clone_func ( from , to , parent , previous , tail ) implicit none type ( json_value ), pointer :: from !! this is the structure to clone type ( json_value ), pointer :: to !! the clone is put here (it !! must not already be associated) type ( json_value ), pointer , optional :: parent !! to%parent type ( json_value ), pointer , optional :: previous !! to%previous logical , optional :: tail !! if \"to\" is the tail of !! its parent's children nullify ( to ) if ( associated ( from )) then allocate ( to ) !copy over the data variables: ! [note: the allocate() statements don't work here for the ! deferred-length characters in gfortran-4.9] if ( allocated ( from % name )) to % name = from % name if ( allocated ( from % dbl_value )) allocate ( to % dbl_value , source = from % dbl_value ) if ( allocated ( from % log_value )) allocate ( to % log_value , source = from % log_value ) if ( allocated ( from % str_value )) to % str_value = from % str_value if ( allocated ( from % int_value )) allocate ( to % int_value , source = from % int_value ) to % var_type = from % var_type to % n_children = from % n_children ! allocate and associate the pointers as necessary: if ( present ( parent )) to % parent => parent if ( present ( previous )) to % previous => previous if ( present ( tail )) then if ( tail . and . associated ( to % parent )) to % parent % tail => to end if if ( associated ( from % next ) . and . associated ( to % parent )) then ! we only clone the next entry in an array ! if the parent has also been cloned call json_value_clone_func ( from = from % next ,& to = to % next ,& previous = to ,& parent = to % parent ,& tail = (. not . associated ( from % next % next ))) end if if ( associated ( from % children )) then call json_value_clone_func ( from = from % children ,& to = to % children ,& parent = to ,& tail = (. not . associated ( from % children % next ))) end if end if end subroutine json_value_clone_func !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Destroy the data within a [[json_value]], and reset type to `json_unknown`. pure subroutine destroy_json_data ( d ) implicit none type ( json_value ), intent ( inout ) :: d d % var_type = json_unknown if ( allocated ( d % log_value )) deallocate ( d % log_value ) if ( allocated ( d % int_value )) deallocate ( d % int_value ) if ( allocated ( d % dbl_value )) deallocate ( d % dbl_value ) if ( allocated ( d % str_value )) deallocate ( d % str_value ) end subroutine destroy_json_data !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 2/13/2014 ! ! Returns information about a [[json_value]]. subroutine json_info ( json , p , var_type , n_children , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p integer ( IK ), intent ( out ), optional :: var_type !! variable type integer ( IK ), intent ( out ), optional :: n_children !! number of children character ( kind = CK , len = :), allocatable , intent ( out ), optional :: name !! variable name if (. not . json % exception_thrown . and . associated ( p )) then if ( present ( var_type )) var_type = p % var_type if ( present ( n_children )) n_children = json % count ( p ) if ( present ( name )) then if ( allocated ( p % name )) then name = p % name else name = CK_ '' end if end if else ! error if (. not . json % exception_thrown ) then call json % throw_exception ( 'Error in json_info: ' // & 'pointer is not associated.' ) end if if ( present ( var_type )) var_type = json_unknown if ( present ( n_children )) n_children = 0 if ( present ( name )) name = CK_ '' end if end subroutine json_info !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/18/2016 ! ! Returns information about character strings returned from a [[json_value]]. subroutine json_string_info ( json , p , ilen , max_str_len , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p integer ( IK ), dimension (:), allocatable , intent ( out ), optional :: ilen !! if `p` is an array, this !! is the actual length !! of each character !! string in the array. !! if not an array, this !! is returned unallocated. integer ( IK ), intent ( out ), optional :: max_str_len !! The maximum length required to !! hold the string representation returned !! by a call to a `get` routine. If a scalar, !! this is just the length of the scalar. If !! a vector, this is the maximum length of !! any element. logical ( LK ), intent ( out ), optional :: found !! true if there were no errors. !! if not present, an error will !! throw an exception character ( kind = CK , len = :), allocatable :: cval !! for getting values as strings. logical ( LK ) :: initialized !! if the output array has been sized logical ( LK ) :: get_max_len !! if we are returning the `max_str_len` logical ( LK ) :: get_ilen !! if we are returning the `ilen` array integer ( IK ) :: var_type !! variable type get_max_len = present ( max_str_len ) get_ilen = present ( ilen ) if (. not . json % exception_thrown ) then if ( present ( found )) found = . true . initialized = . false . if ( get_max_len ) max_str_len = 0 select case ( p % var_type ) case ( json_array ) ! it's an array ! call routine for each element call json % get ( p , array_callback = get_string_lengths ) case default ! not an array if ( json % strict_type_checking ) then ! only allowing strings to be returned ! as strings, so we can check size directly call json % info ( p , var_type = var_type ) if ( var_type == json_string ) then if ( allocated ( p % str_value ) . and . get_max_len ) & max_str_len = len ( p % str_value ) else ! it isn't a string, so there is no length call json % throw_exception ( 'Error in json_string_info: ' // & 'When strict_type_checking is true ' // & 'the variable must be a character string.' ,& found ) end if else ! in this case, we have to get the value ! as a string to know what size it is. call json % get ( p , value = cval ) if (. not . json % exception_thrown ) then if ( allocated ( cval ) . and . get_max_len ) & max_str_len = len ( cval ) end if end if end select end if if ( json % exception_thrown ) then if ( present ( found )) then call json % clear_exceptions () found = . false . end if if ( get_max_len ) max_str_len = 0 if ( get_ilen ) then if ( allocated ( ilen )) deallocate ( ilen ) end if end if contains subroutine get_string_lengths ( json , element , i , count ) !! callback function to call for each element in the array. implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: element integer ( IK ), intent ( in ) :: i !! index integer ( IK ), intent ( in ) :: count !! size of array character ( kind = CK , len = :), allocatable :: cval integer ( IK ) :: var_type if ( json % exception_thrown ) return if (. not . initialized ) then if ( get_ilen ) allocate ( ilen ( count )) initialized = . true . end if if ( json % strict_type_checking ) then ! only allowing strings to be returned ! as strings, so we can check size directly call json % info ( element , var_type = var_type ) if ( var_type == json_string ) then if ( allocated ( element % str_value )) then if ( get_max_len ) then if ( len ( element % str_value ) > max_str_len ) & max_str_len = len ( element % str_value ) end if if ( get_ilen ) ilen ( i ) = len ( element % str_value ) else if ( get_ilen ) ilen ( i ) = 0 end if else ! it isn't a string, so there is no length call json % throw_exception ( 'Error in json_string_info: ' // & 'When strict_type_checking is true ' // & 'the array must contain only ' // & 'character strings.' , found ) end if else ! in this case, we have to get the value ! as a string to know what size it is. call json % get ( element , value = cval ) if ( json % exception_thrown ) return if ( allocated ( cval )) then if ( get_max_len ) then if ( len ( cval ) > max_str_len ) max_str_len = len ( cval ) end if if ( get_ilen ) ilen ( i ) = len ( cval ) else if ( get_ilen ) ilen ( i ) = 0 end if end if end subroutine get_string_lengths end subroutine json_string_info !***************************************************************************************** !***************************************************************************************** ! ! Returns information about a [[json_value]], given the path. ! !### See also ! * [[json_info]] ! !@note 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. subroutine json_info_by_path ( json , p , path , found , var_type , n_children , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! a JSON linked list character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable logical ( LK ), intent ( out ), optional :: found !! true if it was found integer ( IK ), intent ( out ), optional :: var_type !! variable type integer ( IK ), intent ( out ), optional :: n_children !! number of children character ( kind = CK , len = :), allocatable , intent ( out ), optional :: name !! variable name type ( json_value ), pointer :: p_var !! temporary pointer logical ( LK ) :: ok !! if the variable was found #if defined __GFORTRAN__ character ( kind = CK , len = :), allocatable :: p_name !! temporary variable for getting name #endif call json % get ( p , path , p_var , found ) !check if it was found: if ( present ( found )) then ok = found else ok = . not . json % exception_thrown end if if (. not . ok ) then if ( present ( var_type )) var_type = json_unknown if ( present ( n_children )) n_children = 0 if ( present ( name )) name = CK_ '' else !get info: #if defined __GFORTRAN__ call json % info ( p_var , var_type , n_children ) if ( present ( name )) then !workaround for gfortran bug if ( allocated ( p_var % name )) then p_name = p_var % name name = p_name else name = CK_ '' end if end if #else call json % info ( p_var , var_type , n_children , name ) #endif end if end subroutine json_info_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_info_by_path]] where \"path\" is kind=CDK. subroutine wrap_json_info_by_path ( json , p , path , found , var_type , n_children , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! a JSON linked list character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable logical ( LK ), intent ( out ), optional :: found !! true if it was found integer ( IK ), intent ( out ), optional :: var_type !! variable type integer ( IK ), intent ( out ), optional :: n_children !! number of children character ( kind = CK , len = :), allocatable , intent ( out ), optional :: name !! variable name call json % info ( p , to_unicode ( path ), found , var_type , n_children , name ) end subroutine wrap_json_info_by_path !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 10/16/2015 ! ! Alternate version of [[json_info]] that returns matrix ! information about a [[json_value]]. ! ! A [[json_value]] is a valid rank 2 matrix if all of the following are true: ! ! * The var_type is *json_array* ! * Each child is also a *json_array*, each of which has the same number of elements ! * Each individual element has the same variable type (integer, logical, etc.) ! ! The idea here is that if it is a valid matrix, it can be interoperable with ! a Fortran rank 2 array of the same type. ! !### Example ! ! The following example is an array with `var_type=json_integer`, ! `n_sets=3`, and `set_size=4` ! !```json ! { ! \"matrix\": [ ! [1,2,3,4], ! [5,6,7,8], ! [9,10,11,12] ! ] ! } !``` subroutine json_matrix_info ( json , p , is_matrix , var_type , n_sets , set_size , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! a JSON linked list logical ( LK ), intent ( out ) :: is_matrix !! true if it is a valid matrix 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 type ( json_value ), pointer :: p_row !! for getting a set type ( json_value ), pointer :: p_element !! for getting an element in a set integer ( IK ) :: vartype !! json variable type of `p` integer ( IK ) :: row_vartype !! json variable type of a row integer ( IK ) :: element_vartype !! json variable type of an element in a row integer ( IK ) :: nr !! number of children of `p` integer ( IK ) :: nc !! number of elements in first child of `p` integer ( IK ) :: icount !! number of elements in a set integer ( IK ) :: i !! counter integer ( IK ) :: j !! counter #if defined __GFORTRAN__ character ( kind = CK , len = :), allocatable :: p_name !! temporary variable for getting name #endif !get info about the variable: #if defined __GFORTRAN__ call json % info ( p , vartype , nr ) if ( present ( name )) then !workaround for gfortran bug if ( allocated ( p % name )) then p_name = p % name name = p_name else name = CK_ '' end if end if #else call json % info ( p , vartype , nr , name ) #endif is_matrix = ( vartype == json_array ) if ( is_matrix ) then main : do i = 1 , nr nullify ( p_row ) call json % get_child ( p , i , p_row ) if (. not . associated ( p_row )) then is_matrix = . false . call json % throw_exception ( 'Error in json_matrix_info: ' // & 'Malformed JSON linked list' ) exit main end if call json % info ( p_row , var_type = row_vartype , n_children = icount ) if ( row_vartype == json_array ) then if ( i == 1 ) nc = icount !number of columns in first row if ( icount == nc ) then !make sure each row has the same number of columns !see if all the variables in this row are the same type: do j = 1 , icount nullify ( p_element ) call json % get_child ( p_row , j , p_element ) if (. not . associated ( p_element )) then is_matrix = . false . call json % throw_exception ( 'Error in json_matrix_info: ' // & 'Malformed JSON linked list' ) exit main end if call json % info ( p_element , var_type = element_vartype ) if ( i == 1 . and . j == 1 ) vartype = element_vartype !type of first element !in the row if ( vartype /= element_vartype ) then !not all variables are the same time is_matrix = . false . exit main end if end do else is_matrix = . false . exit main end if else is_matrix = . false . exit main end if end do main end if if ( is_matrix ) then if ( present ( var_type )) var_type = vartype if ( present ( n_sets )) n_sets = nr if ( present ( set_size )) set_size = nc else if ( present ( var_type )) var_type = json_unknown if ( present ( n_sets )) n_sets = 0 if ( present ( set_size )) set_size = 0 end if end subroutine json_matrix_info !***************************************************************************************** !***************************************************************************************** !> ! Returns matrix information about a [[json_value]], given the path. ! !### See also ! * [[json_matrix_info]] ! !@note 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. subroutine json_matrix_info_by_path ( json , p , path , is_matrix , found ,& var_type , n_sets , set_size , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! a JSON linked list character ( kind = CK , 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 type ( json_value ), pointer :: p_var logical ( LK ) :: ok #if defined __GFORTRAN__ character ( kind = CK , len = :), allocatable :: p_name !! temporary variable for getting name #endif call json % get ( p , path , p_var , found ) !check if it was found: if ( present ( found )) then ok = found else ok = . not . json % exception_thrown end if if (. not . ok ) then if ( present ( var_type )) var_type = json_unknown if ( present ( n_sets )) n_sets = 0 if ( present ( set_size )) set_size = 0 if ( present ( name )) name = CK_ '' else !get info about the variable: #if defined __GFORTRAN__ call json % matrix_info ( p_var , is_matrix , var_type , n_sets , set_size ) if ( present ( name )) then !workaround for gfortran bug if ( allocated ( p_var % name )) then p_name = p_var % name name = p_name else name = CK_ '' end if end if #else call json % matrix_info ( p_var , is_matrix , var_type , n_sets , set_size , name ) #endif if ( json % exception_thrown . and . present ( found )) then found = . false . call json % clear_exceptions () end if end if end subroutine json_matrix_info_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_matrix_info_by_path]] where \"path\" is kind=CDK. subroutine wrap_json_matrix_info_by_path ( json , p , path , is_matrix , found ,& var_type , n_sets , set_size , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! a JSON linked list 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 json % matrix_info ( p , to_unicode ( path ), is_matrix , found , var_type , n_sets , set_size , name ) end subroutine wrap_json_matrix_info_by_path !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 4/29/2016 ! ! Rename a [[json_value]]. subroutine json_value_rename ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p character ( kind = CK , len =* ), intent ( in ) :: name !! new variable name if ( json % trailing_spaces_significant ) then p % name = name else p % name = trim ( name ) end if end subroutine json_value_rename !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 4/29/2016 ! ! Alternate version of [[json_value_rename]], where `name` is kind=CDK. subroutine wrap_json_value_rename ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! new variable name call json % rename ( p , to_unicode ( name )) end subroutine wrap_json_value_rename !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/4/2013 ! ! Clear exceptions in the [[json_core(type)]]. pure subroutine json_clear_exceptions ( json ) implicit none class ( json_core ), intent ( inout ) :: json !clear the flag and message: json % exception_thrown = . false . if ( allocated ( json % err_message )) deallocate ( json % err_message ) end subroutine json_clear_exceptions !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/4/2013 ! ! Throw an exception in the [[json_core(type)]]. ! This routine sets the error flag, and prevents any subsequent routine ! from doing anything, until [[json_clear_exceptions]] is called. ! !@note If `is_verbose` is true, this will also print a ! traceback if the Intel compiler is used. ! !@note If `stop_on_error` is true, then the program is stopped. subroutine json_throw_exception ( json , msg , found ) #ifdef __INTEL_COMPILER use ifcore , only : tracebackqq #endif implicit none class ( json_core ), intent ( inout ) :: json character ( kind = CK , len =* ), intent ( in ) :: msg !! the error message logical ( LK ), intent ( inout ), optional :: found !! if the caller is handling the !! exception with an optimal return !! argument. If so, `json%stop_on_error` !! is ignored. logical ( LK ) :: stop_on_error json % exception_thrown = . true . json % err_message = trim ( msg ) stop_on_error = json % stop_on_error . and . . not . present ( found ) if ( stop_on_error ) then #ifdef __INTEL_COMPILER ! for Intel, we raise a traceback and quit call tracebackqq ( string = trim ( msg ), user_exit_code = 0 ) #else write ( error_unit , '(A)' ) 'JSON-Fortran Exception: ' // trim ( msg ) error stop 1 #endif elseif ( json % is_verbose ) then write ( output_unit , '(A)' ) '***********************' write ( output_unit , '(A)' ) 'JSON-Fortran Exception: ' // trim ( msg ) !#if defined __GFORTRAN__ ! call backtrace() ! (have to compile with -fbacktrace -fall-intrinsics flags) !#endif #ifdef __INTEL_COMPILER call tracebackqq ( user_exit_code =- 1 ) ! print a traceback and return #endif write ( output_unit , '(A)' ) '***********************' end if end subroutine json_throw_exception !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_throw_exception]], where `msg` is kind=CDK. subroutine wrap_json_throw_exception ( json , msg , found ) implicit none class ( json_core ), intent ( inout ) :: json character ( kind = CDK , len =* ), intent ( in ) :: msg !! the error message logical ( LK ), intent ( inout ), optional :: found !! if the caller is handling the !! exception with an optimal return !! argument. If so, `json%stop_on_error` !! is ignored. call json % throw_exception ( to_unicode ( msg ), found ) end subroutine wrap_json_throw_exception !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/4/2013 ! ! Retrieve error code from the [[json_core(type)]]. ! This should be called after `parse` to check for errors. ! If an error is thrown, before using the class again, [[json_initialize]] ! should be called to clean up before it is used again. ! !### Example ! !````fortran ! type(json_file) :: json ! logical :: status_ok ! character(kind=CK,len=:),allocatable :: error_msg ! call json%load(filename='myfile.json') ! call json%check_for_errors(status_ok, error_msg) ! if (.not. status_ok) then ! write(*,*) 'Error: '//error_msg ! call json%clear_exceptions() ! call json%destroy() ! end if !```` ! !### See also ! * [[json_failed]] ! * [[json_throw_exception]] subroutine json_check_for_errors ( json , status_ok , error_msg ) implicit none class ( json_core ), intent ( in ) :: json logical ( LK ), intent ( out ), optional :: status_ok !! true if there were no errors character ( kind = CK , len = :), allocatable , intent ( out ), optional :: error_msg !! the error message. !! (not allocated if !! there were no errors) #if defined __GFORTRAN__ character ( kind = CK , len = :), allocatable :: tmp !! workaround for gfortran bugs #endif if ( present ( status_ok )) status_ok = . not . json % exception_thrown if ( present ( error_msg )) then if ( json % exception_thrown ) then ! if an exception has been thrown, ! then this will always be allocated ! [see json_throw_exception] #if defined __GFORTRAN__ tmp = json % err_message error_msg = tmp #else error_msg = json % err_message #endif end if end if end subroutine json_check_for_errors !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/5/2013 ! ! Logical function to indicate if an exception has been thrown in a [[json_core(type)]]. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: p ! logical :: status_ok ! character(len=:),allocatable :: error_msg ! call json%load(filename='myfile.json',p) ! if (json%failed()) then ! call json%check_for_errors(status_ok, error_msg) ! write(*,*) 'Error: '//error_msg ! call json%clear_exceptions() ! call json%destroy(p) ! end if !```` ! ! Note that [[json_file]] contains a wrapper for this routine, which is used like: !````fortran ! type(json_file) :: f ! logical :: status_ok ! character(len=:),allocatable :: error_msg ! call f%load(filename='myfile.json') ! if (f%failed()) then ! call f%check_for_errors(status_ok, error_msg) ! write(*,*) 'Error: '//error_msg ! call f%clear_exceptions() ! call f%destroy() ! end if !```` ! !### See also ! * [[json_check_for_errors]] pure function json_failed ( json ) result ( failed ) implicit none class ( json_core ), intent ( in ) :: json logical ( LK ) :: failed !! will be true if an exception !! has been thrown. failed = json % exception_thrown end function json_failed !***************************************************************************************** !***************************************************************************************** !> ! Allocate a [[json_value]] pointer variable. ! This should be called before adding data to it. ! !### Example ! !````fortran ! type(json_value),pointer :: var ! call json_value_create(var) ! call json%to_real(var,1.0_RK) !```` ! !### Notes ! 1. This routine does not check for exceptions. ! 2. The pointer should not already be allocated, or a memory leak will occur. subroutine json_value_create ( p ) implicit none type ( json_value ), pointer :: p nullify ( p ) allocate ( p ) end subroutine json_value_create !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/22/2014 ! ! Destroy a [[json_value]] linked-list structure. ! !@note The original FSON version of this ! routine was not properly freeing the memory. ! It was rewritten. ! !@note This routine destroys this variable, it's children, and ! (if `destroy_next` is true) the subsequent elements in ! an object or array. It does not destroy the parent or ! previous elements. ! !@Note There is some protection here to enable destruction of ! improperly-created linked lists. However, likely there ! are cases not handled. Use the [[json_value_validate]] ! method to validate a JSON structure that was manually ! created using [[json_value]] pointers. pure recursive subroutine json_value_destroy ( json , p , destroy_next ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! variable to destroy logical ( LK ), intent ( in ), optional :: destroy_next !! if true, then `p%next` !! is also destroyed (default is true) logical ( LK ) :: des_next !! local copy of `destroy_next` !! optional argument type ( json_value ), pointer :: child !! for getting child elements logical :: circular !! to check to malformed linked lists if ( associated ( p )) then if ( present ( destroy_next )) then des_next = destroy_next else des_next = . true . end if if ( allocated ( p % name )) deallocate ( p % name ) call destroy_json_data ( p ) if ( associated ( p % next )) then ! check for circular references: if ( associated ( p , p % next )) nullify ( p % next ) end if if ( associated ( p % children )) then do while ( p % n_children > 0 ) child => p % children if ( associated ( child )) then p % children => p % children % next p % n_children = p % n_children - 1 ! check children for circular references: circular = ( associated ( p % children ) . and . & associated ( p % children , child )) call json % destroy ( child , destroy_next = . false .) if ( circular ) exit else ! it is a malformed JSON object. But, we will ! press ahead with the destroy process, since ! otherwise, there would be no way to destroy it. exit end if end do nullify ( p % children ) nullify ( child ) end if if ( associated ( p % next ) . and . des_next ) call json % destroy ( p % next ) nullify ( p % previous ) nullify ( p % parent ) nullify ( p % tail ) if ( associated ( p )) deallocate ( p ) nullify ( p ) end if end subroutine json_value_destroy !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 9/9/2014 ! ! Remove a [[json_value]] (and all its children) ! from a linked-list structure, preserving the rest of the structure. ! !### Examples ! ! To extract an object from one JSON structure, and add it to another: !````fortran ! type(json_core) :: json ! type(json_value),pointer :: json1,json2,p ! logical :: found ! !create and populate json1 and json2 ! call json%get(json1,'name',p,found) ! get pointer to name element of json1 ! call json%remove(p,destroy=.false.) ! remove it from json1 (don't destroy) ! call json%add(json2,p) ! add it to json2 !```` ! ! To remove an object from a JSON structure (and destroy it): !````fortran ! type(json_core) :: json ! type(json_value),pointer :: json1,p ! logical :: found ! !create and populate json1 ! call json%get(json1,'name',p,found) ! get pointer to name element of json1 ! call json%remove(p) ! remove and destroy it !```` ! !### History ! * Jacob Williams : 12/28/2014 : added destroy optional argument. ! * Jacob Williams : 12/04/2020 : bug fix. subroutine json_value_remove ( json , p , destroy ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p logical ( LK ), intent ( in ), optional :: destroy !! Option to destroy `p` after it is removed: !! !! * If `destroy` is not present, it is also destroyed. !! * If `destroy` is present and true, it is destroyed. !! * If `destroy` is present and false, it is not destroyed. type ( json_value ), pointer :: parent !! pointer to parent type ( json_value ), pointer :: previous !! pointer to previous type ( json_value ), pointer :: next !! pointer to next logical ( LK ) :: destroy_it !! if `p` should be destroyed if ( associated ( p )) then !optional input argument: if ( present ( destroy )) then destroy_it = destroy else destroy_it = . true . end if if ( associated ( p % parent )) then parent => p % parent if ( associated ( p % next )) then !there are later items in the list: next => p % next if ( associated ( p % previous )) then !there are earlier items in the list previous => p % previous previous % next => next next % previous => previous else !this is the first item in the list parent % children => next nullify ( next % previous ) end if else if ( associated ( p % previous )) then !there are earlier items in the list: previous => p % previous nullify ( previous % next ) parent % tail => previous else !this is the only item in the list: nullify ( parent % children ) nullify ( parent % tail ) end if end if ! nullify all pointers to original structure: nullify ( p % next ) nullify ( p % previous ) nullify ( p % parent ) parent % n_children = parent % n_children - 1 end if if ( destroy_it ) call json % destroy ( p ) end if end subroutine json_value_remove !***************************************************************************************** !***************************************************************************************** !> ! Replace `p1` with `p2` in a JSON structure. ! !@note The replacement is done using an insert and remove ! See [[json_value_insert_after]] and [[json_value_remove]] ! for details. subroutine json_value_replace ( json , p1 , p2 , destroy ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p1 !! the item to replace type ( json_value ), pointer :: p2 !! item to take the place of `p1` logical ( LK ), intent ( in ), optional :: destroy !! Should `p1` also be destroyed !! (default is True). Normally, !! this should be true to avoid !! a memory leak. logical ( LK ) :: destroy_p1 !! if `p1` is to be destroyed if ( present ( destroy )) then destroy_p1 = destroy else destroy_p1 = . true . ! default end if call json % insert_after ( p1 , p2 ) call json % remove ( p1 , destroy_p1 ) end subroutine json_value_replace !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 4/11/2017 ! ! Reverse the order of the children of an array or object. subroutine json_value_reverse ( json , p ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p type ( json_value ), pointer :: tmp !! temp variable for traversing the list type ( json_value ), pointer :: current !! temp variable for traversing the list integer ( IK ) :: var_type !! for getting the variable type if ( associated ( p )) then call json % info ( p , var_type = var_type ) ! can only reverse objects or arrays if ( var_type == json_object . or . var_type == json_array ) then nullify ( tmp ) current => p % children p % tail => current ! Swap next and previous for all nodes: do if (. not . associated ( current )) exit tmp => current % previous current % previous => current % next current % next => tmp current => current % previous end do if ( associated ( tmp )) then p % children => tmp % previous end if end if end if end subroutine json_value_reverse !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 4/26/2016 ! ! Swap two elements in a JSON structure. ! All of the children are carried along as well. ! !@note If both are not associated, then an error is thrown. ! !@note The assumption here is that both variables are part of a valid ! [[json_value]] linked list (so the normal `parent`, `previous`, ! `next`, etc. pointers are properly associated if necessary). ! !@warning This cannot be used to swap a parent/child pair, since that ! could lead to a circular linkage. An exception is thrown if ! this is tried. ! !@warning There are also other situations where using this routine may ! produce a malformed JSON structure, such as moving an array ! element outside of an array. This is not checked for. ! !@note If `p1` and `p2` have a common parent, it is always safe to swap them. subroutine json_value_swap ( json , p1 , p2 ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p1 !! swap with `p2` type ( json_value ), pointer :: p2 !! swap with `p1` logical :: same_parent !! if `p1` and `p2` have the same parent logical :: first_last !! if `p1` and `p2` are the first,last or !! last,first children of a common parent logical :: adjacent !! if `p1` and `p2` are adjacent !! elements in an array type ( json_value ), pointer :: a !! temporary variable type ( json_value ), pointer :: b !! temporary variable if ( json % exception_thrown ) return !both have to be associated: if ( associated ( p1 ) . and . associated ( p2 )) then !simple check to make sure that they both !aren't pointing to the same thing: if (. not . associated ( p1 , p2 )) then !we will not allow swapping an item with one of its descendants: if ( json % is_child_of ( p1 , p2 ) . or . json % is_child_of ( p2 , p1 )) then call json % throw_exception ( 'Error in json_value_swap: ' // & 'cannot swap an item with one of its descendants' ) else same_parent = ( associated ( p1 % parent ) . and . & associated ( p2 % parent ) . and . & associated ( p1 % parent , p2 % parent ) ) if ( same_parent ) then first_last = ( associated ( p1 % parent % children , p1 ) . and . & associated ( p2 % parent % tail , p2 )) . or . & ( associated ( p1 % parent % tail , p1 ) . and . & associated ( p2 % parent % children , p2 )) else first_last = . false . end if !first, we fix children,tail pointers: if ( same_parent . and . first_last ) then !this is all we have to do for the parent in this case: call swap_pointers ( p1 % parent % children , p2 % parent % tail ) else if ( same_parent . and . . not . first_last ) then if ( associated ( p1 % parent % children , p1 )) then p1 % parent % children => p2 ! p1 is the first child of the parent else if ( associated ( p1 % parent % children , p2 )) then p1 % parent % children => p1 ! p2 is the first child of the parent end if if ( associated ( p1 % parent % tail , p1 )) then p1 % parent % tail => p2 ! p1 is the last child of the parent else if ( associated ( p1 % parent % tail , p2 )) then p1 % parent % tail => p1 ! p2 is the last child of the parent end if else ! general case: different parents if ( associated ( p1 % parent )) then if ( associated ( p1 % parent % children , p1 )) p1 % parent % children => p2 if ( associated ( p1 % parent % tail , p1 )) p1 % parent % tail => p2 end if if ( associated ( p2 % parent )) then if ( associated ( p2 % parent % children , p2 )) p2 % parent % children => p1 if ( associated ( p2 % parent % tail , p2 )) p2 % parent % tail => p1 end if call swap_pointers ( p1 % parent , p2 % parent ) end if !now, have to fix previous,next pointers: !first, see if they are adjacent: adjacent = associated ( p1 % next , p2 ) . or . & associated ( p2 % next , p1 ) if ( associated ( p2 % next , p1 )) then !p2,p1 a => p2 b => p1 else !p1,p2 (or not adjacent) a => p1 b => p2 end if if ( associated ( a % previous )) a % previous % next => b if ( associated ( b % next )) b % next % previous => a if ( adjacent ) then !a comes before b in the original list b % previous => a % previous a % next => b % next a % previous => b b % next => a else if ( associated ( a % next )) a % next % previous => b if ( associated ( b % previous )) b % previous % next => a call swap_pointers ( a % previous , b % previous ) call swap_pointers ( a % next , b % next ) end if end if else call json % throw_exception ( 'Error in json_value_swap: ' // & 'both pointers must be associated' ) end if end if contains pure subroutine swap_pointers ( s1 , s2 ) implicit none type ( json_value ), pointer , intent ( inout ) :: s1 type ( json_value ), pointer , intent ( inout ) :: s2 type ( json_value ), pointer :: tmp !! temporary pointer if (. not . associated ( s1 , s2 )) then tmp => s1 s1 => s2 s2 => tmp end if end subroutine swap_pointers end subroutine json_value_swap !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 4/28/2016 ! ! Returns True if `p2` is a descendant of `p1` ! (i.e, a child, or a child of child, etc.) function json_value_is_child_of ( json , p1 , p2 ) result ( is_child_of ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p1 type ( json_value ), pointer :: p2 logical ( LK ) :: is_child_of is_child_of = . false . if ( json % exception_thrown ) return if ( associated ( p1 ) . and . associated ( p2 )) then if ( associated ( p1 % children )) then call json % traverse ( p1 % children , is_child_of_callback ) end if end if contains subroutine is_child_of_callback ( json , p , finished ) !! Traverse until `p` is `p2`. implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p logical ( LK ), intent ( out ) :: finished is_child_of = associated ( p , p2 ) finished = is_child_of ! stop searching if found end subroutine is_child_of_callback end function json_value_is_child_of !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 5/2/2016 ! ! Validate a [[json_value]] linked list by checking to make sure ! all the pointers are properly associated, arrays and objects ! have the correct number of children, and the correct data is ! allocated for the variable types. ! ! It recursively traverses the entire structure and checks every element. ! !### History ! * Jacob Williams, 8/26/2017 : added duplicate key check. ! !@note It will return on the first error it encounters. ! !@note This routine does not check or throw any exceptions. ! If `json` is currently in a state of exception, it will ! remain so after calling this routine. subroutine json_value_validate ( json , p , is_valid , error_msg ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p logical ( LK ), intent ( out ) :: is_valid !! True if the structure is valid. character ( kind = CK , len = :), allocatable , intent ( out ) :: error_msg !! if not valid, this will contain !! a description of the problem logical ( LK ) :: has_duplicate !! to check for duplicate keys character ( kind = CK , len = :), allocatable :: path !! path to duplicate key logical ( LK ) :: status_ok !! to check for existing exception character ( kind = CK , len = :), allocatable :: exception_msg !! error message for an existing exception character ( kind = CK , len = :), allocatable :: exception_msg2 !! error message for a new exception if ( associated ( p )) then is_valid = . true . call check_if_valid ( p , require_parent = associated ( p % parent )) if ( is_valid . and . . not . json % allow_duplicate_keys ) then ! if no errors so far, also check the ! entire structure for duplicate keys: ! note: check_for_duplicate_keys does call routines ! that check and throw exceptions, so let's clear any ! first. (save message for later) call json % check_for_errors ( status_ok , exception_msg ) call json % clear_exceptions () call json % check_for_duplicate_keys ( p , has_duplicate , path = path ) if ( json % failed ()) then ! if an exception was thrown during this call, ! then clear it but make that the error message ! returned by this routine. Normally this should ! never actually occur since we have already ! validated the structure. call json % check_for_errors ( is_valid , exception_msg2 ) error_msg = exception_msg2 call json % clear_exceptions () is_valid = . false . else if ( has_duplicate ) then error_msg = 'duplicate key found: ' // path is_valid = . false . end if end if if (. not . status_ok ) then ! restore any existing exception if necessary call json % throw_exception ( exception_msg ) end if ! cleanup: if ( allocated ( path )) deallocate ( path ) if ( allocated ( exception_msg )) deallocate ( exception_msg ) if ( allocated ( exception_msg2 )) deallocate ( exception_msg2 ) end if else error_msg = 'The pointer is not associated' is_valid = . false . end if contains recursive subroutine check_if_valid ( p , require_parent ) implicit none type ( json_value ), pointer , intent ( in ) :: p logical , intent ( in ) :: require_parent !! the first one may be a root (so no parent), !! but all descendants must have a parent. integer ( IK ) :: i !! counter type ( json_value ), pointer :: element type ( json_value ), pointer :: previous if ( is_valid . and . associated ( p )) then ! data type: select case ( p % var_type ) case ( json_null , json_object , json_array ) if ( allocated ( p % log_value ) . or . allocated ( p % int_value ) . or . & allocated ( p % dbl_value ) . or . allocated ( p % str_value )) then error_msg = 'incorrect data allocated for ' // & 'json_null, json_object, or json_array variable type' is_valid = . false . return end if case ( json_logical ) if (. not . allocated ( p % log_value )) then error_msg = 'log_value should be allocated for json_logical variable type' is_valid = . false . return else if ( allocated ( p % int_value ) . or . & allocated ( p % dbl_value ) . or . allocated ( p % str_value )) then error_msg = 'incorrect data allocated for json_logical variable type' is_valid = . false . return end if case ( json_integer ) if (. not . allocated ( p % int_value )) then error_msg = 'int_value should be allocated for json_integer variable type' is_valid = . false . return else if ( allocated ( p % log_value ) . or . & allocated ( p % dbl_value ) . or . allocated ( p % str_value )) then error_msg = 'incorrect data allocated for json_integer variable type' is_valid = . false . return end if case ( json_real ) if (. not . allocated ( p % dbl_value )) then error_msg = 'dbl_value should be allocated for json_real variable type' is_valid = . false . return else if ( allocated ( p % log_value ) . or . allocated ( p % int_value ) . or . & allocated ( p % str_value )) then error_msg = 'incorrect data allocated for json_real variable type' is_valid = . false . return end if case ( json_string ) if (. not . allocated ( p % str_value )) then error_msg = 'str_value should be allocated for json_string variable type' is_valid = . false . return else if ( allocated ( p % log_value ) . or . allocated ( p % int_value ) . or . & allocated ( p % dbl_value )) then error_msg = 'incorrect data allocated for json_string variable type' is_valid = . false . return end if case default error_msg = 'invalid JSON variable type' is_valid = . false . return end select if ( require_parent . and . . not . associated ( p % parent )) then error_msg = 'parent pointer is not associated' is_valid = . false . return end if if (. not . allocated ( p % name )) then if ( associated ( p % parent )) then if ( p % parent % var_type /= json_array ) then error_msg = 'JSON variable must have a name if not an ' // & 'array element or the root' is_valid = . false . return end if end if end if if ( associated ( p % children ) . neqv . associated ( p % tail )) then error_msg = 'both children and tail pointers must be associated' is_valid = . false . return end if ! now, check next one: if ( associated ( p % next )) then if ( associated ( p , p % next )) then error_msg = 'circular linked list' is_valid = . false . return else ! if it's an element in an ! array, then require a parent: call check_if_valid ( p % next , require_parent = . true .) end if end if if ( associated ( p % children )) then if ( p % var_type /= json_array . and . p % var_type /= json_object ) then error_msg = 'only arrays and objects can have children' is_valid = . false . return end if ! first validate children pointers: previous => null () element => p % children do i = 1_IK , p % n_children if (. not . associated ( element % parent , p )) then error_msg = 'child''s parent pointer not properly associated' is_valid = . false . return end if if ( i == 1 . and . associated ( element % previous )) then error_msg = 'first child shouldn''t have a previous' is_valid = . false . return end if if ( i < p % n_children . and . . not . associated ( element % next )) then error_msg = 'not enough children' is_valid = . false . return end if if ( i == p % n_children . and . associated ( element % next )) then error_msg = 'too many children' is_valid = . false . return end if if ( i > 1 ) then if (. not . associated ( previous , element % previous )) then error_msg = 'previous pointer not properly associated' is_valid = . false . return end if end if if ( i == p % n_children . and . & . not . associated ( element % parent % tail , element )) then error_msg = 'parent''s tail pointer not properly associated' is_valid = . false . return end if if ( i < p % n_children ) then !setup next case: previous => element element => element % next end if end do !now check all the children: call check_if_valid ( p % children , require_parent = . true .) end if end if end subroutine check_if_valid end subroutine json_value_validate !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/6/2014 ! ! Given the path string, remove the variable ! from [[json_value]], if it exists. subroutine json_value_remove_if_present ( json , p , path ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable to remove type ( json_value ), pointer :: p_var logical ( LK ) :: found call json % get ( p , path , p_var , found ) if ( found ) call json % remove ( p_var ) end subroutine json_value_remove_if_present !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_remove_if_present]], where `path` is kind=CDK. subroutine wrap_json_value_remove_if_present ( json , p , path ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: path call json % remove_if_present ( p , to_unicode ( path )) end subroutine wrap_json_value_remove_if_present !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/6/2014 ! ! Given the path string, if the variable is present, ! and is a scalar, then update its value. ! If it is not present, then create it and set its value. ! !@note If the variable is not a scalar, an exception will be thrown. subroutine json_update_logical ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable in the structure logical ( LK ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. type ( json_value ), pointer :: p_var integer ( IK ) :: var_type call json % get ( p , path , p_var , found ) if ( found ) then call json % info ( p_var , var_type ) select case ( var_type ) case ( json_null , json_logical , json_integer , json_real , json_string ) call json % to_logical ( p_var , val ) !update the value case default found = . false . call json % throw_exception ( 'Error in json_update_logical: ' // & 'the variable is not a scalar value' , found ) end select else call json % add_by_path ( p , path , val ) !add the new element end if end subroutine json_update_logical !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_update_logical]], where `path` is kind=CDK. subroutine wrap_json_update_logical ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable in the structure logical ( LK ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. call json % update ( p , to_unicode ( path ), val , found ) end subroutine wrap_json_update_logical !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/6/2014 ! ! Given the path string, if the variable is present, ! and is a scalar, then update its value. ! If it is not present, then create it and set its value. ! !@note If the variable is not a scalar, an exception will be thrown. subroutine json_update_real ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable in the structure real ( RK ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. type ( json_value ), pointer :: p_var integer ( IK ) :: var_type call json % get ( p , path , p_var , found ) if ( found ) then call json % info ( p_var , var_type ) select case ( var_type ) case ( json_null , json_logical , json_integer , json_real , json_string ) call json % to_real ( p_var , val ) !update the value case default found = . false . call json % throw_exception ( 'Error in json_update_real: ' // & 'the variable is not a scalar value' , found ) end select else call json % add_by_path ( p , path , val ) !add the new element end if end subroutine json_update_real !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_update_real]], where `path` is kind=CDK. subroutine wrap_json_update_real ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable in the structure real ( RK ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. call json % update ( p , to_unicode ( path ), val , found ) end subroutine wrap_json_update_real !***************************************************************************************** #ifndef REAL32 !***************************************************************************************** !> ! Alternate version of [[json_update_real]], where `val` is `real32`. subroutine json_update_real32 ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable in the structure real ( real32 ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. call json % update ( p , path , real ( val , RK ), found ) end subroutine json_update_real32 !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_update_real32]], where `path` is kind=CDK. subroutine wrap_json_update_real32 ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable in the structure real ( real32 ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. call json % update ( p , to_unicode ( path ), real ( val , RK ), found ) end subroutine wrap_json_update_real32 !***************************************************************************************** #endif #ifdef REAL128 !***************************************************************************************** !> ! Alternate version of [[json_update_real]], where `val` is `real64`. subroutine json_update_real64 ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable in the structure real ( real64 ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. call json % update ( p , path , real ( val , RK ), found ) end subroutine json_update_real64 !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_update_real64]], where `path` is kind=CDK. subroutine wrap_json_update_real64 ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable in the structure real ( real64 ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. call json % update ( p , to_unicode ( path ), real ( val , RK ), found ) end subroutine wrap_json_update_real64 !***************************************************************************************** #endif !***************************************************************************************** !> author: Jacob Williams ! date: 12/6/2014 ! ! Given the path string, if the variable is present, ! and is a scalar, then update its value. ! If it is not present, then create it and set its value. ! !@note If the variable is not a scalar, an exception will be thrown. subroutine json_update_integer ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable in the structure integer ( IK ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. type ( json_value ), pointer :: p_var integer ( IK ) :: var_type call json % get ( p , path , p_var , found ) if ( found ) then call json % info ( p_var , var_type ) select case ( var_type ) case ( json_null , json_logical , json_integer , json_real , json_string ) call json % to_integer ( p_var , val ) !update the value case default found = . false . call json % throw_exception ( 'Error in json_update_integer: ' // & 'the variable is not a scalar value' , found ) end select else call json % add_by_path ( p , path , val ) !add the new element end if end subroutine json_update_integer !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_update_integer]], where `path` is kind=CDK. subroutine wrap_json_update_integer ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable in the structure integer ( IK ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. call json % update ( p , to_unicode ( path ), val , found ) end subroutine wrap_json_update_integer !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/6/2014 ! ! Given the path string, if the variable is present, ! and is a scalar, then update its value. ! If it is not present, then create it and set its value. ! !@note If the variable is not a scalar, an exception will be thrown. subroutine json_update_string ( json , p , path , val , found , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable in the structure character ( kind = CK , len =* ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` !! (only used if `val` is present) logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (only used if `val` is present) !! (note that ADJUSTL is done before TRIM) type ( json_value ), pointer :: p_var integer ( IK ) :: var_type call json % get ( p , path , p_var , found ) if ( found ) then call json % info ( p_var , var_type ) select case ( var_type ) case ( json_null , json_logical , json_integer , json_real , json_string ) call json % to_string ( p_var , val , trim_str = trim_str , adjustl_str = adjustl_str ) ! update the value case default found = . false . call json % throw_exception ( 'Error in json_update_string: ' // & 'the variable is not a scalar value' , found ) end select else call json % add_by_path ( p , path , val ) !add the new element end if end subroutine json_update_string !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_update_string]], where `path` and `value` are kind=CDK. subroutine wrap_json_update_string ( json , p , path , val , found , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable in the structure character ( kind = CDK , len =* ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` !! (only used if `val` is present) logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (only used if `val` is present) !! (note that ADJUSTL is done before TRIM) call json % update ( p , to_unicode ( path ), to_unicode ( val ), found , trim_str , adjustl_str ) end subroutine wrap_json_update_string !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_update_string]], where `path` is kind=CDK. subroutine json_update_string_name_ascii ( json , p , path , val , found , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable in the structure character ( kind = CK , len =* ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` !! (only used if `val` is present) logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (only used if `val` is present) !! (note that ADJUSTL is done before TRIM) call json % update ( p , to_unicode ( path ), val , found , trim_str , adjustl_str ) end subroutine json_update_string_name_ascii !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_update_string]], where `val` is kind=CDK. subroutine json_update_string_val_ascii ( json , p , path , val , found , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable in the structure character ( kind = CDK , len =* ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` !! (only used if `val` is present) logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (only used if `val` is present) !! (note that ADJUSTL is done before TRIM) call json % update ( p , path , to_unicode ( val ), found , trim_str , adjustl_str ) end subroutine json_update_string_val_ascii !***************************************************************************************** !***************************************************************************************** !> ! Adds `member` as a child of `p`. subroutine json_value_add_member ( json , p , member ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! `p` must be a `json_object` !! or a `json_array` type ( json_value ), pointer :: member !! the child member !! to add to `p` integer ( IK ) :: var_type !! variable type of `p` if (. not . json % exception_thrown ) then if ( associated ( p )) then call json % info ( p , var_type = var_type ) select case ( var_type ) case ( json_object , json_array ) ! associate the parent member % parent => p ! add to linked list if ( associated ( p % children )) then p % tail % next => member member % previous => p % tail else p % children => member member % previous => null () !first in the list end if ! new member is now the last one in the list p % tail => member p % n_children = p % n_children + 1 case default call json % throw_exception ( 'Error in json_value_add_member: ' // & 'can only add child to object or array' ) end select else call json % throw_exception ( 'Error in json_value_add_member: ' // & 'the pointer is not associated' ) end if end if end subroutine json_value_add_member !***************************************************************************************** !***************************************************************************************** !> ! Inserts `element` after `p`, and updates the JSON structure accordingly. ! !### Example ! !````fortran ! program test ! use json_module ! implicit none ! logical(json_LK) :: found ! type(json_core) :: json ! type(json_value),pointer :: p,new,element ! call json%load(file='myfile.json', p=p) ! call json%get(p,'x(3)',element,found) ! get pointer to an array element in the file ! call json%create_integer(new,1,'') ! create a new element ! call json%insert_after(element,new) ! insert new element after x(3) ! call json%print(p,'myfile2.json') ! write it to a file ! call json%destroy(p) ! cleanup ! end program test !```` ! !### Details ! ! * This routine can be used to insert a new element (or set of elements) ! into an array or object at a specific index. ! See [[json_value_insert_after_child_by_index]] ! * Children and subsequent elements of `element` are carried along. ! * If the inserted elements are part of an existing list, then ! they are removed from that list. ! !```` ! p ! [1] - [2] - [3] - [4] ! | ! [5] - [6] - [7] n=3 elements inserted ! element last ! ! Result is: ! ! [1] - [2] - [5] - [6] - [7] - [3] - [4] ! !```` subroutine json_value_insert_after ( json , p , element ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! a value from a JSON structure !! (presumably, this is a child of !! an object or array). type ( json_value ), pointer :: element !! the element to insert after `p` type ( json_value ), pointer :: parent !! the parent of `p` type ( json_value ), pointer :: next !! temp pointer for traversing structure type ( json_value ), pointer :: last !! the last of the items being inserted integer :: n !! number of items being inserted if (. not . json % exception_thrown ) then parent => p % parent ! set first parent of inserted list: element % parent => parent ! Count the number of inserted elements. ! and set their parents. n = 1 ! initialize counter next => element % next last => element do if (. not . associated ( next )) exit n = n + 1 next % parent => parent last => next next => next % next end do if ( associated ( parent )) then ! update parent's child counter: parent % n_children = parent % n_children + n ! if p is last of parents children then ! also have to update parent tail pointer: if ( associated ( parent % tail , p )) then parent % tail => last end if end if if ( associated ( element % previous )) then ! element is apparently part of an existing list, ! so have to update that as well. if ( associated ( element % previous % parent )) then element % previous % parent % n_children = & element % previous % parent % n_children - n element % previous % parent % tail => & element % previous ! now the last one in the list else ! this would be a memory leak if the previous entries ! are not otherwise being pointed too ! [throw an error in this case???] end if !remove element from the other list: element % previous % next => null () end if element % previous => p if ( associated ( p % next )) then ! if there are any in the list after p: last % next => p % next last % next % previous => element else last % next => null () end if p % next => element end if end subroutine json_value_insert_after !***************************************************************************************** !***************************************************************************************** !> ! Inserts `element` after the `idx`-th child of `p`, ! and updates the JSON structure accordingly. This is just ! a wrapper for [[json_value_insert_after]]. subroutine json_value_insert_after_child_by_index ( json , p , idx , element ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! a JSON object or array. integer ( IK ), intent ( in ) :: idx !! the index of the child of `p` to !! insert the new element after !! (this is a 1-based Fortran !! style array index) type ( json_value ), pointer :: element !! the element to insert type ( json_value ), pointer :: tmp !! for getting the `idx`-th child of `p` if (. not . json % exception_thrown ) then ! get the idx-th child of p: call json % get_child ( p , idx , tmp ) ! call json_value_insert_after: if (. not . json % exception_thrown ) call json % insert_after ( tmp , element ) end if end subroutine json_value_insert_after_child_by_index !***************************************************************************************** !***************************************************************************************** !> ! Add a new member (`json_value` pointer) to a JSON structure, given the path. ! !@warning If the path points to an existing variable in the structure, ! then this routine will destroy it and replace it with the ! new value. subroutine json_add_member_by_path ( json , me , path , p , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable type ( json_value ), pointer , intent ( in ) :: p !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created type ( json_value ), pointer :: tmp character ( kind = CK , len = :), allocatable :: name !! name of the variable if ( . not . json % exception_thrown ) then if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_add_member_by_path:' // & ' Input pointer p is not associated.' , found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if if ( present ( was_created ) ) was_created = . false . else ! return a pointer to the path (possibly creating it) call json % create ( me , path , tmp , found , was_created ) if (. not . associated ( tmp )) then call json % throw_exception ( 'Error in json_add_member_by_path:' // & ' Unable to resolve path: ' // trim ( path ), found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if else call json % info ( tmp , name = name ) ! replace it with the new one: call json % replace ( tmp , p , destroy = . true .) call json % rename ( p , name ) end if end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_member_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper to [[json_add_member_by_path]] where \"path\" is kind=CDK. subroutine wrap_json_add_member_by_path ( json , me , path , p , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable type ( json_value ), pointer , intent ( in ) :: p !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % json_add_member_by_path ( me , to_unicode ( path ), p , found , was_created ) end subroutine wrap_json_add_member_by_path !***************************************************************************************** !***************************************************************************************** !> ! Add an integer value to a [[json_value]], given the path. ! !@warning If the path points to an existing variable in the structure, ! then this routine will destroy it and replace it with the ! new value. subroutine json_add_integer_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created type ( json_value ), pointer :: p type ( json_value ), pointer :: tmp character ( kind = CK , len = :), allocatable :: name !! variable name if ( . not . json % exception_thrown ) then nullify ( p ) ! return a pointer to the path (possibly creating it) ! If the variable had to be created, then ! it will be a json_null variable. call json % create ( me , path , p , found , was_created ) if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_add_integer_by_path:' // & ' Unable to resolve path: ' // trim ( path ), found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if else !NOTE: a new object is created, and the old one ! is replaced and destroyed. This is to ! prevent memory leaks if the type is ! being changed (for example, if an array ! is being replaced with a scalar). if ( p % var_type == json_integer ) then p % int_value = value else call json % info ( p , name = name ) call json % create_integer ( tmp , value , name ) call json % replace ( p , tmp , destroy = . true .) end if end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_integer_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper to [[json_add_integer_by_path]] where \"path\" is kind=CDK. subroutine wrap_json_add_integer_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % json_add_integer_by_path ( me , to_unicode ( path ), value , found , was_created ) end subroutine wrap_json_add_integer_by_path !***************************************************************************************** !***************************************************************************************** !> ! Add an real value to a [[json_value]], given the path. ! !@warning If the path points to an existing variable in the structure, ! then this routine will destroy it and replace it with the ! new value. subroutine json_add_real_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created type ( json_value ), pointer :: p type ( json_value ), pointer :: tmp character ( kind = CK , len = :), allocatable :: name !! variable name if ( . not . json % exception_thrown ) then nullify ( p ) ! return a pointer to the path (possibly creating it) ! If the variable had to be created, then ! it will be a json_null variable. call json % create ( me , path , p , found , was_created ) if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_add_real_by_path:' // & ' Unable to resolve path: ' // trim ( path ), found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if else !NOTE: a new object is created, and the old one ! is replaced and destroyed. This is to ! prevent memory leaks if the type is ! being changed (for example, if an array ! is being replaced with a scalar). if ( p % var_type == json_real ) then p % dbl_value = value else call json % info ( p , name = name ) call json % create_real ( tmp , value , name ) call json % replace ( p , tmp , destroy = . true .) end if end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_real_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper to [[json_add_real_by_path]] where \"path\" is kind=CDK. subroutine wrap_json_add_real_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % json_add_real_by_path ( me , to_unicode ( path ), value , found , was_created ) end subroutine wrap_json_add_real_by_path !***************************************************************************************** #ifndef REAL32 !***************************************************************************************** !> ! Alternate version of [[json_add_real_by_path]] where value=real32. subroutine json_add_real32_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % add_by_path ( me , path , real ( value , RK ), found , was_created ) end subroutine json_add_real32_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper to [[json_add_real32_by_path]] where \"path\" is kind=CDK. subroutine wrap_json_add_real32_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % add_by_path ( me , to_unicode ( path ), real ( value , RK ), found , was_created ) end subroutine wrap_json_add_real32_by_path !***************************************************************************************** #endif #ifdef REAL128 !***************************************************************************************** !> ! Alternate version of [[json_add_real_by_path]] where value=real32. subroutine json_add_real64_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real64 ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % add_by_path ( me , path , real ( value , RK ), found , was_created ) end subroutine json_add_real64_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper to [[json_add_real64_by_path]] where \"path\" is kind=CDK. subroutine wrap_json_add_real64_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real64 ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % add_by_path ( me , to_unicode ( path ), real ( value , RK ), found , was_created ) end subroutine wrap_json_add_real64_by_path !***************************************************************************************** #endif !***************************************************************************************** !> ! Add a logical value to a [[json_value]], given the path. ! !@warning If the path points to an existing variable in the structure, ! then this routine will destroy it and replace it with the ! new value. subroutine json_add_logical_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created type ( json_value ), pointer :: p type ( json_value ), pointer :: tmp character ( kind = CK , len = :), allocatable :: name !! variable name if ( . not . json % exception_thrown ) then nullify ( p ) ! return a pointer to the path (possibly creating it) ! If the variable had to be created, then ! it will be a json_null variable. call json % create ( me , path , p , found , was_created ) if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_add_logical_by_path:' // & ' Unable to resolve path: ' // trim ( path ), found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if else !NOTE: a new object is created, and the old one ! is replaced and destroyed. This is to ! prevent memory leaks if the type is ! being changed (for example, if an array ! is being replaced with a scalar). if ( p % var_type == json_logical ) then p % log_value = value else call json % info ( p , name = name ) call json % create_logical ( tmp , value , name ) call json % replace ( p , tmp , destroy = . true .) end if end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_logical_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper to [[json_add_logical_by_path]] where \"path\" is kind=CDK. subroutine wrap_json_add_logical_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % json_add_logical_by_path ( me , to_unicode ( path ), value , found , was_created ) end subroutine wrap_json_add_logical_by_path !***************************************************************************************** !***************************************************************************************** !> ! Add a string value to a [[json_value]], given the path. ! !@warning If the path points to an existing variable in the structure, ! then this routine will destroy it and replace it with the ! new value. subroutine json_add_string_by_path ( json , me , path , value , found ,& was_created , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element type ( json_value ), pointer :: p type ( json_value ), pointer :: tmp character ( kind = CK , len = :), allocatable :: name !! variable name if ( . not . json % exception_thrown ) then nullify ( p ) ! return a pointer to the path (possibly creating it) ! If the variable had to be created, then ! it will be a json_null variable. call json % create ( me , path , p , found , was_created ) if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_add_string_by_path:' // & ' Unable to resolve path: ' // trim ( path ), found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if else !NOTE: a new object is created, and the old one ! is replaced and destroyed. This is to ! prevent memory leaks if the type is ! being changed (for example, if an array ! is being replaced with a scalar). if ( p % var_type == json_string ) then p % str_value = value else call json % info ( p , name = name ) call json % create_string ( tmp , value , name , trim_str , adjustl_str ) call json % replace ( p , tmp , destroy = . true .) end if end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_string_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper to [[json_add_string_by_path]] where \"path\" is kind=CDK. subroutine wrap_json_add_string_by_path ( json , me , path , value , found ,& was_created , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element call json % json_add_string_by_path ( me , to_unicode ( path ), to_unicode ( value ),& found , was_created , trim_str , adjustl_str ) end subroutine wrap_json_add_string_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper for [[json_add_string_by_path]] where \"path\" is kind=CDK. subroutine json_add_string_by_path_path_ascii ( json , me , path , value , found ,& was_created , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element call json % json_add_string_by_path ( me , to_unicode ( path ), value , found , was_created , trim_str , adjustl_str ) end subroutine json_add_string_by_path_path_ascii !***************************************************************************************** !***************************************************************************************** !> ! Wrapper for [[json_add_string_by_path]] where \"value\" is kind=CDK. subroutine json_add_string_by_path_value_ascii ( json , me , path , value , found ,& was_created , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element call json % json_add_string_by_path ( me , path , to_unicode ( value ), found , was_created , trim_str , adjustl_str ) end subroutine json_add_string_by_path_value_ascii !***************************************************************************************** !***************************************************************************************** !> ! Wrapper to [[json_add_integer_by_path]] for adding an integer vector by path. subroutine json_add_integer_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created type ( json_value ), pointer :: p !! pointer to path (which may exist) type ( json_value ), pointer :: var !! new variable that is created integer ( IK ) :: i !! counter character ( kind = CK , len = :), allocatable :: name !! the variable name logical ( LK ) :: p_found !! if the path was successfully found (or created) if ( . not . json % exception_thrown ) then !get a pointer to the variable !(creating it if necessary) call json % create ( me , path , p , found = p_found ) if ( p_found ) then call json % info ( p , name = name ) ! want to keep the existing name call json % create_array ( var , name ) ! create a new array variable call json % replace ( p , var , destroy = . true .) ! replace p with this array (destroy p) !populate each element of the array: do i = 1 , size ( value ) call json % add ( var , CK_ '' , value ( i )) end do end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_integer_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper for [[json_add_integer_vec_by_path]] where \"path\" is kind=CDK). subroutine wrap_json_add_integer_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % json_add_integer_vec_by_path ( me , to_unicode ( path ), value , found , was_created ) end subroutine wrap_json_add_integer_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper to [[json_add_logical_by_path]] for adding a logical vector by path. subroutine json_add_logical_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created type ( json_value ), pointer :: p !! pointer to path (which may exist) type ( json_value ), pointer :: var !! new variable that is created integer ( IK ) :: i !! counter character ( kind = CK , len = :), allocatable :: name !! the variable name logical ( LK ) :: p_found !! if the path was successfully found (or created) if ( . not . json % exception_thrown ) then !get a pointer to the variable !(creating it if necessary) call json % create ( me , path , p , found = p_found ) if ( p_found ) then call json % info ( p , name = name ) ! want to keep the existing name call json % create_array ( var , name ) ! create a new array variable call json % replace ( p , var , destroy = . true .) ! replace p with this array (destroy p) !populate each element of the array: do i = 1 , size ( value ) call json % add ( var , CK_ '' , value ( i )) end do end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_logical_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper for [[json_add_logical_vec_by_path]] where \"path\" is kind=CDK). subroutine wrap_json_add_logical_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % json_add_logical_vec_by_path ( me , to_unicode ( path ), value , found , was_created ) end subroutine wrap_json_add_logical_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper to [[json_add_real_by_path]] for adding a real vector by path. subroutine json_add_real_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created type ( json_value ), pointer :: p !! pointer to path (which may exist) type ( json_value ), pointer :: var !! new variable that is created integer ( IK ) :: i !! counter character ( kind = CK , len = :), allocatable :: name !! the variable name logical ( LK ) :: p_found !! if the path was successfully found (or created) if ( . not . json % exception_thrown ) then !get a pointer to the variable !(creating it if necessary) call json % create ( me , path , p , found = p_found ) if ( p_found ) then call json % info ( p , name = name ) ! want to keep the existing name call json % create_array ( var , name ) ! create a new array variable call json % replace ( p , var , destroy = . true .) ! replace p with this array (destroy p) !populate each element of the array: do i = 1 , size ( value ) call json % add ( var , CK_ '' , value ( i )) end do end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_real_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper for [[json_add_real_vec_by_path]] where \"path\" is kind=CDK). subroutine wrap_json_add_real_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % json_add_real_vec_by_path ( me , to_unicode ( path ), value , found , was_created ) end subroutine wrap_json_add_real_vec_by_path !***************************************************************************************** #ifndef REAL32 !***************************************************************************************** !> ! Wrapper to [[json_add_real_by_path]] for adding a real vector by path. subroutine json_add_real32_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % add_by_path ( me , path , real ( value , RK ), found , was_created ) end subroutine json_add_real32_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper for [[json_add_real32_vec_by_path]] where \"path\" is kind=CDK). subroutine wrap_json_add_real32_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % add_by_path ( me , to_unicode ( path ), real ( value , RK ), found , was_created ) end subroutine wrap_json_add_real32_vec_by_path !***************************************************************************************** #endif #ifdef REAL128 !***************************************************************************************** !> ! Wrapper to [[json_add_real_by_path]] for adding a real vector by path. subroutine json_add_real64_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real64 ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % add_by_path ( me , path , real ( value , RK ), found , was_created ) end subroutine json_add_real64_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper for [[json_add_real64_vec_by_path]] where \"path\" is kind=CDK). subroutine wrap_json_add_real64_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real64 ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % add_by_path ( me , to_unicode ( path ), real ( value , RK ), found , was_created ) end subroutine wrap_json_add_real64_vec_by_path !***************************************************************************************** #endif !***************************************************************************************** !> ! Wrapper to [[json_add_string_by_path]] for adding a string vector by path. ! !@note The `ilen` input can be used to specify the actual lengths of the ! the strings in the array. They must all be `<= len(value)`. subroutine json_add_string_vec_by_path ( json , me , path , value , found , was_created , ilen , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created integer ( IK ), dimension (:), intent ( in ), optional :: ilen !! the string lengths of each !! element in `value`. If not present, !! the full `len(value)` string is added !! for each element. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element type ( json_value ), pointer :: p !! pointer to path (which may exist) type ( json_value ), pointer :: var !! new variable that is created integer ( IK ) :: i !! counter character ( kind = CK , len = :), allocatable :: name !! the variable name logical ( LK ) :: p_found !! if the path was successfully found (or created) if ( . not . json % exception_thrown ) then ! validate ilen array if present: if ( present ( ilen )) then if ( size ( ilen ) /= size ( value )) then call json % throw_exception ( 'Error in json_add_string_vec_by_path: ' // & 'Invalid size of ilen input vector.' , found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if if ( present ( was_created )) was_created = . false . return else ! also have to validate the specified lengths. ! (must not be greater than input string length) do i = 1 , size ( value ) if ( ilen ( i ) > len ( value )) then call json % throw_exception ( 'Error in json_add_string_vec_by_path: ' // & 'Invalid ilen element.' , found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if if ( present ( was_created )) was_created = . false . return end if end do end if end if !get a pointer to the variable !(creating it if necessary) call json % create ( me , path , p , found = p_found ) if ( p_found ) then call json % info ( p , name = name ) ! want to keep the existing name call json % create_array ( var , name ) ! create a new array variable call json % replace ( p , var , destroy = . true .) ! replace p with this array (destroy p) !populate each element of the array: do i = 1 , size ( value ) if ( present ( ilen )) then call json % add ( var , CK_ '' , value ( i )( 1 : ilen ( i )), & trim_str = trim_str , adjustl_str = adjustl_str ) else call json % add ( var , CK_ '' , value ( i ), & trim_str = trim_str , adjustl_str = adjustl_str ) end if end do end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_string_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper for [[json_add_string_vec_by_path]] where \"path\" and \"value\" are kind=CDK). subroutine wrap_json_add_string_vec_by_path ( json , me , path , value ,& found , was_created , ilen ,& trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created integer ( IK ), dimension (:), intent ( in ), optional :: ilen !! the string lengths of each !! element in `value`. If not present, !! the full `len(value)` string is added !! for each element. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element call json % json_add_string_vec_by_path ( me , to_unicode ( path ), to_unicode ( value ),& found , was_created , ilen , trim_str , adjustl_str ) end subroutine wrap_json_add_string_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper for [[json_add_string_vec_by_path]] where \"value\" is kind=CDK). subroutine json_add_string_vec_by_path_value_ascii ( json , me , path , value ,& found , was_created , ilen ,& trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created integer ( IK ), dimension (:), intent ( in ), optional :: ilen !! the string lengths of each !! element in `value`. If not present, !! the full `len(value)` string is added !! for each element. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element call json % json_add_string_vec_by_path ( me , path , to_unicode ( value ),& found , was_created , ilen , trim_str , adjustl_str ) end subroutine json_add_string_vec_by_path_value_ascii !***************************************************************************************** !***************************************************************************************** !> ! Wrapper for [[json_add_string_vec_by_path]] where \"path\" is kind=CDK). subroutine json_add_string_vec_by_path_path_ascii ( json , me , path , value ,& found , was_created , ilen ,& trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created integer ( IK ), dimension (:), intent ( in ), optional :: ilen !! the string lengths of each !! element in `value`. If not present, !! the full `len(value)` string is added !! for each element. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element call json % json_add_string_vec_by_path ( me , to_unicode ( path ), value ,& found , was_created , ilen , trim_str , adjustl_str ) end subroutine json_add_string_vec_by_path_path_ascii !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/19/2014 ! ! Add a real value child to the [[json_value]] variable. ! !@note This routine is part of the public API that can be ! used to build a JSON structure using [[json_value]] pointers. subroutine json_value_add_real ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! variable name real ( RK ), intent ( in ) :: val !! real value type ( json_value ), pointer :: var !create the variable: call json % create_real ( var , val , name ) !add it: call json % add ( p , var ) end subroutine json_value_add_real !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_real]] where `name` is kind=CDK. subroutine wrap_json_value_add_real ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! variable name real ( RK ), intent ( in ) :: val !! real value call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_real !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/20/2014 ! ! Add a real vector child to the [[json_value]] variable. ! !@note This routine is part of the public API that can be ! used to build a JSON structure using [[json_value]] pointers. subroutine json_value_add_real_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name real ( RK ), dimension (:), intent ( in ) :: val type ( json_value ), pointer :: var integer ( IK ) :: i !! counter !create the variable as an array: call json % create_array ( var , name ) !populate the array: do i = 1 , size ( val ) call json % add ( var , CK_ '' , val ( i )) end do !add it: call json % add ( p , var ) end subroutine json_value_add_real_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_real_vec]] where `name` is kind=CDK. subroutine wrap_json_value_add_real_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name real ( RK ), dimension (:), intent ( in ) :: val call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_real_vec !***************************************************************************************** #ifndef REAL32 !***************************************************************************************** !> ! Alternate version of [[json_value_add_real]] where `val` is `real32`. subroutine json_value_add_real32 ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! variable name real ( real32 ), intent ( in ) :: val !! real value call json % add ( p , name , real ( val , RK )) end subroutine json_value_add_real32 !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_real32]] where `name` is kind=CDK. subroutine wrap_json_value_add_real32 ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! variable name real ( real32 ), intent ( in ) :: val !! real value call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_real32 !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_real_vec]] where `val` is `real32`. subroutine json_value_add_real32_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name real ( real32 ), dimension (:), intent ( in ) :: val call json % add ( p , name , real ( val , RK )) end subroutine json_value_add_real32_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_real32_vec]] where `name` is kind=CDK. subroutine wrap_json_value_add_real32_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name real ( real32 ), dimension (:), intent ( in ) :: val call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_real32_vec !***************************************************************************************** #endif #ifdef REAL128 !***************************************************************************************** !> ! Alternate version of [[json_value_add_real]] where `val` is `real64`. subroutine json_value_add_real64 ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! variable name real ( real64 ), intent ( in ) :: val !! real value call json % add ( p , name , real ( val , RK )) end subroutine json_value_add_real64 !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_real64]] where `name` is kind=CDK. subroutine wrap_json_value_add_real64 ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! variable name real ( real64 ), intent ( in ) :: val !! real value call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_real64 !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_real_vec]] where `val` is `real64`. subroutine json_value_add_real64_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name real ( real64 ), dimension (:), intent ( in ) :: val call json % add ( p , name , real ( val , RK )) end subroutine json_value_add_real64_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_real64_vec]] where `name` is kind=CDK. subroutine wrap_json_value_add_real64_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name real ( real64 ), dimension (:), intent ( in ) :: val call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_real64_vec !***************************************************************************************** #endif !***************************************************************************************** !> ! Add a NULL value child to the [[json_value]] variable. ! !@note This routine is part of the public API that can be ! used to build a JSON structure using [[json_value]] pointers. subroutine json_value_add_null ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name type ( json_value ), pointer :: var !create the variable: call json % create_null ( var , name ) !add it: call json % add ( p , var ) end subroutine json_value_add_null !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_null]] where `name` is kind=CDK. subroutine wrap_json_value_add_null ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! name of the variable call json % add ( p , to_unicode ( name )) end subroutine wrap_json_value_add_null !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/20/2014 ! ! Add an integer value child to the [[json_value]] variable. ! !@note This routine is part of the public API that can be ! used to build a JSON structure using [[json_value]] pointers. subroutine json_value_add_integer ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name integer ( IK ), intent ( in ) :: val type ( json_value ), pointer :: var !create the variable: call json % create_integer ( var , val , name ) !add it: call json % add ( p , var ) end subroutine json_value_add_integer !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_integer]] where `name` is kind=CDK. subroutine wrap_json_value_add_integer ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! name of the variable integer ( IK ), intent ( in ) :: val !! value call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_integer !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/20/2014 ! ! Add a integer vector child to the [[json_value]] variable. ! !@note This routine is part of the public API that can be ! used to build a JSON structure using [[json_value]] pointers. subroutine json_value_add_integer_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! name of the variable integer ( IK ), dimension (:), intent ( in ) :: val !! value type ( json_value ), pointer :: var integer ( IK ) :: i !! counter !create a variable as an array: call json % create_array ( var , name ) !populate the array: do i = 1 , size ( val ) call json % add ( var , CK_ '' , val ( i )) end do !add it: call json % add ( p , var ) end subroutine json_value_add_integer_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_integer_vec]] where `name` is kind=CDK. subroutine wrap_json_value_add_integer_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! name of the variable integer ( IK ), dimension (:), intent ( in ) :: val !! value call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_integer_vec !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/20/2014 ! ! Add a logical value child to the [[json_value]] variable. ! !@note This routine is part of the public API that can be ! used to build a JSON structure using [[json_value]] pointers. subroutine json_value_add_logical ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! name of the variable logical ( LK ), intent ( in ) :: val !! value type ( json_value ), pointer :: var !create the variable: call json % create_logical ( var , val , name ) !add it: call json % add ( p , var ) end subroutine json_value_add_logical !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_logical]] where `name` is kind=CDK. subroutine wrap_json_value_add_logical ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! name of the variable logical ( LK ), intent ( in ) :: val !! value call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_logical !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/20/2014 ! ! Add a logical vector child to the [[json_value]] variable. ! !@note This routine is part of the public API that can be ! used to build a JSON structure using [[json_value]] pointers. subroutine json_value_add_logical_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! name of the vector logical ( LK ), dimension (:), intent ( in ) :: val !! value type ( json_value ), pointer :: var integer ( IK ) :: i !! counter !create the variable as an array: call json % create_array ( var , name ) !populate the array: do i = 1 , size ( val ) call json % add ( var , CK_ '' , val ( i )) end do !add it: call json % add ( p , var ) end subroutine json_value_add_logical_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_logical_vec]] where `name` is kind=CDK. subroutine wrap_json_value_add_logical_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! name of the variable logical ( LK ), dimension (:), intent ( in ) :: val !! value call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_logical_vec !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/19/2014 ! ! Add a character string child to the [[json_value]] variable. ! !@note This routine is part of the public API that can be ! used to build a JSON structure using [[json_value]] pointers. subroutine json_value_add_string ( json , p , name , val , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! name of the variable character ( kind = CK , len =* ), intent ( in ) :: val !! value logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` type ( json_value ), pointer :: var !create the variable: call json % create_string ( var , val , name , trim_str , adjustl_str ) !add it: call json % add ( p , var ) end subroutine json_value_add_string !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_string]] where `name` and `val` are kind=CDK. subroutine wrap_json_value_add_string ( json , p , name , val , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! name of the variable character ( kind = CDK , len =* ), intent ( in ) :: val !! value logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` call json % add ( p , to_unicode ( name ), to_unicode ( val ), trim_str , adjustl_str ) end subroutine wrap_json_value_add_string !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_string]] where `name` is kind=CDK. subroutine json_value_add_string_name_ascii ( json , p , name , val , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! name of the variable character ( kind = CK , len =* ), intent ( in ) :: val !! value logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` call json % add ( p , to_unicode ( name ), val , trim_str , adjustl_str ) end subroutine json_value_add_string_name_ascii !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_string]] where `val` is kind=CDK. subroutine json_value_add_string_val_ascii ( json , p , name , val , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! name of the variable character ( kind = CDK , len =* ), intent ( in ) :: val !! value logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` call json % add ( p , name , to_unicode ( val ), trim_str , adjustl_str ) end subroutine json_value_add_string_val_ascii !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/19/2014 ! ! Add a character string vector child to the [[json_value]] variable. ! !@note This routine is part of the public API that can be ! used to build a JSON structure using [[json_value]] pointers. subroutine json_value_add_string_vec ( json , p , name , val , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! variable name character ( kind = CK , len =* ), dimension (:), intent ( in ) :: val !! array of strings logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element type ( json_value ), pointer :: var integer ( IK ) :: i !! counter !create the variable as an array: call json % create_array ( var , name ) !populate the array: do i = 1 , size ( val ) call json % add ( var , CK_ '' , val ( i ), trim_str , adjustl_str ) end do !add it: call json % add ( p , var ) end subroutine json_value_add_string_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_string_vec]] where `name` and `val` are kind=CDK. subroutine wrap_json_value_add_string_vec ( json , p , name , val , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name character ( kind = CDK , len =* ), dimension (:), intent ( in ) :: val logical ( LK ), intent ( in ), optional :: trim_str logical ( LK ), intent ( in ), optional :: adjustl_str call json % add ( p , to_unicode ( name ), to_unicode ( val ), trim_str , adjustl_str ) end subroutine wrap_json_value_add_string_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_string_vec]] where `name` is kind=CDK. subroutine json_value_add_string_vec_name_ascii ( json , p , name , val , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name character ( kind = CK , len =* ), dimension (:), intent ( in ) :: val logical ( LK ), intent ( in ), optional :: trim_str logical ( LK ), intent ( in ), optional :: adjustl_str call json % add ( p , to_unicode ( name ), val , trim_str , adjustl_str ) end subroutine json_value_add_string_vec_name_ascii !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_string_vec]] where `val` is kind=CDK. subroutine json_value_add_string_vec_val_ascii ( json , p , name , val , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name character ( kind = CDK , len =* ), dimension (:), intent ( in ) :: val logical ( LK ), intent ( in ), optional :: trim_str logical ( LK ), intent ( in ), optional :: adjustl_str call json % add ( p , name , to_unicode ( val ), trim_str , adjustl_str ) end subroutine json_value_add_string_vec_val_ascii !***************************************************************************************** !***************************************************************************************** !> ! Count the number of children in the object or array. ! !### History ! * JW : 1/4/2014 : Original routine removed. ! Now using `n_children` variable. ! Renamed from `json_value_count`. function json_count ( json , p ) result ( count ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! this should normally be a `json_object` !! or a `json_array`. For any other !! variable type this will return 0. integer ( IK ) :: count !! number of children in `p`. if ( associated ( p )) then count = p % n_children else call json % throw_exception ( 'Error in json_count: ' // & 'pointer is not associated.' ) end if end function json_count !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 10/16/2015 ! ! Returns a pointer to the parent of a [[json_value]]. ! If there is no parent, then a `null()` pointer is returned. subroutine json_get_parent ( json , p , parent ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! JSON object type ( json_value ), pointer , intent ( out ) :: parent !! pointer to `parent` if ( associated ( p )) then parent => p % parent else nullify ( parent ) call json % throw_exception ( 'Error in json_get_parent: ' // & 'pointer is not associated.' ) end if end subroutine json_get_parent !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 10/31/2015 ! ! Returns a pointer to the next of a [[json_value]]. ! If there is no next, then a `null()` pointer is returned. subroutine json_get_next ( json , p , next ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! JSON object type ( json_value ), pointer , intent ( out ) :: next !! pointer to `next` if ( associated ( p )) then next => p % next else nullify ( next ) call json % throw_exception ( 'Error in json_get_next: ' // & 'pointer is not associated.' ) end if end subroutine json_get_next !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 10/31/2015 ! ! Returns a pointer to the previous of a [[json_value]]. ! If there is no previous, then a `null()` pointer is returned. subroutine json_get_previous ( json , p , previous ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! JSON object type ( json_value ), pointer , intent ( out ) :: previous !! pointer to `previous` if ( associated ( p )) then previous => p % previous else nullify ( previous ) call json % throw_exception ( 'Error in json_get_previous: ' // & 'pointer is not associated.' ) end if end subroutine json_get_previous !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 10/31/2015 ! ! Returns a pointer to the tail of a [[json_value]] ! (the last child of an array of object). ! If there is no tail, then a `null()` pointer is returned. subroutine json_get_tail ( json , p , tail ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! JSON object type ( json_value ), pointer , intent ( out ) :: tail !! pointer to `tail` if ( associated ( p )) then tail => p % tail else nullify ( tail ) call json % throw_exception ( 'Error in json_get_tail: ' // & 'pointer is not associated.' ) end if end subroutine json_get_tail !***************************************************************************************** !***************************************************************************************** !> ! Returns a child in the object or array given the index. subroutine json_value_get_child_by_index ( json , p , idx , child , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! object or array JSON data integer ( IK ), intent ( in ) :: idx !! index of the child !! (this is a 1-based Fortran !! style array index). type ( json_value ), pointer :: child !! pointer to the child logical ( LK ), intent ( out ), optional :: found !! true if the value was found !! (if not present, an exception !! will be thrown if it was not !! found. If present and not !! found, no exception will be !! thrown). integer ( IK ) :: i !! counter nullify ( child ) if (. not . json % exception_thrown ) then if ( associated ( p % children )) then ! If getting first or last child, we can do this quickly. ! Otherwise, traverse the list. if ( idx == 1 ) then child => p % children ! first one elseif ( idx == p % n_children ) then if ( associated ( p % tail )) then child => p % tail ! last one else call json % throw_exception ( 'Error in json_value_get_child_by_index:' // & ' child%tail is not associated.' , found ) end if elseif ( idx < 1 . or . idx > p % n_children ) then call json % throw_exception ( 'Error in json_value_get_child_by_index:' // & ' idx is out of range.' , found ) else ! if idx is closer to the end, we traverse the list backward from tail, ! otherwise we traverse it forward from children: if ( p % n_children - idx < idx ) then ! traverse backward child => p % tail do i = 1 , p % n_children - idx if ( associated ( child % previous )) then child => child % previous else call json % throw_exception ( 'Error in json_value_get_child_by_index:' // & ' child%previous is not associated.' , found ) nullify ( child ) exit end if end do else ! traverse forward child => p % children do i = 1 , idx - 1 if ( associated ( child % next )) then child => child % next else call json % throw_exception ( 'Error in json_value_get_child_by_index:' // & ' child%next is not associated.' , found ) nullify ( child ) exit end if end do end if end if else call json % throw_exception ( 'Error in json_value_get_child_by_index:' // & ' p%children is not associated.' , found ) end if ! found output: if ( json % exception_thrown ) then if ( present ( found )) then call json % clear_exceptions () found = . false . end if else if ( present ( found )) found = . true . end if else if ( present ( found )) found = . false . end if end subroutine json_value_get_child_by_index !***************************************************************************************** !***************************************************************************************** !> ! Returns pointer to the first child of the object ! (or `null()` if it is not associated). subroutine json_value_get_child ( json , p , child ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! object or array JSON data type ( json_value ), pointer :: child !! pointer to the child if ( associated ( p )) then child => p % children else nullify ( child ) call json % throw_exception ( 'Error in json_value_get_child: ' // & 'pointer is not associated.' ) end if end subroutine json_value_get_child !***************************************************************************************** !***************************************************************************************** !> ! Returns a child in the object or array given the name string. ! ! The name search can be case-sensitive or not, and can have significant trailing ! whitespace or not, depending on the settings in the [[json_core(type)]] class. ! !@note The `name` input is not a path, and is not parsed like it is in [[json_get_by_path]]. subroutine json_value_get_child_by_name ( json , p , name , child , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p character ( kind = CK , len =* ), intent ( in ) :: name !! the name of a child of `p` type ( json_value ), pointer :: child !! pointer to the child logical ( LK ), intent ( out ), optional :: found !! true if the value was found !! (if not present, an exception !! will be thrown if it was not !! found. If present and not !! found, no exception will be !! thrown). integer ( IK ) :: i , n_children logical :: error nullify ( child ) if (. not . json % exception_thrown ) then if ( associated ( p )) then error = . true . ! will be false if it is found if ( p % var_type == json_object ) then n_children = json % count ( p ) child => p % children !start with first one do i = 1 , n_children if (. not . associated ( child )) then call json % throw_exception (& 'Error in json_value_get_child_by_name: ' // & 'Malformed JSON linked list' , found ) exit end if if ( allocated ( child % name )) then !name string matching routine: if ( json % name_equal ( child , name )) then error = . false . exit end if end if child => child % next end do end if if ( error ) then !did not find anything: call json % throw_exception (& 'Error in json_value_get_child_by_name: ' // & 'child variable ' // trim ( name ) // ' was not found.' , found ) nullify ( child ) end if else call json % throw_exception (& 'Error in json_value_get_child_by_name: ' // & 'pointer is not associated.' , found ) end if ! found output: if ( json % exception_thrown ) then if ( present ( found )) then call json % clear_exceptions () found = . false . end if else if ( present ( found )) found = . true . end if else if ( present ( found )) found = . false . end if end subroutine json_value_get_child_by_name !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 8/25/2017 ! ! Checks a JSON object for duplicate child names. ! ! It uses the specified settings for name matching (see [[name_strings_equal]]). ! !@note This will only check for one duplicate, ! it will return the first one that it finds. subroutine json_check_children_for_duplicate_keys ( json , p , has_duplicate , name , path ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! the object to search. If `p` is !! not a `json_object`, then `has_duplicate` !! will be false. logical ( LK ), intent ( out ) :: has_duplicate !! true if there is at least !! two children have duplicate !! `name` values. character ( kind = CK , len = :), allocatable , intent ( out ), optional :: name !! the duplicate name !! (unallocated if no !! duplicate was found) character ( kind = CK , len = :), allocatable , intent ( out ), optional :: path !! the full path to the !! duplicate name !! (unallocated if no !! duplicate was found) integer ( IK ) :: i !! counter integer ( IK ) :: j !! counter type ( json_value ), pointer :: child !! pointer to a child of `p` integer ( IK ) :: n_children !! number of children of `p` logical ( LK ) :: found !! flag for `get_child` type :: alloc_str !! so we can have an array of allocatable strings character ( kind = CK , len = :), allocatable :: str !! name string end type alloc_str type ( alloc_str ), dimension (:), allocatable :: names !! array of all the !! child name strings ! initialize: has_duplicate = . false . if (. not . json % exception_thrown ) then if ( associated ( p )) then if ( p % var_type == json_object ) then ! number of items to check: n_children = json % count ( p ) allocate ( names ( n_children )) ! first get a list of all the name keys: do i = 1 , n_children call json % get_child ( p , i , child , found ) ! get by index if (. not . found ) then call json % throw_exception (& 'Error in json_check_children_for_duplicate_keys: ' // & 'Malformed JSON linked list' ) exit end if if ( allocated ( child % name )) then names ( i )% str = child % name else call json % throw_exception (& 'Error in json_check_children_for_duplicate_keys: ' // & 'Object child name is not allocated' ) exit end if end do if (. not . json % exception_thrown ) then ! now check the list for duplicates: main : do i = 1 , n_children do j = 1 , i - 1 if ( json % name_strings_equal ( names ( i )% str , names ( j )% str )) then has_duplicate = . true . if ( present ( name )) then name = names ( i )% str end if if ( present ( path )) then call json % get_child ( p , names ( i )% str , child , found ) ! get by name if ( found ) then call json % get_path ( child , path , found ) if (. not . found ) then ! should never happen since we know it is there call json % throw_exception (& 'Error in json_check_children_for_duplicate_keys: ' // & 'Could not get path' ) end if else ! should never happen since we know it is there call json % throw_exception (& 'Error in json_check_children_for_duplicate_keys: ' // & 'Could not get child: ' // trim ( names ( i )% str )) end if end if exit main end if end do end do main end if ! cleanup do i = 1 , n_children if ( allocated ( names ( i )% str )) deallocate ( names ( i )% str ) end do if ( allocated ( names )) deallocate ( names ) end if end if end if end subroutine json_check_children_for_duplicate_keys !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 8/25/2017 ! ! Checks a JSON structure for duplicate child names. ! This one recursively traverses the entire structure ! (calling [[json_check_children_for_duplicate_keys]] ! recursively for each element). ! !@note This will only check for one duplicate, ! it will return the first one that it finds. subroutine json_check_all_for_duplicate_keys ( json , p , has_duplicate , name , path ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! the object to search. If `p` is !! not a `json_object`, then `has_duplicate` !! will be false. logical ( LK ), intent ( out ) :: has_duplicate !! true if there is at least !! one duplicate `name` key anywhere !! in the structure. character ( kind = CK , len = :), allocatable , intent ( out ), optional :: name !! the duplicate name !! (unallocated if no !! duplicates were found) character ( kind = CK , len = :), allocatable , intent ( out ), optional :: path !! the full path to the !! duplicate name !! (unallocated if no !! duplicate was found) has_duplicate = . false . if (. not . json % exception_thrown ) then call json % traverse ( p , duplicate_key_func ) end if contains subroutine duplicate_key_func ( json , p , finished ) !! Callback function to check each element !! for duplicate child names. implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p logical ( LK ), intent ( out ) :: finished #if defined __GFORTRAN__ ! this is a workaround for a gfortran bug (6 and 7), character ( kind = CK , len = :), allocatable :: tmp_name !! temp variable for `name` string character ( kind = CK , len = :), allocatable :: tmp_path !! temp variable for `path` string if ( present ( name ) . and . present ( path )) then call json % check_children_for_duplicate_keys ( p , has_duplicate , name = tmp_name , path = tmp_path ) else if ( present ( name ) . and . . not . present ( path )) then call json % check_children_for_duplicate_keys ( p , has_duplicate , name = tmp_name ) else if (. not . present ( name ) . and . present ( path )) then call json % check_children_for_duplicate_keys ( p , has_duplicate , path = tmp_path ) else call json % check_children_for_duplicate_keys ( p , has_duplicate ) end if if ( has_duplicate ) then if ( present ( name )) name = tmp_name if ( present ( path )) path = tmp_path end if #else call json % check_children_for_duplicate_keys ( p , has_duplicate , name , path ) #endif finished = has_duplicate . or . json % exception_thrown end subroutine duplicate_key_func end subroutine json_check_all_for_duplicate_keys !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_get_child_by_name]] where `name` is kind=CDK. subroutine wrap_json_value_get_child_by_name ( json , p , name , child , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p character ( kind = CDK , len =* ), intent ( in ) :: name type ( json_value ), pointer :: child logical ( LK ), intent ( out ), optional :: found call json % get ( p , to_unicode ( name ), child , found ) end subroutine wrap_json_value_get_child_by_name !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 2/12/2014 ! ! Print the [[json_value]] structure to an allocatable string. subroutine json_value_to_string ( json , p , str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p character ( kind = CK , len = :), intent ( out ), allocatable :: str !! prints structure to this string integer ( IK ) :: iloc !! used to keep track of size of str !! since it is being allocated in chunks. str = repeat ( space , print_str_chunk_size ) iloc = 0_IK call json % json_value_print ( p , iunit = unit2str , str = str , iloc = iloc , indent = 1_IK , colon = . true .) ! trim the string if necessary: if ( len ( str ) > iloc ) str = str ( 1 : iloc ) end subroutine json_value_to_string !***************************************************************************************** !***************************************************************************************** !> ! Print the [[json_value]] structure to the console (`output_unit`). ! !### Note ! * Just a wrapper for [[json_print_to_unit]]. subroutine json_print_to_console ( json , p ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p call json % print ( p , int ( output_unit , IK )) end subroutine json_print_to_console !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 6/20/2014 ! ! Print the [[json_value]] structure to a file. subroutine json_print_to_unit ( json , p , iunit ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p integer ( IK ), intent ( in ) :: iunit !! the file unit (the file must !! already have been opened, can't be -1). character ( kind = CK , len = :), allocatable :: dummy !! dummy for `str` argument !! to [[json_value_print]] integer ( IK ) :: idummy !! dummy for `iloc` argument !! to [[json_value_print]] if ( iunit /= unit2str ) then idummy = 0_IK call json % json_value_print ( p , iunit , str = dummy , iloc = idummy , indent = 1_IK , colon = . true .) else call json % throw_exception ( 'Error in json_print_to_unit: iunit must not be -1.' ) end if end subroutine json_print_to_unit !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/23/2014 ! ! Print the [[json_value]] structure to a file. subroutine json_print_to_filename ( json , p , filename ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p character ( kind = CDK , len =* ), intent ( in ) :: filename !! the filename to print to !! (should not already be open) integer ( IK ) :: iunit !! file unit for `open` statement integer ( IK ) :: istat !! `iostat` code for `open` statement open ( newunit = iunit , file = filename , status = 'REPLACE' , iostat = istat FILE_ENCODING ) if ( istat == 0 ) then call json % print ( p , iunit ) close ( iunit , iostat = istat ) else call json % throw_exception ( 'Error in json_print_to_filename: could not open file: ' // & trim ( filename )) end if end subroutine json_print_to_filename !***************************************************************************************** !***************************************************************************************** !> ! Print the JSON structure to a string or a file. ! !### Notes ! * This is an internal routine called by the various wrapper routines. ! * The reason the `str` argument is non-optional is because of a ! bug in v4.9 of the gfortran compiler. recursive subroutine json_value_print ( json , p , iunit , str , indent ,& need_comma , colon , is_array_element ,& is_compressed_vector , iloc ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p integer ( IK ), intent ( in ) :: iunit !! file unit to write to (the !! file is assumed to be open) integer ( IK ), intent ( in ), optional :: indent !! indention level logical ( LK ), intent ( in ), optional :: is_array_element !! if this is an array element logical ( LK ), intent ( in ), optional :: need_comma !! if it needs a comma after it logical ( LK ), intent ( in ), optional :: colon !! if the colon was just written character ( kind = CK , len = :), intent ( inout ), allocatable :: str !! if `iunit==unit2str` (-1) then !! the structure is printed to this !! string rather than a file. This mode !! is used by [[json_value_to_string]]. integer ( IK ), intent ( inout ) :: iloc !! current index in `str`. should be set to 0 initially. !! [only used when `str` is used.] logical ( LK ), intent ( in ), optional :: is_compressed_vector !! if True, this is an element !! from an array being printed !! on one line [default is False] character ( kind = CK , len = max_numeric_str_len ) :: tmp !! for value to string conversions character ( kind = CK , len = :), allocatable :: s_indent !! the string of spaces for !! indenting (see `tab` and `spaces`) character ( kind = CK , len = :), allocatable :: s !! the string appended to `str` type ( json_value ), pointer :: element !! for getting children integer ( IK ) :: tab !! number of `tabs` for indenting integer ( IK ) :: spaces !! number of spaces for indenting integer ( IK ) :: i !! counter integer ( IK ) :: count !! number of children logical ( LK ) :: print_comma !! if the comma will be printed after the value logical ( LK ) :: write_file !! if we are writing to a file logical ( LK ) :: write_string !! if we are writing to a string logical ( LK ) :: is_array !! if this is an element in an array logical ( LK ) :: is_vector !! if all elements of a vector !! are scalars of the same type character ( kind = CK , len = :), allocatable :: str_escaped !! escaped version of !! `name` or `str_value` if (. not . json % exception_thrown ) then if (. not . associated ( p )) then ! note: a null() pointer will trigger this error. ! However, if the pointer is undefined, then this will ! crash (if this wasn't here it would crash below when ! we try to access the contents) call json % throw_exception ( 'Error in json_value_print: ' // & 'the pointer is not associated' ) return end if if ( present ( is_compressed_vector )) then is_vector = is_compressed_vector else is_vector = . false . end if !whether to write a string or a file (one or the other): write_string = ( iunit == unit2str ) write_file = . not . write_string !if the comma will be printed after the value ! [comma not printed for the last elements] if ( present ( need_comma )) then print_comma = need_comma else print_comma = . false . end if !number of \"tabs\" to indent: if ( present ( indent ) . and . . not . json % no_whitespace ) then tab = indent else tab = 0 end if !convert to number of spaces: spaces = tab * json % spaces_per_tab !if this is an element in an array: if ( present ( is_array_element )) then is_array = is_array_element else is_array = . false . end if !if the colon was the last thing written if ( present ( colon )) then s_indent = CK_ '' else s_indent = repeat ( space , spaces ) end if select case ( p % var_type ) case ( json_object ) count = json % count ( p ) if ( count == 0 ) then !special case for empty object s = s_indent // start_object // end_object call write_it ( comma = print_comma ) else s = s_indent // start_object call write_it () !if an object is in an array, there is an extra tab: if ( is_array ) then if ( . not . json % no_whitespace ) tab = tab + 1 spaces = tab * json % spaces_per_tab end if nullify ( element ) element => p % children do i = 1 , count if (. not . associated ( element )) then call json % throw_exception ( 'Error in json_value_print: ' // & 'Malformed JSON linked list' ) return end if ! print the name if ( allocated ( element % name )) then call escape_string ( element % name , str_escaped , json % escape_solidus ) if ( json % no_whitespace ) then !compact printing - no extra space s = repeat ( space , spaces ) // quotation_mark // & str_escaped // quotation_mark // colon_char call write_it ( advance = . false .) else s = repeat ( space , spaces ) // quotation_mark // & str_escaped // quotation_mark // colon_char // space call write_it ( advance = . false .) end if else call json % throw_exception ( 'Error in json_value_print:' // & ' element%name not allocated' ) nullify ( element ) return end if ! recursive print of the element call json % json_value_print ( element , iunit = iunit , indent = tab + 1_IK , & need_comma = i < count , colon = . true ., str = str , iloc = iloc ) if ( json % exception_thrown ) return ! get the next child the list: element => element % next end do ! [one fewer tab if it isn't an array element] if (. not . is_array ) then s = repeat ( space , max ( 0_IK , spaces - json % spaces_per_tab )) // end_object else s = s_indent // end_object end if call write_it ( comma = print_comma ) nullify ( element ) end if case ( json_array ) count = json % count ( p ) if ( count == 0 ) then ! special case for empty array s = s_indent // start_array // end_array call write_it ( comma = print_comma ) else ! if every child is the same type & a scalar: is_vector = json % is_vector ( p ) if ( json % failed ()) return s = s_indent // start_array call write_it ( advance = (. not . is_vector ) ) !if an array is in an array, there is an extra tab: if ( is_array ) then if ( . not . json % no_whitespace ) tab = tab + 1 spaces = tab * json % spaces_per_tab end if nullify ( element ) element => p % children do i = 1 , count if (. not . associated ( element )) then call json % throw_exception ( 'Error in json_value_print: ' // & 'Malformed JSON linked list' ) return end if ! recursive print of the element if ( is_vector ) then call json % json_value_print ( element , iunit = iunit , indent = 0_IK ,& need_comma = i < count , is_array_element = . false ., & str = str , iloc = iloc ,& is_compressed_vector = . true .) else call json % json_value_print ( element , iunit = iunit , indent = tab ,& need_comma = i < count , is_array_element = . true ., & str = str , iloc = iloc ) end if if ( json % exception_thrown ) return ! get the next child the list: element => element % next end do !indent the closing array character: if ( is_vector ) then s = end_array call write_it ( comma = print_comma ) else s = repeat ( space , max ( 0_IK , spaces - json % spaces_per_tab )) // end_array call write_it ( comma = print_comma ) end if nullify ( element ) end if case ( json_null ) s = s_indent // null_str call write_it ( comma = print_comma , & advance = (. not . is_vector ),& space_after_comma = is_vector ) case ( json_string ) if ( allocated ( p % str_value )) then ! have to escape the string for printing: call escape_string ( p % str_value , str_escaped , json % escape_solidus ) s = s_indent // quotation_mark // str_escaped // quotation_mark call write_it ( comma = print_comma , & advance = (. not . is_vector ),& space_after_comma = is_vector ) else call json % throw_exception ( 'Error in json_value_print:' // & ' p%value_string not allocated' ) return end if case ( json_logical ) if ( p % log_value ) then s = s_indent // true_str call write_it ( comma = print_comma , & advance = (. not . is_vector ),& space_after_comma = is_vector ) else s = s_indent // false_str call write_it ( comma = print_comma , & advance = (. not . is_vector ),& space_after_comma = is_vector ) end if case ( json_integer ) call integer_to_string ( p % int_value , int_fmt , tmp ) s = s_indent // trim ( tmp ) call write_it ( comma = print_comma , & advance = (. not . is_vector ),& space_after_comma = is_vector ) case ( json_real ) if ( allocated ( json % real_fmt )) then call real_to_string ( p % dbl_value , json % real_fmt , json % compact_real , json % non_normals_to_null , tmp ) else !use the default format (user has not called initialize() or specified one): call real_to_string ( p % dbl_value , default_real_fmt , json % compact_real , json % non_normals_to_null , tmp ) end if s = s_indent // trim ( tmp ) call write_it ( comma = print_comma , & advance = (. not . is_vector ),& space_after_comma = is_vector ) case default call integer_to_string ( p % var_type , int_fmt , tmp ) call json % throw_exception ( 'Error in json_value_print: ' // & 'unknown data type: ' // trim ( tmp )) end select end if contains subroutine write_it ( advance , comma , space_after_comma ) !! write the string `s` to the file (or the output string) implicit none logical ( LK ), intent ( in ), optional :: advance !! to add line break or not logical ( LK ), intent ( in ), optional :: comma !! print comma after the string logical ( LK ), intent ( in ), optional :: space_after_comma !! print a space after the comma logical ( LK ) :: add_comma !! if a delimiter is to be added after string logical ( LK ) :: add_line_break !! if a line break is to be added after string logical ( LK ) :: add_space !! if a space is to be added after the comma integer ( IK ) :: n !! length of actual string `s` appended to `str` integer ( IK ) :: room_left !! number of characters left in `str` integer ( IK ) :: n_chunks_to_add !! number of chunks to add to `str` for appending `s` if ( present ( comma )) then add_comma = comma else add_comma = . false . !default is not to add comma end if if ( json % no_whitespace ) then add_space = . false . else if ( present ( space_after_comma )) then add_space = space_after_comma else add_space = . false . !default is not to add space end if end if if ( present ( advance )) then if ( json % no_whitespace ) then ! overrides input value: add_line_break = . false . else add_line_break = advance end if else add_line_break = . not . json % no_whitespace ! default is to advance if ! we are printing whitespace end if ! string to print: if ( add_comma ) then if ( add_space ) then s = s // delimiter // space else s = s // delimiter end if end if if ( write_file ) then if ( add_line_break ) then write ( iunit , fmt = '(A)' ) s else write ( iunit , fmt = '(A)' , advance = 'NO' ) s end if else !write string if ( add_line_break ) s = s // newline n = len ( s ) room_left = len ( str ) - iloc if ( room_left < n ) then ! need to add another chunk to fit this string: n_chunks_to_add = max ( 1_IK , ceiling ( real ( len ( s ) - room_left , RK ) / real ( chunk_size , RK ), IK ) ) str = str // repeat ( space , print_str_chunk_size * n_chunks_to_add ) end if ! append s to str: str ( iloc + 1 : iloc + n ) = s iloc = iloc + n end if end subroutine write_it end subroutine json_value_print !***************************************************************************************** !***************************************************************************************** !> ! Returns true if all the children are the same type (and a scalar). ! Note that integers and reals are considered the same type for this purpose. ! This routine is used for the `compress_vectors` option. function json_is_vector ( json , p ) result ( is_vector ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p logical ( LK ) :: is_vector !! if all elements of a vector !! are scalars of the same type integer ( IK ) :: var_type_prev !! for getting the variable type of children integer ( IK ) :: var_type !! for getting the variable type of children type ( json_value ), pointer :: element !! for getting children integer ( IK ) :: i !! counter integer ( IK ) :: count !! number of children integer ( IK ), parameter :: json_invalid = - 1_IK !! to initialize the flag. an invalid value integer ( IK ), parameter :: json_numeric = - 2_IK !! indicates `json_integer` or `json_real` if ( json % compress_vectors ) then ! check to see if every child is the same type, ! and a scalar: is_vector = . true . var_type_prev = json_invalid count = json % count ( p ) element => p % children do i = 1_IK , count if (. not . associated ( element )) then call json % throw_exception ( 'Error in json_is_vector: ' // & 'Malformed JSON linked list' ) return end if ! check variable type of all the children. ! They must all be the same, and a scalar. call json % info ( element , var_type = var_type ) ! special check for numeric values: if ( var_type == json_integer . or . var_type == json_real ) var_type = json_numeric if ( var_type == json_object . or . & var_type == json_array . or . & ( i > 1_IK . and . var_type /= var_type_prev )) then is_vector = . false . exit end if var_type_prev = var_type ! get the next child the list: element => element % next end do else is_vector = . false . end if end function json_is_vector !***************************************************************************************** !***************************************************************************************** !> ! Returns true if the `path` is present in the `p` JSON structure. ! !@note Just a wrapper for [[json_get_by_path]], so it uses the ! specified `path_mode` and other settings. function json_valid_path ( json , p , path ) result ( found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! a JSON linked list character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable logical ( LK ) :: found !! true if it was found type ( json_value ), pointer :: tmp !! pointer to the variable specified by `path` call json % get ( p , path , tmp , found ) end function json_valid_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_valid_path]] where \"path\" is kind=CDK. function wrap_json_valid_path ( json , p , path ) result ( found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! a JSON linked list character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable logical ( LK ) :: found !! true if it was found found = json % valid_path ( p , to_unicode ( path )) end function wrap_json_valid_path !***************************************************************************************** !***************************************************************************************** !> ! Returns the [[json_value]] pointer given the path string. ! ! It uses one of three methods: ! ! * The original JSON-Fortran defaults ! * [RFC 6901](https://tools.ietf.org/html/rfc6901) ! * [JSONPath](http://goessner.net/articles/JsonPath/) \"bracket-notation\" subroutine json_get_by_path ( json , me , path , p , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me !! a JSON linked list character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable type ( json_value ), pointer , intent ( out ) :: p !! pointer to the variable !! specified by `path` logical ( LK ), intent ( out ), optional :: found !! true if it was found character ( kind = CK , len = max_integer_str_len ), allocatable :: path_mode_str !! string version !! of `json%path_mode` nullify ( p ) if (. not . json % exception_thrown ) then select case ( json % path_mode ) case ( 1_IK ) call json % json_get_by_path_default ( me , path , p , found ) case ( 2_IK ) call json % json_get_by_path_rfc6901 ( me , path , p , found ) case ( 3_IK ) call json % json_get_by_path_jsonpath_bracket ( me , path , p , found ) case default call integer_to_string ( json % path_mode , int_fmt , path_mode_str ) call json % throw_exception ( 'Error in json_get_by_path: Unsupported path_mode: ' // & trim ( path_mode_str )) if ( present ( found )) found = . false . end select if ( present ( found )) then if (. not . found ) call json % clear_exceptions () end if else if ( present ( found )) found = . false . end if end subroutine json_get_by_path !***************************************************************************************** !***************************************************************************************** !> ! Returns the [[json_value]] pointer given the path string, ! If necessary, by creating the variables as needed. ! ! By default, the leaf node and any empty array elements ! are created as `json_null` values. ! ! It only works for `path_mode=1` or `path_mode=3`. ! An error will be thrown for `path_mode=2` (RFC 6901). ! !### See also ! * [[json_get_by_path]] subroutine json_create_by_path ( json , me , path , p , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me !! a JSON linked list character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable type ( json_value ), pointer , intent ( out ), optional :: p !! pointer to the variable !! specify by `path` logical ( LK ), intent ( out ), optional :: found !! true if there were no errors !! (variable found or created) logical ( LK ), intent ( out ), optional :: was_created !! true if it was actually created !! (as opposed to already being there) type ( json_value ), pointer :: tmp character ( kind = CK , len = max_integer_str_len ) :: path_mode_str !! string version !! of `json%path_mode` if ( present ( p )) nullify ( p ) if (. not . json % exception_thrown ) then select case ( json % path_mode ) case ( 1_IK ) call json % json_get_by_path_default ( me , path , tmp , found ,& create_it = . true .,& was_created = was_created ) if ( present ( p )) p => tmp case ( 3_IK ) call json % json_get_by_path_jsonpath_bracket ( me , path , tmp , found ,& create_it = . true .,& was_created = was_created ) if ( present ( p )) p => tmp case default if ( json % path_mode == 2_IK ) then ! the problem here is there isn't really a way to disambiguate ! the array elements, so '/a/0' could be 'a(1)' or 'a.0'. call json % throw_exception ( 'Error in json_create_by_path: ' // & 'Create by path not supported in RFC 6901 path mode.' ) else call integer_to_string ( json % path_mode , int_fmt , path_mode_str ) call json % throw_exception ( 'Error in json_create_by_path: Unsupported path_mode: ' // & trim ( path_mode_str )) end if if ( present ( found )) then call json % clear_exceptions () found = . false . end if if ( present ( was_created )) was_created = . false . end select else if ( present ( was_created )) was_created = . false . if ( present ( found )) found = . false . end if end subroutine json_create_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_create_by_path]] where \"path\" is kind=CDK. subroutine wrap_json_create_by_path ( json , me , path , p , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me !! a JSON linked list character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable type ( json_value ), pointer , intent ( out ), optional :: p !! pointer to the variable !! specify by `path` logical ( LK ), intent ( out ), optional :: found !! true if there were no errors !! (variable found or created) logical ( LK ), intent ( out ), optional :: was_created !! true if it was actually created !! (as opposed to already being there) call json % create ( me , to_unicode ( path ), p , found , was_created ) end subroutine wrap_json_create_by_path !***************************************************************************************** !***************************************************************************************** !> ! Rename a [[json_value]], given the path. ! !@note this is a wrapper for [[json_value_rename]]. subroutine json_rename_by_path ( json , me , path , name , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable to rename character ( kind = CK , len =* ), intent ( in ) :: name !! the new name logical ( LK ), intent ( out ), optional :: found !! if there were no errors type ( json_value ), pointer :: p if ( json % exception_thrown ) then if ( present ( found ) ) found = . false . return end if nullify ( p ) call json % get ( me = me , path = path , p = p ) if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_rename_by_path:' // & ' Unable to resolve path: ' // trim ( path ), found ) else call json % rename ( p , name ) nullify ( p ) end if if ( json % exception_thrown ) then if ( present ( found )) then found = . false . call json % clear_exceptions () end if else if ( present ( found )) found = . true . end if end subroutine json_rename_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_rename_by_path]], where \"path\" and \"name\" are kind=CDK subroutine wrap_json_rename_by_path ( json , me , path , name , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path character ( kind = CDK , len =* ), intent ( in ) :: name logical ( LK ), intent ( out ), optional :: found call json % rename ( me , to_unicode ( path ), to_unicode ( name ), found ) end subroutine wrap_json_rename_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_rename_by_path]], where \"name\" is kind=CDK subroutine json_rename_by_path_name_ascii ( json , me , path , name , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path character ( kind = CDK , len =* ), intent ( in ) :: name logical ( LK ), intent ( out ), optional :: found call json % rename ( me , path , to_unicode ( name ), found ) end subroutine json_rename_by_path_name_ascii !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_rename_by_path]], where \"path\" is kind=CDK subroutine json_rename_by_path_path_ascii ( json , me , path , name , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path character ( kind = CK , len =* ), intent ( in ) :: name logical ( LK ), intent ( out ), optional :: found call json % rename ( me , to_unicode ( path ), name , found ) end subroutine json_rename_by_path_path_ascii !***************************************************************************************** !***************************************************************************************** !> ! Returns the [[json_value]] pointer given the path string. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: dat,p ! logical :: found ! !... ! call json%initialize(path_mode=1) ! this is the default so not strictly necessary. ! call json%get(dat,'data(2).version',p,found) !```` ! !### Notes ! The syntax used here is a subset of the ! [http://goessner.net/articles/JsonPath/](JSONPath) \"dot–notation\". ! The following special characters are used to denote paths: ! ! * `$` - root ! * `@` - this ! * `.` - child object member (note this can be changed using `json%path_separator`) ! * `[]` or `()` - child array element (note that indices are 1-based) ! ! Thus, if any of these characters are present in the name key, ! this routine cannot be used to get the value. ! In that case, the `get_child` methods would need to be used. ! Or, the alternate [[json_get_by_path_rfc6901]] could be used. ! !### See also ! * [[json_get_by_path_rfc6901]] ! * [[json_get_by_path_jsonpath_bracket]] ! !@note The syntax is inherited from FSON, and is basically a subset ! of JSONPath \"dot-notation\", with the additional allowance of ! () for array elements. ! !@note JSON `null` values are used here for unknown variables when `create_it` is True. ! So, it is possible that an existing null variable can be converted to another ! type (object or array) if a child is specified in the path. Doing it this way ! to avoid having to use another type (say `json_unknown`) that would have to be ! converted to null once all the variables have been created (user would have ! had to do this). ! !@warning See (**) in code. I think we need to protect for memory leaks when ! changing the type of a variable that already exists. subroutine json_get_by_path_default ( json , me , path , p , found , create_it , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me !! a JSON linked list character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable type ( json_value ), pointer , intent ( out ) :: p !! pointer to the variable !! specify by `path` logical ( LK ), intent ( out ), optional :: found !! true if it was found logical ( LK ), intent ( in ), optional :: create_it !! if a variable is not present !! in the path, then it is created. !! the leaf node is returned as !! a `null` json type and can be !! changed by the caller. logical ( LK ), intent ( out ), optional :: was_created !! if `create_it` is true, this !! will be true if the variable !! was actually created. Otherwise !! it will be false. integer ( IK ) :: i !! counter of characters in `path` integer ( IK ) :: length !! significant length of `path` integer ( IK ) :: child_i !! index for getting children character ( kind = CK , len = 1 ) :: c !! a character in the `path` logical ( LK ) :: array !! flag when searching for array index in `path` type ( json_value ), pointer :: tmp !! temp variables for getting child objects logical ( LK ) :: child_found !! if the child value was found logical ( LK ) :: create !! if the object is to be created logical ( LK ) :: created !! if `create` is true, then this will be !! true if the leaf object had to be created integer ( IK ) :: j !! counter of children when creating object logical ( LK ) :: status_ok !! integer to string conversion flag nullify ( p ) if (. not . json % exception_thrown ) then if ( present ( create_it )) then create = create_it else create = . false . end if ! default to assuming relative to me p => me child_i = 1 array = . false . created = . false . !keep trailing space or not: if ( json % trailing_spaces_significant ) then length = len ( path ) else length = len_trim ( path ) end if do i = 1 , length c = path ( i : i ) select case ( c ) case ( root ) ! root do while ( associated ( p % parent )) p => p % parent end do child_i = i + 1 if ( create ) created = . false . ! should always exist case ( this ) ! this p => me child_i = i + 1 if ( create ) created = . false . ! should always exist case ( start_array , start_array_alt ) ! start looking for the array element index array = . true . ! get child member from p if ( child_i < i ) then nullify ( tmp ) if ( create ) then ! Example: ! 'aaa.bbb(1)' ! -> and aaa is a null, need to make it an object ! ! What about the case: aaa.bbb(1)(3) ? ! Is that already handled? if ( p % var_type == json_null ) then ! (**) ! if p was also created, then we need to ! convert it into an object here: p % var_type = json_object end if ! don't want to throw exceptions in this case call json % get_child ( p , path ( child_i : i - 1 ), tmp , child_found ) if (. not . child_found ) then ! have to create this child ! [make it an array] call json_value_create ( tmp ) call json % to_array ( tmp , path ( child_i : i - 1 )) call json % add ( p , tmp ) created = . true . else created = . false . end if else ! call the normal way call json % get_child ( p , path ( child_i : i - 1 ), tmp ) end if p => tmp else child_i = i + 1 ! say, '@(' cycle end if if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_get_by_path_default:' // & ' Error getting array element' , found ) exit end if child_i = i + 1 case ( end_array , end_array_alt ) if (. not . array ) then call json % throw_exception ( 'Error in json_get_by_path_default:' // & ' Unexpected ' // c , found ) exit end if array = . false . call string_to_integer ( path ( child_i : i - 1 ), child_i , status_ok ) if (. not . status_ok ) then call json % throw_exception ( 'Error in json_get_by_path_default:' // & ' Could not convert array index to integer: ' // & trim ( path ( child_i : i - 1 )), found ) exit end if nullify ( tmp ) if ( create ) then ! don't want to throw exceptions in this case call json % get_child ( p , child_i , tmp , child_found ) if (. not . child_found ) then if ( p % var_type == json_null ) then ! (**) ! if p was also created, then we need to ! convert it into an array here: p % var_type = json_array end if ! have to create this element ! [make it a null] ! (and any missing ones before it) do j = 1 , child_i nullify ( tmp ) call json % get_child ( p , j , tmp , child_found ) if (. not . child_found ) then call json_value_create ( tmp ) call json % to_null ( tmp ) ! array element doesn't need a name call json % add ( p , tmp ) if ( j == child_i ) created = . true . else if ( j == child_i ) created = . false . end if end do else created = . false . end if else ! call the normal way: call json % get_child ( p , child_i , tmp ) end if p => tmp child_i = i + 1 case default if ( c == json % path_separator ) then ! get child member from p if ( child_i < i ) then nullify ( tmp ) if ( create ) then if ( p % var_type == json_null ) then ! (**) ! if p was also created, then we need to ! convert it into an object here: p % var_type = json_object end if ! don't want to throw exceptions in this case call json % get_child ( p , path ( child_i : i - 1 ), tmp , child_found ) if (. not . child_found ) then ! have to create this child ! [make it an object] call json_value_create ( tmp ) call json % to_object ( tmp , path ( child_i : i - 1 )) call json % add ( p , tmp ) created = . true . else created = . false . end if else ! call the normal way call json % get_child ( p , path ( child_i : i - 1 ), tmp ) end if p => tmp else child_i = i + 1 ! say '$.', '@.', or ').' cycle end if if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_get_by_path_default:' // & ' Error getting child member.' , found ) exit end if child_i = i + 1 end if end select end do if ( json % exception_thrown ) then if ( present ( found )) then nullify ( p ) ! just in case found = . false . call json % clear_exceptions () end if else ! grab the last child if present in the path if ( child_i <= length ) then nullify ( tmp ) if ( create ) then if ( p % var_type == json_null ) then ! (**) ! if p was also created, then we need to ! convert it into an object here: p % var_type = json_object end if call json % get_child ( p , path ( child_i : i - 1 ), tmp , child_found ) if (. not . child_found ) then ! have to create this child ! (make it a null since it is the leaf) call json_value_create ( tmp ) call json % to_null ( tmp , path ( child_i : i - 1 )) call json % add ( p , tmp ) created = . true . else created = . false . end if else ! call the normal way call json % get_child ( p , path ( child_i : i - 1 ), tmp ) end if p => tmp else ! we already have p if ( create . and . created ) then ! make leaf p a null, but only ! if it wasn't there call json % to_null ( p ) end if end if ! error checking if ( associated ( p )) then if ( present ( found )) found = . true . !everything seems to be ok else call json % throw_exception ( 'Error in json_get_by_path_default:' // & ' variable not found: ' // trim ( path ), found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if end if end if ! if it had to be created: if ( present ( was_created )) was_created = created else if ( present ( found )) found = . false . if ( present ( was_created )) was_created = . false . end if end subroutine json_get_by_path_default !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 2/4/2017 ! ! Returns the [[json_value]] pointer given the path string, ! using the \"JSON Pointer\" path specification defined by RFC 6901. ! ! Note that trailing whitespace significance and case sensitivity ! are user-specified. To fully conform to the RFC 6901 standard, ! should probably set (via `initialize`): ! ! * `case_sensitive_keys = .true.` [this is the default setting] ! * `trailing_spaces_significant = .true.` [this is *not* the default setting] ! * `allow_duplicate_keys = .false.` [this is *not* the default setting] ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: dat,p ! logical :: found ! !... ! call json%initialize(path_mode=2) ! call json%get(dat,'/data/2/version',p,found) !```` ! !### See also ! * [[json_get_by_path_default]] ! * [[json_get_by_path_jsonpath_bracket]] ! !### Reference ! * [JavaScript Object Notation (JSON) Pointer](https://tools.ietf.org/html/rfc6901) ! !@note Not doing anything special about the `-` character to index an array. ! This is considered a normal error. ! !@note Unlike in the default path mode, the array indices here are 0-based ! (in accordance with the RFC 6901 standard) ! !@warning Not checking if the member that is referenced is unique. ! (according to the standard, evaluation of non-unique references ! should fail). Like [[json_get_by_path_default]], this one will just return ! the first instance it encounters. This might be changed in the future. ! !@warning I think the standard indicates that the input paths should use ! escaped JSON strings (currently we are assuming they are not escaped). subroutine json_get_by_path_rfc6901 ( json , me , path , p , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me !! a JSON linked list character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable !! (an RFC 6901 \"JSON Pointer\") type ( json_value ), pointer , intent ( out ) :: p !! pointer to the variable !! specify by `path` logical ( LK ), intent ( out ), optional :: found !! true if it was found character ( kind = CK , len = :), allocatable :: token !! a token in the path (between the `/` characters) integer ( IK ) :: i !! counter integer ( IK ) :: islash_curr !! location of current '/' character in the path integer ( IK ) :: islash_next !! location of next '/' character in the path integer ( IK ) :: ilen !! length of `path` string type ( json_value ), pointer :: tmp !! temporary variable for traversing the structure integer ( IK ) :: ival !! integer array index value (0-based) logical ( LK ) :: status_ok !! error flag logical ( LK ) :: child_found !! for getting child values nullify ( p ) if (. not . json % exception_thrown ) then p => me ! initialize if ( path /= CK_ '' ) then if ( path ( 1 : 1 ) == slash ) then ! the first character must be a slash islash_curr = 1 ! initialize current slash index !keep trailing space or not: if ( json % trailing_spaces_significant ) then ilen = len ( path ) else ilen = len_trim ( path ) end if do ! get the next token by finding the slashes ! ! 1 2 3 ! /abc/d/efg if ( islash_curr == ilen ) then !the last token is an empty string token = CK_ '' islash_next = 0 ! will signal to stop else ! . ! '/123/567/' ! index in remaining string: islash_next = index ( path ( islash_curr + 1 : ilen ), slash ) if ( islash_next <= 0 ) then !last token: token = path ( islash_curr + 1 : ilen ) else ! convert to actual index in path: islash_next = islash_curr + index ( path ( islash_curr + 1 : ilen ), slash ) if ( islash_next > islash_curr + 1 ) then token = path ( islash_curr + 1 : islash_next - 1 ) else !empty token: token = CK_ '' end if end if end if ! remove trailing spaces in the token here if necessary: if (. not . json % trailing_spaces_significant ) & token = trim ( token ) ! decode the token: token = decode_rfc6901 ( token ) ! now, parse the token: ! first see if there is a child with this name call json % get_child ( p , token , tmp , child_found ) if ( child_found ) then ! it was found p => tmp else ! No key with this name. ! Is it an integer? If so, ! it might be an array index. status_ok = ( len ( token ) > 0 ) if ( status_ok ) then do i = 1 , len ( token ) ! It must only contain (0..9) characters ! (it must be unsigned) if ( scan ( token ( i : i ), CK_ '0123456789' ) < 1 ) then status_ok = . false . exit end if end do if ( status_ok ) then if ( len ( token ) > 1 . and . token ( 1 : 1 ) == CK_ '0' ) then ! leading zeros not allowed for some reason status_ok = . false . end if end if if ( status_ok ) then ! if we make it this far, it should be ! convertible to an integer, so do it. call string_to_integer ( token , ival , status_ok ) end if end if if ( status_ok ) then ! ival is an array index (0-based) call json % get_child ( p , ival + 1_IK , tmp , child_found ) if ( child_found ) then p => tmp else ! not found status_ok = . false . end if end if if (. not . status_ok ) then call json % throw_exception ( 'Error in json_get_by_path_rfc6901: ' // & 'invalid path specification: ' // trim ( path ), found ) exit end if end if if ( islash_next <= 0 ) exit ! finished ! set up for next token: islash_curr = islash_next end do else call json % throw_exception ( 'Error in json_get_by_path_rfc6901: ' // & 'invalid path specification: ' // trim ( path ), found ) end if end if if ( json % exception_thrown ) then nullify ( p ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if else if ( present ( found )) found = . true . end if else if ( present ( found )) found = . false . end if end subroutine json_get_by_path_rfc6901 !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 9/2/2017 ! ! Returns the [[json_value]] pointer given the path string, ! using the \"JSON Pointer\" path specification defined by the ! JSONPath \"bracket-notation\". ! ! The first character `$` is optional, and signifies the root ! of the structure. If it is not present, then the first key ! is taken to be in the `me` object. ! ! Single or real quotes may be used. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: dat,p ! logical :: found ! !... ! call json%initialize(path_mode=3) ! call json%get(dat,\"$['store']['book'][1]['title']\",p,found) !```` ! !### See also ! * [[json_get_by_path_default]] ! * [[json_get_by_path_rfc6901]] ! !### Reference ! * [JSONPath](http://goessner.net/articles/JsonPath/) ! !@note Uses 1-based array indices (same as [[json_get_by_path_default]], ! but unlike [[json_get_by_path_rfc6901]] which uses 0-based indices). ! !@note When `create_it=True`, if the variable already exists and is a type ! that is not compatible with the usage in the `path`, then it is ! destroyed and replaced with what is specified in the `path`. Note that ! this applies the all variables in the path as it is created. Currently, ! this behavior is different from [[json_get_by_path_default]]. ! !@note JSON `null` values are used here for unknown variables ! when `create_it` is True. ! !@warning Note that if using single quotes, this routine cannot parse ! a key containing `']`. If using real quotes, this routine ! cannot parse a key containing `\"]`. If the key contains both ! `']` and `\"]`, there is no way to parse it using this routine. subroutine json_get_by_path_jsonpath_bracket ( json , me , path , p , found , create_it , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me !! a JSON linked list character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable !! (using JSONPath !! \"bracket-notation\") type ( json_value ), pointer , intent ( out ) :: p !! pointer to the variable !! specify by `path` logical ( LK ), intent ( out ), optional :: found !! true if it was found logical ( LK ), intent ( in ), optional :: create_it !! if a variable is not present !! in the path, then it is created. !! the leaf node is returned as !! a `null` json type and can be !! changed by the caller. logical ( LK ), intent ( out ), optional :: was_created !! if `create_it` is true, this !! will be true if the variable !! was actually created. Otherwise !! it will be false. character ( kind = CK , len = :), allocatable :: token !! a token in the path !! (between the `['']` or !! `[]` characters) integer ( IK ) :: istart !! location of current '[' !! character in the path integer ( IK ) :: iend !! location of current ']' !! character in the path integer ( IK ) :: ival !! integer array index value logical ( LK ) :: status_ok !! error flag type ( json_value ), pointer :: tmp !! temporary variable for !! traversing the structure integer ( IK ) :: i !! counter integer ( IK ) :: ilen !! length of `path` string logical ( LK ) :: real_quotes !! if the keys are enclosed in `\"`, !! rather than `'` tokens. logical ( LK ) :: create !! if the object is to be created logical ( LK ) :: created !! if `create` is true, then this will be !! true if the leaf object had to be created integer ( IK ) :: j !! counter of children when creating object !TODO instead of reallocating `token` all the time, just ! allocate a big size and keep track of the length, ! then just reallocate only if necessary. ! [would probably be inefficient if there was a very large token, ! and then a bunch of small ones... but for similarly-sized ones ! it should be way more efficient since it would avoid most ! reallocations.] nullify ( p ) if (. not . json % exception_thrown ) then if ( present ( create_it )) then create = create_it else create = . false . end if p => me ! initialize created = . false . if ( path == CK_ '' ) then call json % throw_exception ( 'Error in json_get_by_path_jsonpath_bracket: ' // & 'invalid path specification: ' // trim ( path ), found ) else if ( path ( 1 : 1 ) == root . or . path ( 1 : 1 ) == start_array ) then ! the first character must be ! a `$` (root) or a `[` ! (element of `me`) if ( path ( 1 : 1 ) == root ) then ! go to the root do while ( associated ( p % parent )) p => p % parent end do if ( create ) created = . false . ! should always exist end if !path length (don't need trailing spaces:) ilen = len_trim ( path ) if ( ilen > 1 ) then istart = 2 ! initialize first '[' location index do if ( istart > ilen ) exit ! finished ! must be the next start bracket: if ( path ( istart : istart ) /= start_array ) then call json % throw_exception (& 'Error in json_get_by_path_jsonpath_bracket: ' // & 'expecting \"[\", found: \"' // trim ( path ( istart : istart )) // & '\" in path: ' // trim ( path ), found ) exit end if ! get the next token by checking: ! ! * [''] -- is the token after istart a quote? ! if so, then search for the next `']` ! ! * [1] -- if not, then maybe it is a number, ! so search for the next `]` ! verify length of remaining string if ( istart + 2 <= ilen ) then real_quotes = path ( istart + 1 : istart + 1 ) == quotation_mark ! [\" if ( real_quotes . or . path ( istart + 1 : istart + 1 ) == single_quote ) then ! [' ! it might be a key value: ['abc'] istart = istart + 1 ! move counter to ' index if ( real_quotes ) then iend = istart + index ( path ( istart + 1 : ilen ),& quotation_mark // end_array ) ! \"] else iend = istart + index ( path ( istart + 1 : ilen ),& single_quote // end_array ) ! '] end if if ( iend > istart ) then ! istart iend ! | | ! ['p']['abcdefg'] if ( iend > istart + 1 ) then token = path ( istart + 1 : iend - 1 ) else token = CK_ '' ! blank string end if ! remove trailing spaces in ! the token here if necessary: if (. not . json % trailing_spaces_significant ) & token = trim ( token ) if ( create ) then ! have a token, create it if necessary ! we need to convert it into an object here ! (e.g., if p was also just created) ! and destroy its data to prevent a memory leak call json % convert ( p , json_object ) ! don't want to throw exceptions in this case call json % get_child ( p , token , tmp , status_ok ) if (. not . status_ok ) then ! have to create this child ! [make it a null since we don't ! know what it is yet] call json_value_create ( tmp ) call json % to_null ( tmp , token ) call json % add ( p , tmp ) status_ok = . true . created = . true . else ! it was already there. created = . false . end if else ! have a token, see if it is valid: call json % get_child ( p , token , tmp , status_ok ) end if if ( status_ok ) then ! it was found p => tmp else call json % throw_exception (& 'Error in json_get_by_path_jsonpath_bracket: ' // & 'invalid token found: \"' // token // & '\" in path: ' // trim ( path ), found ) exit end if iend = iend + 1 ! move counter to ] index else call json % throw_exception (& 'Error in json_get_by_path_jsonpath_bracket: ' // & 'invalid path: ' // trim ( path ), found ) exit end if else ! it might be an integer value: [123] iend = istart + index ( path ( istart + 1 : ilen ), end_array ) ! ] if ( iend > istart + 1 ) then ! this should be an integer: token = path ( istart + 1 : iend - 1 ) ! verify that there are no spaces or other ! characters in the string: status_ok = . true . do i = 1 , len ( token ) ! It must only contain (0..9) characters ! (it must be unsigned) if ( scan ( token ( i : i ), CK_ '0123456789' ) < 1 ) then status_ok = . false . exit end if end do if ( status_ok ) then call string_to_integer ( token , ival , status_ok ) if ( status_ok ) status_ok = ival > 0 ! assuming 1-based array indices end if if ( status_ok ) then ! have a valid integer to use as an index ! see if this element is really there: call json % get_child ( p , ival , tmp , status_ok ) if ( create . and . . not . status_ok ) then ! have to create it: if (. not .( p % var_type == json_object . or . p % var_type == json_array )) then ! we need to convert it into an array here ! (e.g., if p was also just created) ! and destroy its data to prevent a memory leak call json % convert ( p , json_array ) end if ! have to create this element ! [make it a null] ! (and any missing ones before it) do j = 1 , ival nullify ( tmp ) call json % get_child ( p , j , tmp , status_ok ) if (. not . status_ok ) then call json_value_create ( tmp ) call json % to_null ( tmp ) ! array element doesn't need a name call json % add ( p , tmp ) if ( j == ival ) created = . true . else if ( j == ival ) created = . false . end if end do status_ok = . true . else created = . false . end if if ( status_ok ) then ! found it p => tmp else ! not found call json % throw_exception (& 'Error in json_get_by_path_jsonpath_bracket: ' // & 'invalid array index found: \"' // token // & '\" in path: ' // trim ( path ), found ) exit end if else call json % throw_exception (& 'Error in json_get_by_path_jsonpath_bracket: ' // & 'invalid token: \"' // token // & '\" in path: ' // trim ( path ), found ) exit end if else call json % throw_exception (& 'Error in json_get_by_path_jsonpath_bracket: ' // & 'invalid path: ' // trim ( path ), found ) exit end if end if else call json % throw_exception (& 'Error in json_get_by_path_jsonpath_bracket: ' // & 'invalid path: ' // trim ( path ), found ) exit end if ! set up for next token: istart = iend + 1 end do end if else call json % throw_exception (& 'Error in json_get_by_path_jsonpath_bracket: ' // & 'expecting \"' // root // '\", found: \"' // path ( 1 : 1 ) // & '\" in path: ' // trim ( path ), found ) end if end if if ( json % exception_thrown ) then nullify ( p ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if else if ( present ( found )) found = . true . end if ! if it had to be created: if ( present ( was_created )) was_created = created else if ( present ( found )) found = . false . if ( present ( was_created )) was_created = . false . end if end subroutine json_get_by_path_jsonpath_bracket !***************************************************************************************** !***************************************************************************************** !> ! Convert an existing JSON variable `p` to a different variable type. ! The existing variable (and its children) is destroyed. It is replaced ! in the structure by a new variable of type `var_type` ! (which can be a `json_null`, `json_object` or `json_array`). ! !@note This is an internal routine used when creating variables by path. subroutine convert ( json , p , var_type ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! the variable to convert integer ( IK ), intent ( in ) :: var_type !! the variable type to convert `p` to type ( json_value ), pointer :: tmp !! temporary variable character ( kind = CK , len = :), allocatable :: name !! the name of a JSON variable logical :: convert_it !! if `p` needs to be converted convert_it = p % var_type /= var_type if ( convert_it ) then call json % info ( p , name = name ) ! get existing name select case ( var_type ) case ( json_object ) call json % create_object ( tmp , name ) case ( json_array ) call json % create_array ( tmp , name ) case ( json_null ) call json % create_null ( tmp , name ) case default call json % throw_exception ( 'Error in convert: invalid var_type value.' ) return end select call json % replace ( p , tmp , destroy = . true .) p => tmp nullify ( tmp ) end if end subroutine convert !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_by_path]] where \"path\" is kind=CDK. subroutine wrap_json_get_by_path ( json , me , path , p , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path type ( json_value ), pointer , intent ( out ) :: p logical ( LK ), intent ( out ), optional :: found call json % get ( me , to_unicode ( path ), p , found ) end subroutine wrap_json_get_by_path !***************************************************************************************** !***************************************************************************************** !> ! Returns the path to a JSON object that is part ! of a linked list structure. ! ! The path returned would be suitable for input to ! [[json_get_by_path]] and related routines. ! !@note If an error occurs (which in this case means a malformed ! JSON structure) then an exception will be thrown, unless ! `found` is present, which will be set to `false`. `path` ! will be a blank string. ! !@note If `json%path_mode/=1`, then the `use_alt_array_tokens` ! and `path_sep` inputs are ignored if present. ! !@note [http://goessner.net/articles/JsonPath/](JSONPath) (`path_mode=3`) ! does not specify whether or not the keys should be escaped (this routine ! assumes not, as does http://jsonpath.com). ! Also, we are using Fortran-style 1-based array indices, ! not 0-based, to agree with the assumption in `path_mode=1` subroutine json_get_path ( json , p , path , found , use_alt_array_tokens , path_sep ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! a JSON linked list object character ( kind = CK , len = :), allocatable , intent ( out ) :: path !! path to the variable logical ( LK ), intent ( out ), optional :: found !! true if there were no problems logical ( LK ), intent ( in ), optional :: use_alt_array_tokens !! if true, then '()' are used for array elements !! otherwise, '[]' are used [default] !! (only used if `path_mode=1`) character ( kind = CK , len = 1 ), intent ( in ), optional :: path_sep !! character to use for path separator !! (otherwise use `json%path_separator`) !! (only used if `path_mode=1`) character ( kind = CK , len = :), allocatable :: name !! variable name character ( kind = CK , len = :), allocatable :: parent_name !! variable's parent name character ( kind = CK , len = max_integer_str_len ) :: istr !! for integer to string conversion !! (array indices) type ( json_value ), pointer :: tmp !! for traversing the structure type ( json_value ), pointer :: element !! for traversing the structure integer ( IK ) :: var_type !! JSON variable type flag integer ( IK ) :: i !! counter integer ( IK ) :: n_children !! number of children for parent logical ( LK ) :: use_brackets !! to use '[]' characters for arrays logical ( LK ) :: parent_is_root !! if the parent is the root character ( kind = CK , len = 1 ) :: array_start !! for `path_mode=1`, the character to start arrays character ( kind = CK , len = 1 ) :: array_end !! for `path_mode=1`, the character to end arrays logical :: consecutive_arrays !! check for array of array case integer ( IK ) :: parents_parent_var_type !! `var_type` for parent's parent !optional input: if ( present ( use_alt_array_tokens )) then use_brackets = . not . use_alt_array_tokens else use_brackets = . true . end if if ( json % path_mode == 1_IK ) then if ( use_brackets ) then array_start = start_array array_end = end_array else array_start = start_array_alt array_end = end_array_alt end if end if ! initialize: consecutive_arrays = . false . if ( associated ( p )) then !traverse the structure via parents up to the root tmp => p do if (. not . associated ( tmp )) exit !finished !get info about the current variable: call json % info ( tmp , name = name ) if ( json % path_mode == 2_IK ) then name = encode_rfc6901 ( name ) end if ! if tmp a child of an object, or an element of an array if ( associated ( tmp % parent )) then !get info about the parent: call json % info ( tmp % parent , var_type = var_type ,& n_children = n_children , name = parent_name ) if ( json % path_mode == 2_IK ) then parent_name = encode_rfc6901 ( parent_name ) end if if ( associated ( tmp % parent % parent )) then call json % info ( tmp % parent % parent , var_type = parents_parent_var_type ) consecutive_arrays = parents_parent_var_type == json_array . and . & var_type == json_array else consecutive_arrays = . false . end if select case ( var_type ) case ( json_array ) !get array index of this element: element => tmp % parent % children do i = 1 , n_children if (. not . associated ( element )) then call json % throw_exception ( 'Error in json_get_path: ' // & 'malformed JSON structure. ' , found ) exit end if if ( associated ( element , tmp )) then exit else element => element % next end if if ( i == n_children ) then ! it wasn't found (should never happen) call json % throw_exception ( 'Error in json_get_path: ' // & 'malformed JSON structure. ' , found ) exit end if end do select case ( json % path_mode ) case ( 3_IK ) ! JSONPath \"bracket-notation\" ! example: `$['key'][1]` ! [note: this uses 1-based indices] call integer_to_string ( i , int_fmt , istr ) if ( consecutive_arrays ) then call add_to_path ( start_array // trim ( adjustl ( istr )) // end_array , CK_ '' ) else call add_to_path ( start_array // single_quote // parent_name // & single_quote // end_array // & start_array // trim ( adjustl ( istr )) // end_array , CK_ '' ) end if case ( 2_IK ) ! rfc6901 ! Example: '/key/0' call integer_to_string ( i - 1_IK , int_fmt , istr ) ! 0-based index if ( consecutive_arrays ) then call add_to_path ( trim ( adjustl ( istr ))) else call add_to_path ( parent_name // slash // trim ( adjustl ( istr ))) end if case ( 1_IK ) ! default ! Example: `key[1]` call integer_to_string ( i , int_fmt , istr ) if ( consecutive_arrays ) then call add_to_path ( array_start // trim ( adjustl ( istr )) // array_end , path_sep ) else call add_to_path ( parent_name // array_start // & trim ( adjustl ( istr )) // array_end , path_sep ) end if end select if (. not . consecutive_arrays ) tmp => tmp % parent ! already added parent name case ( json_object ) if (. not . consecutive_arrays ) then ! idea is not to print the array name if ! it was already printed with the array !process parent on the next pass select case ( json % path_mode ) case ( 3_IK ) call add_to_path ( start_array // single_quote // name // & single_quote // end_array , CK_ '' ) case default call add_to_path ( name , path_sep ) end select end if case default call json % throw_exception ( 'Error in json_get_path: ' // & 'malformed JSON structure. ' // & 'A variable that is not an object ' // & 'or array should not have a child.' , found ) exit end select else !the last one: select case ( json % path_mode ) case ( 3_IK ) call add_to_path ( start_array // single_quote // name // & single_quote // end_array , CK_ '' ) case default call add_to_path ( name , path_sep ) end select end if if ( associated ( tmp % parent )) then !check if the parent is the root: parent_is_root = (. not . associated ( tmp % parent % parent )) if ( parent_is_root ) exit end if !go to parent: tmp => tmp % parent end do else call json % throw_exception ( 'Error in json_get_path: ' // & 'input pointer is not associated' , found ) end if !for errors, return blank string: if ( json % exception_thrown . or . . not . allocated ( path )) then path = CK_ '' else select case ( json % path_mode ) case ( 3_IK ) ! add the outer level object identifier: path = root // path case ( 2_IK ) ! add the root slash: path = slash // path end select end if !optional output: if ( present ( found )) then if ( json % exception_thrown ) then found = . false . call json % clear_exceptions () else found = . true . end if end if contains subroutine add_to_path ( str , path_sep ) !! prepend the string to the path implicit none character ( kind = CK , len =* ), intent ( in ) :: str !! string to prepend to `path` character ( kind = CK , len =* ), intent ( in ), optional :: path_sep !! path separator (default is '.'). !! (ignored if `json%path_mode/=1`) select case ( json % path_mode ) case ( 3_IK ) ! in this case, the options are ignored if (. not . allocated ( path )) then path = str else path = str // path end if case ( 2_IK ) ! in this case, the options are ignored if (. not . allocated ( path )) then path = str else path = str // slash // path end if case ( 1_IK ) ! default path format if (. not . allocated ( path )) then path = str else ! shouldn't add the path_sep for cases like x[1][2] ! [if current is an array element, and the previous was ! also an array element] so check for that here: if (. not . ( str ( len ( str ): len ( str )) == array_end . and . & path ( 1 : 1 ) == array_start )) then if ( present ( path_sep )) then ! use user specified: path = str // path_sep // path else ! use the default: path = str // json % path_separator // path end if else path = str // path end if end if end select end subroutine add_to_path end subroutine json_get_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper for [[json_get_path]] where \"path\" and \"path_sep\" are kind=CDK. subroutine wrap_json_get_path ( json , p , path , found , use_alt_array_tokens , path_sep ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! a JSON linked list object character ( kind = CDK , len = :), allocatable , intent ( out ) :: path !! path to the variable logical ( LK ), intent ( out ), optional :: found !! true if there were no problems logical ( LK ), intent ( in ), optional :: use_alt_array_tokens !! if true, then '()' are used !! for array elements otherwise, !! '[]' are used [default] character ( kind = CDK , len = 1 ), intent ( in ), optional :: path_sep !! character to use for path !! separator (default is '.') character ( kind = CK , len = :), allocatable :: ck_path !! path to the variable ! call the main routine: if ( present ( path_sep )) then call json % get_path ( p , ck_path , found , use_alt_array_tokens , to_unicode ( path_sep )) else call json % get_path ( p , ck_path , found , use_alt_array_tokens ) end if ! from unicode: path = ck_path end subroutine wrap_json_get_path !***************************************************************************************** !***************************************************************************************** !> ! Convert a string into an integer. ! !@note Replacement for the `parse_integer` function in the original code. function string_to_int ( json , str ) result ( ival ) implicit none class ( json_core ), intent ( inout ) :: json character ( kind = CK , len =* ), intent ( in ) :: str !! a string integer ( IK ) :: ival !! `str` converted to an integer logical ( LK ) :: status_ok !! error flag for [[string_to_integer]] ! call the core routine: call string_to_integer ( str , ival , status_ok ) if (. not . status_ok ) then ival = 0 call json % throw_exception ( 'Error in string_to_int: ' // & 'string cannot be converted to an integer: ' // & trim ( str )) end if end function string_to_int !***************************************************************************************** !***************************************************************************************** !> ! Convert a string into a `real(RK)` value. function string_to_dble ( json , str ) result ( rval ) implicit none class ( json_core ), intent ( inout ) :: json character ( kind = CK , len =* ), intent ( in ) :: str !! a string real ( RK ) :: rval !! `str` converted to a `real(RK)` logical ( LK ) :: status_ok !! error flag for [[string_to_real]] call string_to_real ( str , json % use_quiet_nan , rval , status_ok ) if (. not . status_ok ) then !if there was an error rval = 0.0_RK call json % throw_exception ( 'Error in string_to_dble: ' // & 'string cannot be converted to a real: ' // & trim ( str )) end if end function string_to_dble !***************************************************************************************** !***************************************************************************************** !> ! Get an integer value from a [[json_value]]. subroutine json_get_integer ( json , me , value ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me integer ( IK ), intent ( out ) :: value !! the integer value logical ( LK ) :: status_ok !! for [[string_to_integer]] value = 0_IK if ( json % exception_thrown ) return if ( me % var_type == json_integer ) then value = me % int_value else if ( json % strict_type_checking ) then if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_integer:' // & ' Unable to resolve value to integer: ' // me % name ) else call json % throw_exception ( 'Error in json_get_integer:' // & ' Unable to resolve value to integer' ) end if else !type conversions select case ( me % var_type ) case ( json_real ) value = int ( me % dbl_value , IK ) case ( json_logical ) if ( me % log_value ) then value = 1_IK else value = 0_IK end if case ( json_string ) call string_to_integer ( me % str_value , value , status_ok ) if (. not . status_ok ) then value = 0_IK if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_integer:' // & ' Unable to convert string value to integer: ' // & me % name // ' = ' // trim ( me % str_value )) else call json % throw_exception ( 'Error in json_get_integer:' // & ' Unable to convert string value to integer: ' // & trim ( me % str_value )) end if end if case default if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_integer:' // & ' Unable to resolve value to integer: ' // me % name ) else call json % throw_exception ( 'Error in json_get_integer:' // & ' Unable to resolve value to integer' ) end if end select end if end if end subroutine json_get_integer !***************************************************************************************** !***************************************************************************************** !> ! Get an integer value from a [[json_value]], given the path string. subroutine json_get_integer_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path integer ( IK ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found integer ( IK ), intent ( in ), optional :: default !! default value if not found integer ( IK ), parameter :: default_if_not_specified = 0_IK character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_integer_by_path' #include \"json_get_scalar_by_path.inc\" end subroutine json_get_integer_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_integer_by_path]], where \"path\" is kind=CDK. subroutine wrap_json_get_integer_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path integer ( IK ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found integer ( IK ), intent ( in ), optional :: default !! default value if not found call json % get ( me , to_unicode ( path ), value , found , default ) end subroutine wrap_json_get_integer_by_path !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 5/14/2014 ! ! Get an integer vector from a [[json_value]]. subroutine json_get_integer_vec ( json , me , vec ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me integer ( IK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ) :: initialized if ( json % exception_thrown ) return ! check for 0-length arrays first: select case ( me % var_type ) case ( json_array ) if ( json % count ( me ) == 0 ) then allocate ( vec ( 0 )) return end if end select initialized = . false . !the callback function is called for each element of the array: call json % get ( me , array_callback = get_int_from_array ) if ( json % exception_thrown . and . allocated ( vec )) deallocate ( vec ) contains subroutine get_int_from_array ( json , element , i , count ) !! callback function for integer implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: element integer ( IK ), intent ( in ) :: i !! index integer ( IK ), intent ( in ) :: count !! size of array !size the output array: if (. not . initialized ) then allocate ( vec ( count )) initialized = . true . end if !populate the elements: call json % get ( element , value = vec ( i )) end subroutine get_int_from_array end subroutine json_get_integer_vec !***************************************************************************************** !***************************************************************************************** !> ! If `found` is present, set it it false. subroutine flag_not_found ( found ) implicit none logical ( LK ), intent ( out ), optional :: found if ( present ( found )) found = . false . end subroutine flag_not_found !***************************************************************************************** !***************************************************************************************** !> ! Get an integer vector from a [[json_value]], given the path string. subroutine json_get_integer_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path integer ( IK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found integer ( IK ), dimension (:), intent ( in ), optional :: default !! default value if not found character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_integer_vec_by_path' #include \"json_get_vec_by_path.inc\" end subroutine json_get_integer_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_integer_vec_by_path]], where \"path\" is kind=CDK subroutine wrap_json_get_integer_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CDK , len =* ), intent ( in ) :: path integer ( IK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found integer ( IK ), dimension (:), intent ( in ), optional :: default !! default value if not found call json % get ( me , path = to_unicode ( path ), vec = vec , found = found , default = default ) end subroutine wrap_json_get_integer_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Get a real value from a [[json_value]]. subroutine json_get_real ( json , me , value ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me real ( RK ), intent ( out ) :: value logical ( LK ) :: status_ok !! for [[string_to_real]] value = 0.0_RK if ( json % exception_thrown ) return if ( me % var_type == json_real ) then value = me % dbl_value else if ( json % strict_type_checking ) then if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_real:' // & ' Unable to resolve value to real: ' // me % name ) else call json % throw_exception ( 'Error in json_get_real:' // & ' Unable to resolve value to real' ) end if else !type conversions select case ( me % var_type ) case ( json_integer ) value = real ( me % int_value , RK ) case ( json_logical ) if ( me % log_value ) then value = 1.0_RK else value = 0.0_RK end if case ( json_string ) call string_to_real ( me % str_value , json % use_quiet_nan , value , status_ok ) if (. not . status_ok ) then value = 0.0_RK if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_real:' // & ' Unable to convert string value to real: ' // & me % name // ' = ' // trim ( me % str_value )) else call json % throw_exception ( 'Error in json_get_real:' // & ' Unable to convert string value to real: ' // & trim ( me % str_value )) end if end if case ( json_null ) if ( ieee_support_nan ( value ) . and . json % null_to_real_mode /= 1_IK ) then select case ( json % null_to_real_mode ) case ( 2_IK ) if ( json % use_quiet_nan ) then value = ieee_value ( value , ieee_quiet_nan ) else value = ieee_value ( value , ieee_signaling_nan ) end if case ( 3_IK ) value = 0.0_RK end select else if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_real:' // & ' Cannot convert null to NaN: ' // me % name ) else call json % throw_exception ( 'Error in json_get_real:' // & ' Cannot convert null to NaN' ) end if end if case default if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_real:' // & ' Unable to resolve value to real: ' // me % name ) else call json % throw_exception ( 'Error in json_get_real:' // & ' Unable to resolve value to real' ) end if end select end if end if end subroutine json_get_real !***************************************************************************************** !***************************************************************************************** !> ! Get a real value from a [[json_value]], given the path. subroutine json_get_real_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CK , len =* ), intent ( in ) :: path real ( RK ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found real ( RK ), intent ( in ), optional :: default !! default value if not found real ( RK ), parameter :: default_if_not_specified = 0.0_RK character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_real_by_path' #include \"json_get_scalar_by_path.inc\" end subroutine json_get_real_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_real_by_path]], where \"path\" is kind=CDK subroutine wrap_json_get_real_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CDK , len =* ), intent ( in ) :: path real ( RK ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found real ( RK ), intent ( in ), optional :: default !! default value if not found call json % get ( me , to_unicode ( path ), value , found , default ) end subroutine wrap_json_get_real_by_path !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 5/14/2014 ! ! Get a real vector from a [[json_value]]. subroutine json_get_real_vec ( json , me , vec ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me real ( RK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ) :: initialized if ( json % exception_thrown ) return ! check for 0-length arrays first: select case ( me % var_type ) case ( json_array ) if ( json % count ( me ) == 0 ) then allocate ( vec ( 0 )) return end if end select initialized = . false . !the callback function is called for each element of the array: call json % get ( me , array_callback = get_real_from_array ) if ( json % exception_thrown . and . allocated ( vec )) deallocate ( vec ) contains subroutine get_real_from_array ( json , element , i , count ) !! callback function for real implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: element integer ( IK ), intent ( in ) :: i !! index integer ( IK ), intent ( in ) :: count !! size of array !size the output array: if (. not . initialized ) then allocate ( vec ( count )) initialized = . true . end if !populate the elements: call json % get ( element , value = vec ( i )) end subroutine get_real_from_array end subroutine json_get_real_vec !***************************************************************************************** !***************************************************************************************** !> ! Get a real vector from a [[json_value]], given the path. subroutine json_get_real_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path real ( RK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found real ( RK ), dimension (:), intent ( in ), optional :: default !! default value if not found character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_real_vec_by_path' #include \"json_get_vec_by_path.inc\" end subroutine json_get_real_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_real_vec_by_path]], where \"path\" is kind=CDK subroutine wrap_json_get_real_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CDK , len =* ), intent ( in ) :: path real ( RK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found real ( RK ), dimension (:), intent ( in ), optional :: default !! default value if not found call json % get ( me , to_unicode ( path ), vec , found , default ) end subroutine wrap_json_get_real_vec_by_path !***************************************************************************************** #ifndef REAL32 !***************************************************************************************** !> ! Alternate version of [[json_get_real]] where value=real32. subroutine json_get_real32 ( json , me , value ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me real ( real32 ), intent ( out ) :: value real ( RK ) :: tmp call json % get ( me , tmp ) value = real ( tmp , real32 ) end subroutine json_get_real32 !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_real_by_path]] where value=real32. subroutine json_get_real32_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CK , len =* ), intent ( in ) :: path real ( real32 ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found real ( real32 ), intent ( in ), optional :: default !! default value if not found real ( RK ) :: tmp real ( RK ) :: tmp_default if ( present ( default )) then tmp_default = real ( default , RK ) call json % get ( me , path , tmp , found , tmp_default ) else call json % get ( me , path , tmp , found ) end if value = real ( tmp , real32 ) end subroutine json_get_real32_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_real32_by_path]], where \"path\" is kind=CDK subroutine wrap_json_get_real32_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CDK , len =* ), intent ( in ) :: path real ( real32 ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found real ( real32 ), intent ( in ), optional :: default !! default value if not found call json % get ( me , to_unicode ( path ), value , found , default ) end subroutine wrap_json_get_real32_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_real_vec]] where `vec` is `real32`. subroutine json_get_real32_vec ( json , me , vec ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me real ( real32 ), dimension (:), allocatable , intent ( out ) :: vec real ( RK ), dimension (:), allocatable :: tmp call json % get ( me , tmp ) if ( allocated ( tmp )) vec = real ( tmp , real32 ) end subroutine json_get_real32_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_real_vec_by_path]] where `vec` is `real32`. subroutine json_get_real32_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path real ( real32 ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found real ( real32 ), dimension (:), intent ( in ), optional :: default !! default value if not found real ( RK ), dimension (:), allocatable :: tmp real ( RK ), dimension (:), allocatable :: tmp_default if ( present ( default )) then tmp_default = real ( default , RK ) call json % get ( me , path , tmp , found , tmp_default ) else call json % get ( me , path , tmp , found ) end if if ( allocated ( tmp )) vec = real ( tmp , real32 ) end subroutine json_get_real32_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_real32_vec_by_path]], where \"path\" is kind=CDK subroutine wrap_json_get_real32_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CDK , len =* ), intent ( in ) :: path real ( real32 ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found real ( real32 ), dimension (:), intent ( in ), optional :: default !! default value if not found call json % get ( me , to_unicode ( path ), vec , found , default ) end subroutine wrap_json_get_real32_vec_by_path !***************************************************************************************** #endif #ifdef REAL128 !***************************************************************************************** !> ! Alternate version of [[json_get_real]] where `value` is `real64`. subroutine json_get_real64 ( json , me , value ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me real ( real64 ), intent ( out ) :: value real ( RK ) :: tmp call json % get ( me , tmp ) value = real ( tmp , real64 ) end subroutine json_get_real64 !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_real_by_path]] where `value` is `real64`. subroutine json_get_real64_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CK , len =* ), intent ( in ) :: path real ( real64 ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found real ( real64 ), intent ( in ), optional :: default !! default value if not found real ( RK ) :: tmp real ( RK ) :: tmp_default if ( present ( default )) then tmp_default = real ( default , RK ) call json % get ( me , path , tmp , found , tmp_default ) else call json % get ( me , path , tmp , found ) end if value = real ( tmp , real64 ) end subroutine json_get_real64_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_real64_by_path]], where \"path\" is kind=CDK subroutine wrap_json_get_real64_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CDK , len =* ), intent ( in ) :: path real ( real64 ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found real ( real64 ), intent ( in ), optional :: default !! default value if not found call json % get ( me , to_unicode ( path ), value , found , default ) end subroutine wrap_json_get_real64_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_real_vec]] where `vec` is `real64`. subroutine json_get_real64_vec ( json , me , vec ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me real ( real64 ), dimension (:), allocatable , intent ( out ) :: vec real ( RK ), dimension (:), allocatable :: tmp call json % get ( me , tmp ) if ( allocated ( tmp )) vec = real ( tmp , real64 ) end subroutine json_get_real64_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_real_vec_by_path]] where `vec` is `real64`. subroutine json_get_real64_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path real ( real64 ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found real ( real64 ), dimension (:), intent ( in ), optional :: default !! default value if not found real ( RK ), dimension (:), allocatable :: tmp real ( RK ), dimension (:), allocatable :: tmp_default if ( present ( default )) then tmp_default = real ( default , RK ) call json % get ( me , path , tmp , found , tmp_default ) else call json % get ( me , path , tmp , found ) end if if ( allocated ( tmp )) vec = real ( tmp , real64 ) end subroutine json_get_real64_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_real64_vec_by_path]], where \"path\" is kind=CDK subroutine wrap_json_get_real64_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CDK , len =* ), intent ( in ) :: path real ( real64 ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found real ( real64 ), dimension (:), intent ( in ), optional :: default !! default value if not found call json % get ( me , to_unicode ( path ), vec , found , default ) end subroutine wrap_json_get_real64_vec_by_path !***************************************************************************************** #endif !***************************************************************************************** !> ! Get a logical value from a [[json_value]]. ! !### Note ! If `strict_type_checking` is False, then the following assumptions are made: ! ! * For integers: a value > 0 is True ! * For reals: a value > 0 is True ! * For strings: 'true' is True, and everything else is false. [case sensitive match] subroutine json_get_logical ( json , me , value ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me logical ( LK ), intent ( out ) :: value value = . false . if ( json % exception_thrown ) return if ( me % var_type == json_logical ) then value = me % log_value else if ( json % strict_type_checking ) then if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_logical: ' // & 'Unable to resolve value to logical: ' // & me % name ) else call json % throw_exception ( 'Error in json_get_logical: ' // & 'Unable to resolve value to logical' ) end if else !type conversions select case ( me % var_type ) case ( json_integer ) value = ( me % int_value > 0_IK ) case ( json_real ) value = ( me % dbl_value > 0.0_RK ) case ( json_string ) value = ( me % str_value == true_str ) case default if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_logical: ' // & 'Unable to resolve value to logical: ' // & me % name ) else call json % throw_exception ( 'Error in json_get_logical: ' // & 'Unable to resolve value to logical' ) end if end select end if end if end subroutine json_get_logical !***************************************************************************************** !***************************************************************************************** !> ! Get a logical value from a [[json_value]], given the path. subroutine json_get_logical_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path logical ( LK ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found logical ( LK ), intent ( in ), optional :: default !! default value if not found logical ( LK ), parameter :: default_if_not_specified = . false . character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_logical_by_path' #include \"json_get_scalar_by_path.inc\" end subroutine json_get_logical_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_logical_by_path]], where \"path\" is kind=CDK subroutine wrap_json_get_logical_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path logical ( LK ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found logical ( LK ), intent ( in ), optional :: default !! default value if not found call json % get ( me , to_unicode ( path ), value , found , default ) end subroutine wrap_json_get_logical_by_path !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 5/14/2014 ! ! Get a logical vector from [[json_value]]. subroutine json_get_logical_vec ( json , me , vec ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me logical ( LK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ) :: initialized if ( json % exception_thrown ) return ! check for 0-length arrays first: select case ( me % var_type ) case ( json_array ) if ( json % count ( me ) == 0 ) then allocate ( vec ( 0 )) return end if end select initialized = . false . !the callback function is called for each element of the array: call json % get ( me , array_callback = get_logical_from_array ) if ( json % exception_thrown . and . allocated ( vec )) deallocate ( vec ) contains subroutine get_logical_from_array ( json , element , i , count ) !! callback function for logical implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: element integer ( IK ), intent ( in ) :: i !! index integer ( IK ), intent ( in ) :: count !! size of array !size the output array: if (. not . initialized ) then allocate ( vec ( count )) initialized = . true . end if !populate the elements: call json % get ( element , value = vec ( i )) end subroutine get_logical_from_array end subroutine json_get_logical_vec !***************************************************************************************** !***************************************************************************************** !> ! Get a logical vector from a [[json_value]], given the path. subroutine json_get_logical_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path logical ( LK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found logical ( LK ), dimension (:), intent ( in ), optional :: default character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_logical_vec_by_path' #include \"json_get_vec_by_path.inc\" end subroutine json_get_logical_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_logical_vec_by_path]], where \"path\" is kind=CDK subroutine wrap_json_get_logical_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path logical ( LK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found logical ( LK ), dimension (:), intent ( in ), optional :: default call json % get ( me , to_unicode ( path ), vec , found , default ) end subroutine wrap_json_get_logical_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Get a character string from a [[json_value]]. subroutine json_get_string ( json , me , value ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len = :), allocatable , intent ( out ) :: value value = CK_ '' if (. not . json % exception_thrown ) then if ( me % var_type == json_string ) then if ( allocated ( me % str_value )) then if ( json % unescaped_strings ) then ! default: it is stored already unescaped: value = me % str_value else ! return the escaped version: call escape_string ( me % str_value , value , json % escape_solidus ) end if else call json % throw_exception ( 'Error in json_get_string: ' // & 'me%str_value not allocated' ) end if else if ( json % strict_type_checking ) then if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_string:' // & ' Unable to resolve value to string: ' // me % name ) else call json % throw_exception ( 'Error in json_get_string:' // & ' Unable to resolve value to string' ) end if else select case ( me % var_type ) case ( json_integer ) if ( allocated ( me % int_value )) then value = repeat ( space , max_integer_str_len ) call integer_to_string ( me % int_value , int_fmt , value ) value = trim ( value ) else call json % throw_exception ( 'Error in json_get_string: ' // & 'me%int_value not allocated' ) end if case ( json_real ) if ( allocated ( me % dbl_value )) then value = repeat ( space , max_numeric_str_len ) call real_to_string ( me % dbl_value , json % real_fmt ,& json % non_normals_to_null ,& json % compact_real , value ) value = trim ( value ) else call json % throw_exception ( 'Error in json_get_string: ' // & 'me%int_value not allocated' ) end if case ( json_logical ) if ( allocated ( me % log_value )) then if ( me % log_value ) then value = true_str else value = false_str end if else call json % throw_exception ( 'Error in json_get_string: ' // & 'me%log_value not allocated' ) end if case ( json_null ) value = null_str case default if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_string: ' // & 'Unable to resolve value to characters: ' // & me % name ) else call json % throw_exception ( 'Error in json_get_string: ' // & 'Unable to resolve value to characters' ) end if end select end if end if end if end subroutine json_get_string !***************************************************************************************** !***************************************************************************************** !> ! Get a character string from a [[json_value]], given the path. subroutine json_get_string_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path character ( kind = CK , len = :), allocatable , intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found character ( kind = CK , len =* ), intent ( in ), optional :: default character ( kind = CK , len =* ), parameter :: default_if_not_specified = CK_ '' character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_string_by_path' #include \"json_get_scalar_by_path.inc\" end subroutine json_get_string_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_string_by_path]], where \"path\" is kind=CDK subroutine wrap_json_get_string_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path character ( kind = CK , len = :), allocatable , intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found character ( kind = CK , len =* ), intent ( in ), optional :: default call json % get ( me , to_unicode ( path ), value , found , default ) end subroutine wrap_json_get_string_by_path !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 5/14/2014 ! ! Get a string vector from a [[json_value(type)]]. subroutine json_get_string_vec ( json , me , vec ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ) :: initialized if ( json % exception_thrown ) return ! check for 0-length arrays first: select case ( me % var_type ) case ( json_array ) if ( json % count ( me ) == 0 ) then allocate ( vec ( 0 )) return end if end select initialized = . false . !the callback function is called for each element of the array: call json % get ( me , array_callback = get_chars_from_array ) if ( json % exception_thrown . and . allocated ( vec )) deallocate ( vec ) contains subroutine get_chars_from_array ( json , element , i , count ) !! callback function for chars implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: element integer ( IK ), intent ( in ) :: i !! index integer ( IK ), intent ( in ) :: count !! size of array character ( kind = CK , len = :), allocatable :: cval !size the output array: if (. not . initialized ) then allocate ( vec ( count )) initialized = . true . end if !populate the elements: call json % get ( element , value = cval ) if ( allocated ( cval )) then vec ( i ) = cval deallocate ( cval ) else vec ( i ) = CK_ '' end if end subroutine get_chars_from_array end subroutine json_get_string_vec !***************************************************************************************** !***************************************************************************************** !> ! Get a string vector from a [[json_value(type)]], given the path. subroutine json_get_string_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path character ( kind = CK , len =* ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found character ( kind = CK , len =* ), dimension (:), intent ( in ), optional :: default character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_string_vec_by_path' #include \"json_get_vec_by_path.inc\" end subroutine json_get_string_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_string_vec_by_path]], where \"path\" is kind=CDK subroutine wrap_json_get_string_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path character ( kind = CK , len =* ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found character ( kind = CK , len =* ), dimension (:), intent ( in ), optional :: default call json % get ( me , to_unicode ( path ), vec , found , default ) end subroutine wrap_json_get_string_vec_by_path !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/16/2016 ! ! Get a string vector from a [[json_value(type)]]. This is an alternate ! version of [[json_get_string_vec]]. This one returns an allocatable ! length character (where the string length is the maximum length of ! any element in the array). It also returns an integer array of the ! actual sizes of the strings in the JSON structure. ! !@note This is somewhat inefficient since it does ! cycle through the array twice. ! !@warning The allocation of `vec` doesn't work with ! gfortran 4.9 or 5 due to compiler bugs subroutine json_get_alloc_string_vec ( json , me , vec , ilen ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len = :), dimension (:), allocatable , intent ( out ) :: vec integer ( IK ), dimension (:), allocatable , intent ( out ) :: ilen !! the actual length !! of each character !! string in the array logical ( LK ) :: initialized !! if the output array has been sized integer ( IK ) :: max_len !! the length of the longest string in the array if ( json % exception_thrown ) return ! check for 0-length arrays first: select case ( me % var_type ) case ( json_array ) if ( json % count ( me ) == 0 ) then allocate ( character ( kind = CK , len = 0 ) :: vec ( 0 )) allocate ( ilen ( 0 )) return end if end select initialized = . false . call json % string_info ( me , ilen = ilen , max_str_len = max_len ) if (. not . json % exception_thrown ) then ! now get each string using the callback function: call json % get ( me , array_callback = get_chars_from_array ) end if if ( json % exception_thrown ) then if ( allocated ( vec )) deallocate ( vec ) if ( allocated ( ilen )) deallocate ( ilen ) end if contains subroutine get_chars_from_array ( json , element , i , count ) !! callback function for chars implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: element integer ( IK ), intent ( in ) :: i !! index integer ( IK ), intent ( in ) :: count !! size of array character ( kind = CK , len = :), allocatable :: cval !! for getting string !size the output array: if (. not . initialized ) then ! string length long enough to hold the longest one ! Note that this doesn't work with gfortran 4.9 or 5. allocate ( character ( kind = CK , len = max_len ) :: vec ( count ) ) initialized = . true . end if !populate the elements: call json % get ( element , value = cval ) if ( allocated ( cval )) then vec ( i ) = cval ilen ( i ) = len ( cval ) ! return the actual length deallocate ( cval ) else vec ( i ) = CK_ '' ilen ( i ) = 0 end if end subroutine get_chars_from_array end subroutine json_get_alloc_string_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_alloc_string_vec]] where input is the path. ! ! This is an alternate version of [[json_get_string_vec_by_path]]. ! This one returns an allocatable length character (where the string ! length is the maximum length of any element in the array). It also ! returns an integer array of the actual sizes of the strings in the ! JSON structure. ! !@note An alternative to using this routine is to use [[json_get_array]] with ! a callback function that gets the string from each element and populates ! a user-defined string type. ! !@note If the `default` argument is used, and `default_ilen` is not present, ! then `ilen` will just be returned as the length of the `default` dummy ! argument (all elements with the same length). subroutine json_get_alloc_string_vec_by_path ( json , me , path , vec , ilen , found , default , default_ilen ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path character ( kind = CK , len = :), dimension (:), allocatable , intent ( out ) :: vec integer ( IK ), dimension (:), allocatable , intent ( out ) :: ilen !! the actual length !! of each character !! string in the array logical ( LK ), intent ( out ), optional :: found character ( kind = CK , len =* ), dimension (:), intent ( in ), optional :: default integer ( IK ), dimension (:), intent ( in ), optional :: default_ilen !! the actual !! length of `default` character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_alloc_string_vec_by_path' #include \"json_get_vec_by_path_alloc.inc\" end subroutine json_get_alloc_string_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_alloc_string_vec_by_path]], where \"path\" is kind=CDK subroutine wrap_json_get_alloc_string_vec_by_path ( json , me , path , vec , ilen , found , default , default_ilen ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path character ( kind = CK , len = :), dimension (:), allocatable , intent ( out ) :: vec integer ( IK ), dimension (:), allocatable , intent ( out ) :: ilen !! the actual length !! of each character !! string in the array logical ( LK ), intent ( out ), optional :: found character ( kind = CK , len =* ), dimension (:), intent ( in ), optional :: default integer ( IK ), dimension (:), intent ( in ), optional :: default_ilen !! the actual !! length of `default` call json % get ( me , to_unicode ( path ), vec , ilen , found , default , default_ilen ) end subroutine wrap_json_get_alloc_string_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! This routine calls the user-supplied [[json_array_callback_func]] ! subroutine for each element in the array. ! !@note For integer, real, logical, and character arrays, ! higher-level routines are provided (see `get` methods), so ! this routine does not have to be used for those cases. recursive subroutine json_get_array ( json , me , array_callback ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me procedure ( json_array_callback_func ) :: array_callback type ( json_value ), pointer :: element !! temp variable for getting elements integer ( IK ) :: i !! counter integer ( IK ) :: count !! number of elements in the array if ( json % exception_thrown ) return select case ( me % var_type ) case ( json_array ) count = json % count ( me ) element => me % children do i = 1 , count ! callback for each child if (. not . associated ( element )) then call json % throw_exception ( 'Error in json_get_array: ' // & 'Malformed JSON linked list' ) return end if call array_callback ( json , element , i , count ) if ( json % exception_thrown ) exit element => element % next end do case default call json % throw_exception ( 'Error in json_get_array:' // & ' Resolved value is not an array ' ) end select end subroutine json_get_array !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 4/28/2016 ! ! Traverse a JSON structure. ! This routine calls the user-specified [[json_traverse_callback_func]] ! for each element of the structure. subroutine json_traverse ( json , p , traverse_callback ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p procedure ( json_traverse_callback_func ) :: traverse_callback logical ( LK ) :: finished !! can be used to stop the process if (. not . json % exception_thrown ) call traverse ( p ) contains recursive subroutine traverse ( p ) !! recursive [[json_value]] traversal. implicit none type ( json_value ), pointer , intent ( in ) :: p type ( json_value ), pointer :: element !! a child element integer ( IK ) :: i !! counter integer ( IK ) :: icount !! number of children if ( json % exception_thrown ) return call traverse_callback ( json , p , finished ) ! first call for this object if ( finished ) return !for arrays and objects, have to also call for all children: if ( p % var_type == json_array . or . p % var_type == json_object ) then icount = json % count ( p ) ! number of children if ( icount > 0 ) then element => p % children ! first one do i = 1 , icount ! call for each child if (. not . associated ( element )) then call json % throw_exception ( 'Error in json_traverse: ' // & 'Malformed JSON linked list' ) return end if call traverse ( element ) if ( finished . or . json % exception_thrown ) exit element => element % next end do end if nullify ( element ) end if end subroutine traverse end subroutine json_traverse !***************************************************************************************** !***************************************************************************************** !> ! This routine calls the user-supplied array_callback subroutine ! for each element in the array (specified by the path). recursive subroutine json_get_array_by_path ( json , me , path , array_callback , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path procedure ( json_array_callback_func ) :: array_callback logical ( LK ), intent ( out ), optional :: found type ( json_value ), pointer :: p if ( json % exception_thrown ) then if ( present ( found ) ) found = . false . return end if nullify ( p ) ! resolve the path to the value call json % get ( me = me , path = path , p = p ) if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_get_array:' // & ' Unable to resolve path: ' // trim ( path ), found ) else call json % get ( me = p , array_callback = array_callback ) nullify ( p ) end if if ( json % exception_thrown ) then if ( present ( found ) ) then found = . false . call json % clear_exceptions () end if else if ( present ( found ) ) found = . true . end if end subroutine json_get_array_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_array_by_path]], where \"path\" is kind=CDK recursive subroutine wrap_json_get_array_by_path ( json , me , path , array_callback , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path procedure ( json_array_callback_func ) :: array_callback logical ( LK ), intent ( out ), optional :: found call json % get ( me , to_unicode ( path ), array_callback , found ) end subroutine wrap_json_get_array_by_path !***************************************************************************************** !***************************************************************************************** !> ! Internal routine to be called before parsing JSON. ! Currently, all this does it allocate the `comment_char` if none was specified. subroutine json_prepare_parser ( json ) implicit none class ( json_core ), intent ( inout ) :: json if ( json % allow_comments . and . . not . allocated ( json % comment_char )) then ! comments are enabled, but user hasn't set the comment char, ! so in this case use the default: json % comment_char = CK_ '/!#' end if end subroutine json_prepare_parser !***************************************************************************************** !***************************************************************************************** !> ! Parse the JSON file and populate the [[json_value]] tree. ! !### Inputs ! ! The inputs can be: ! ! * `file` & `unit` : the specified unit is used to read JSON from file. ! [note if unit is already open, then the filename is ignored] ! * `file` : JSON is read from file using internal unit number ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%load(file='myfile.json', p=p) !```` ! !### History ! * Jacob Williams : 01/13/2015 : added read from string option. ! * Izaak Beekman : 03/08/2015 : moved read from string to separate ! subroutine, and error annotation to separate subroutine. ! !@note When calling this routine, any exceptions thrown from previous ! calls will automatically be cleared. subroutine json_parse_file ( json , file , p , unit ) implicit none class ( json_core ), intent ( inout ) :: json character ( kind = CDK , len =* ), intent ( in ) :: file !! JSON file name type ( json_value ), pointer :: p !! output structure integer ( IK ), intent ( in ), optional :: unit !! file unit number (/= 0) integer ( IK ) :: iunit !! file unit actually used integer ( IK ) :: istat !! iostat flag logical ( LK ) :: is_open !! if the file is already open logical ( LK ) :: has_duplicate !! if checking for duplicate keys character ( kind = CK , len = :), allocatable :: path !! path to any duplicate key ! clear any exceptions and initialize: call json % initialize () call json % prepare_parser () if ( present ( unit ) ) then if ( unit == 0 ) then call json % throw_exception ( 'Error in json_parse_file: unit number must not be 0.' ) return end if iunit = unit ! check to see if the file is already open ! if it is, then use it, otherwise open the file with the name given. inquire ( unit = iunit , opened = is_open , iostat = istat ) if ( istat == 0 . and . . not . is_open ) then ! open the file open ( unit = iunit , & file = file , & status = 'OLD' , & action = 'READ' , & form = form_spec , & access = access_spec , & iostat = istat & FILE_ENCODING ) else ! if the file is already open, then we need to make sure ! that it is open with the correct form/access/etc... end if else ! open the file with a new unit number: open ( newunit = iunit , & file = file , & status = 'OLD' , & action = 'READ' , & form = form_spec , & access = access_spec , & iostat = istat & FILE_ENCODING ) end if if ( istat == 0 ) then if ( use_unformatted_stream ) then ! save the file size to be read: inquire ( unit = iunit , size = json % filesize , iostat = istat ) end if ! create the value and associate the pointer call json_value_create ( p ) ! Note: the name of the root json_value doesn't really matter, ! but we'll allocate something here just in case. p % name = trim ( file ) !use the file name ! parse as a value call json % parse_value ( unit = iunit , str = CK_ '' , value = p ) call json % parse_end ( unit = iunit , str = CK_ '' ) ! check for errors: if ( json % exception_thrown ) then call json % annotate_invalid_json ( iunit , CK_ '' ) else if (. not . json % allow_duplicate_keys ) then call json % check_for_duplicate_keys ( p , has_duplicate , path = path ) if (. not . json % exception_thrown ) then if ( has_duplicate ) then call json % throw_exception ( 'Error in json_parse_file: ' // & 'Duplicate key found: ' // path ) end if end if end if end if ! close the file: close ( unit = iunit , iostat = istat ) else call json % throw_exception ( 'Error in json_parse_file: Error opening file: ' // trim ( file )) nullify ( p ) end if end subroutine json_parse_file !***************************************************************************************** !***************************************************************************************** !> ! Parse the JSON string and populate the [[json_value]] tree. ! !### See also ! * [[json_parse_file]] subroutine json_parse_string ( json , p , str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! output structure character ( kind = CK , len =* ), intent ( in ) :: str !! string with JSON data integer ( IK ), parameter :: iunit = 0 !! indicates that json data will be read from buffer logical ( LK ) :: has_duplicate !! if checking for duplicate keys character ( kind = CK , len = :), allocatable :: path !! path to any duplicate key ! clear any exceptions and initialize: call json % initialize () call json % prepare_parser () ! create the value and associate the pointer call json_value_create ( p ) ! Note: the name of the root json_value doesn't really matter, ! but we'll allocate something here just in case. p % name = CK_ '' ! parse as a value call json % parse_value ( unit = iunit , str = str , value = p ) call json % parse_end ( unit = iunit , str = str ) if ( json % exception_thrown ) then call json % annotate_invalid_json ( iunit , str ) else if (. not . json % allow_duplicate_keys ) then call json % check_for_duplicate_keys ( p , has_duplicate , path = path ) if (. not . json % exception_thrown ) then if ( has_duplicate ) then call json % throw_exception ( 'Error in json_parse_string: ' // & 'Duplicate key found: ' // path ) end if end if end if end if end subroutine json_parse_string !***************************************************************************************** !***************************************************************************************** !> ! An error checking routine to call after a file (or string) has been parsed. ! It will throw an exception if there are any other non-whitespace characters ! in the file. subroutine json_parse_end ( json , unit , str ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: unit !! file unit number character ( kind = CK , len =* ), intent ( in ) :: str !! string containing JSON !! data (only used if `unit=0`) logical ( LK ) :: eof !! end-of-file flag character ( kind = CK , len = 1 ) :: c !! character read from file !! (or string) by [[pop_char]] ! first check for exceptions: if ( json % exception_thrown ) return ! pop the next non whitespace character off the file call json % pop_char ( unit , str = str , eof = eof , skip_ws = . true ., & skip_comments = json % allow_comments , popped = c ) if (. not . eof ) then call json % throw_exception ( 'Error in json_parse_end:' // & ' Unexpected character found after parsing value. \"' // & c // '\"' ) end if end subroutine json_parse_end !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_parse_string]], where `str` is kind=CDK. subroutine wrap_json_parse_string ( json , p , str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! output structure character ( kind = CDK , len =* ), intent ( in ) :: str !! string with JSON data call json % deserialize ( p , to_unicode ( str )) end subroutine wrap_json_parse_string !***************************************************************************************** !***************************************************************************************** !> ! Generate a warning message if there was an error parsing a JSON ! file or string. subroutine annotate_invalid_json ( json , iunit , str ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: iunit !! file unit number character ( kind = CK , len =* ), intent ( in ) :: str !! string with JSON data character ( kind = CK , len = :), allocatable :: line !! line containing the error character ( kind = CK , len = :), allocatable :: arrow_str !! arrow string that points !! to the current character character ( kind = CK , len = max_integer_str_len ) :: line_str !! current line number string character ( kind = CK , len = max_integer_str_len ) :: char_str !! current character count string integer ( IK ) :: i !! line number counter integer ( IK ) :: i_nl_prev !! index of previous newline character integer ( IK ) :: i_nl !! index of current newline character ! If there was an error reading the file, then ! print the line where the error occurred: if ( json % exception_thrown ) then !the counters for the current line and the last character read: call integer_to_string ( json % line_count , int_fmt , line_str ) call integer_to_string ( json % char_count , int_fmt , char_str ) !draw the arrow string that points to the current character: arrow_str = repeat ( '-' , max ( 0_IK , json % char_count - 1_IK ) ) // '^' if ( json % line_count > 0 . and . json % char_count > 0 ) then if ( iunit /= 0 ) then if ( use_unformatted_stream ) then call json % get_current_line_from_file_stream ( iunit , line ) else call json % get_current_line_from_file_sequential ( iunit , line ) end if else !get the current line from the string: ! [this is done by counting the newline characters] i_nl_prev = 0 !index of previous newline character i_nl = 2 !just in case line_count = 0 do i = 1 , json % line_count i_nl = index ( str ( i_nl_prev + 1 :), newline ) if ( i_nl == 0 ) then !last line - no newline character i_nl = len ( str ) + 1 exit end if i_nl = i_nl + i_nl_prev !index of current newline character i_nl_prev = i_nl !update for next iteration end do line = str ( i_nl_prev + 1 : i_nl - 1 ) !extract current line end if else !in this case, it was an empty line or file line = CK_ '' end if ! add a newline for the error display if necessary: line = trim ( line ) if ( len ( line ) > 0 ) then i = len ( line ) if ( line ( i : i ) /= newline ) line = line // newline else line = line // newline end if !create the error message: if ( allocated ( json % err_message )) then json % err_message = json % err_message // newline else json % err_message = '' end if json % err_message = json % err_message // & 'line: ' // trim ( adjustl ( line_str )) // ', ' // & 'character: ' // trim ( adjustl ( char_str )) // newline // & line // arrow_str if ( allocated ( line )) deallocate ( line ) end if end subroutine annotate_invalid_json !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Rewind the file to the beginning of the current line, and return this line. ! The file is assumed to be opened. ! This is the SEQUENTIAL version (see also [[get_current_line_from_file_stream]]). subroutine get_current_line_from_file_sequential ( iunit , line ) implicit none integer ( IK ), intent ( in ) :: iunit !! file unit number character ( kind = CK , len = :), allocatable , intent ( out ) :: line !! current line character ( kind = CK , len = seq_chunk_size ) :: chunk !! for reading line in chunks integer ( IK ) :: istat !! iostat flag integer ( IK ) :: isize !! number of characters read in read statement !initialize: line = CK_ '' !rewind to beginning of the current record: backspace ( iunit , iostat = istat ) !loop to read in all the characters in the current record. ![the line is read in chunks until the end of the line is reached] if ( istat == 0 ) then do isize = 0 read ( iunit , fmt = '(A)' , advance = 'NO' , size = isize , iostat = istat ) chunk if ( istat == 0 ) then line = line // chunk else if ( isize > 0 . and . isize <= seq_chunk_size ) line = line // chunk ( 1 : isize ) exit end if end do end if end subroutine get_current_line_from_file_sequential !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Rewind the file to the beginning of the current line, and return this line. ! The file is assumed to be opened. ! This is the STREAM version (see also [[get_current_line_from_file_sequential]]). subroutine get_current_line_from_file_stream ( json , iunit , line ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: iunit !! file unit number character ( kind = CK , len = :), allocatable , intent ( out ) :: line !! current line integer ( IK ) :: istart !! start position of current line integer ( IK ) :: iend !! end position of current line integer ( IK ) :: ios !! file read `iostat` code character ( kind = CK , len = 1 ) :: c !! a character read from the file logical :: done !! flag to exit the loop istart = json % ipos do if ( istart <= 1 ) then istart = 1 exit end if read ( iunit , pos = istart , iostat = ios ) c done = ios /= 0_IK if (. not . done ) done = c == newline if ( done ) then if ( istart /= 1 ) istart = istart - 1 exit end if istart = istart - 1 !rewind until the beginning of the line end do iend = json % ipos do read ( iunit , pos = iend , iostat = ios ) c if ( IS_IOSTAT_END ( ios )) then ! account for end of file without linebreak iend = iend - 1 exit end if if ( c == newline . or . ios /= 0 ) exit iend = iend + 1 end do allocate ( character ( kind = CK , len = iend - istart + 1 ) :: line ) read ( iunit , pos = istart , iostat = ios ) line end subroutine get_current_line_from_file_stream !***************************************************************************************** !***************************************************************************************** !> ! Core parsing routine. recursive subroutine parse_value ( json , unit , str , value ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: unit !! file unit number character ( kind = CK , len =* ), intent ( in ) :: str !! string containing JSON !! data (only used if `unit=0`) type ( json_value ), pointer :: value !! JSON data that is extracted logical ( LK ) :: eof !! end-of-file flag character ( kind = CK , len = 1 ) :: c !! character read from file !! (or string) by [[pop_char]] #if defined __GFORTRAN__ character ( kind = CK , len = :), allocatable :: tmp !! this is a work-around for a bug !! in the gfortran 4.9 compiler. #endif if (. not . json % exception_thrown ) then !the routine is being called incorrectly. if (. not . associated ( value )) then call json % throw_exception ( 'Error in parse_value: value pointer not associated.' ) return end if ! pop the next non whitespace character off the file call json % pop_char ( unit , str = str , eof = eof , skip_ws = . true ., & skip_comments = json % allow_comments , popped = c ) if ( eof ) then return else select case ( c ) case ( start_object ) ! start object call json % to_object ( value ) !allocate class call json % parse_object ( unit , str , value , expecting_next_element = . false .) case ( start_array ) ! start array call json % to_array ( value ) !allocate class call json % parse_array ( unit , str , value ) case ( end_array ) ! end an empty array call json % push_char ( c ) if ( associated ( value )) then deallocate ( value ) nullify ( value ) end if case ( quotation_mark ) ! string call json % to_string ( value ) !allocate class select case ( value % var_type ) case ( json_string ) #if defined __GFORTRAN__ ! write to a tmp variable because of ! a bug in 4.9 gfortran compiler. call json % parse_string ( unit , str , tmp ) value % str_value = tmp if ( allocated ( tmp )) deallocate ( tmp ) #else call json % parse_string ( unit , str , value % str_value ) #endif end select case ( CK_ 't' ) !true_str(1:1) gfortran bug work around !true call json % parse_for_chars ( unit , str , true_str ( 2 :)) !allocate class and set value: if (. not . json % exception_thrown ) call json % to_logical ( value ,. true .) case ( CK_ 'f' ) !false_str(1:1) gfortran bug work around !false call json % parse_for_chars ( unit , str , false_str ( 2 :)) !allocate class and set value: if (. not . json % exception_thrown ) call json % to_logical ( value ,. false .) case ( CK_ 'n' ) !null_str(1:1) gfortran bug work around !null call json % parse_for_chars ( unit , str , null_str ( 2 :)) if (. not . json % exception_thrown ) call json % to_null ( value ) ! allocate class case ( CK_ '-' , CK_ '0' : CK_ '9' , CK_ '.' , CK_ '+' ) call json % push_char ( c ) call json % parse_number ( unit , str , value ) case default call json % throw_exception ( 'Error in parse_value:' // & ' Unexpected character while parsing value. \"' // & c // '\"' ) end select end if end if end subroutine parse_value !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Allocate a [[json_value]] pointer and make it a logical(LK) variable. ! The pointer should not already be allocated. ! !### Example !````fortran ! type(json_value),pointer :: p ! type(json_core) :: json ! call json%create_logical(p,'value',.true.) !```` subroutine json_value_create_logical ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p logical ( LK ), intent ( in ) :: val !! variable value character ( kind = CK , len =* ), intent ( in ) :: name !! variable name call json_value_create ( p ) call json % to_logical ( p , val , name ) end subroutine json_value_create_logical !***************************************************************************************** !***************************************************************************************** !> author: Izaak Beekman ! ! Wrapper for [[json_value_create_logical]] so `create_logical` method can ! be called with name of character kind 'DEFAULT' or 'ISO_10646' subroutine wrap_json_value_create_logical ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p logical ( LK ), intent ( in ) :: val character ( kind = CDK , len =* ), intent ( in ) :: name call json % create_logical ( p , val , to_unicode ( name )) end subroutine wrap_json_value_create_logical !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Allocate a [[json_value]] pointer and make it an integer(IK) variable. ! The pointer should not already be allocated. ! !### Example !````fortran ! type(json_value),pointer :: p ! type(json_core) :: json ! call json%create_integer(p,'value',1) !```` subroutine json_value_create_integer ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p integer ( IK ), intent ( in ) :: val character ( kind = CK , len =* ), intent ( in ) :: name call json_value_create ( p ) call json % to_integer ( p , val , name ) end subroutine json_value_create_integer !***************************************************************************************** !***************************************************************************************** !> author: Izaak Beekman ! ! A wrapper procedure for [[json_value_create_integer]] so that `create_integer` ! method may be called with either a 'DEFAULT' or 'ISO_10646' character kind ! `name` actual argument. subroutine wrap_json_value_create_integer ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p integer ( IK ), intent ( in ) :: val character ( kind = CDK , len =* ), intent ( in ) :: name call json % create_integer ( p , val , to_unicode ( name )) end subroutine wrap_json_value_create_integer !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Allocate a [[json_value]] pointer and make it a real(RK) variable. ! The pointer should not already be allocated. ! !### Example !````fortran ! type(json_value),pointer :: p ! type(json_core) :: json ! call json%create_real(p,'value',1.0_RK) !```` subroutine json_value_create_real ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p real ( RK ), intent ( in ) :: val character ( kind = CK , len =* ), intent ( in ) :: name call json_value_create ( p ) call json % to_real ( p , val , name ) end subroutine json_value_create_real !***************************************************************************************** !***************************************************************************************** !> author: Izaak Beekman ! ! A wrapper for [[json_value_create_real]] so that `create_real` method ! may be called with an actual argument corresponding to the dummy argument, ! `name` that may be of 'DEFAULT' or 'ISO_10646' character kind. subroutine wrap_json_value_create_real ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p real ( RK ), intent ( in ) :: val character ( kind = CDK , len =* ), intent ( in ) :: name call json % create_real ( p , val , to_unicode ( name )) end subroutine wrap_json_value_create_real !***************************************************************************************** #ifndef REAL32 !***************************************************************************************** !> ! Alternate version of [[json_value_create_real]] where val=real32. ! !@note The value is converted into a `real(RK)` variable internally. subroutine json_value_create_real32 ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p real ( real32 ), intent ( in ) :: val character ( kind = CK , len =* ), intent ( in ) :: name call json % create_real ( p , real ( val , RK ), name ) end subroutine json_value_create_real32 !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_create_real32]] where \"name\" is kind(CDK). subroutine wrap_json_value_create_real32 ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p real ( real32 ), intent ( in ) :: val character ( kind = CDK , len =* ), intent ( in ) :: name call json % create_real ( p , val , to_unicode ( name )) end subroutine wrap_json_value_create_real32 !***************************************************************************************** #endif #ifdef REAL128 !***************************************************************************************** !> ! Alternate version of [[json_value_create_real]] where val=real64. ! !@note The value is converted into a `real(RK)` variable internally. subroutine json_value_create_real64 ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p real ( real64 ), intent ( in ) :: val character ( kind = CK , len =* ), intent ( in ) :: name call json % create_real ( p , real ( val , RK ), name ) end subroutine json_value_create_real64 !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_create_real64]] where \"name\" is kind(CDK). subroutine wrap_json_value_create_real64 ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p real ( real64 ), intent ( in ) :: val character ( kind = CDK , len =* ), intent ( in ) :: name call json % create_real ( p , val , to_unicode ( name )) end subroutine wrap_json_value_create_real64 !***************************************************************************************** #endif !***************************************************************************************** !> author: Jacob Williams ! ! Allocate a json_value pointer and make it a string variable. ! The pointer should not already be allocated. ! !### Example !````fortran ! type(json_value),pointer :: p ! type(json_core) :: json ! call json%create_string(p,'value','hello') !```` subroutine json_value_create_string ( json , p , val , name , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: val character ( kind = CK , len =* ), intent ( in ) :: name logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` call json_value_create ( p ) call json % to_string ( p , val , name , trim_str , adjustl_str ) end subroutine json_value_create_string !***************************************************************************************** !***************************************************************************************** !> author: Izaak Beekman ! ! Wrap [[json_value_create_string]] so that `create_string` method may be called ! with actual character string arguments for `name` and `val` that are BOTH of ! 'DEFAULT' or 'ISO_10646' character kind. subroutine wrap_json_value_create_string ( json , p , val , name , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: val character ( kind = CDK , len =* ), intent ( in ) :: name logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` call json % create_string ( p , to_unicode ( val ), to_unicode ( name ), trim_str , adjustl_str ) end subroutine wrap_json_value_create_string !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Allocate a json_value pointer and make it a null variable. ! The pointer should not already be allocated. ! !### Example !````fortran ! type(json_value),pointer :: p ! type(json_core) :: json ! call json%create_null(p,'value') !```` subroutine json_value_create_null ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name call json_value_create ( p ) call json % to_null ( p , name ) end subroutine json_value_create_null !***************************************************************************************** !***************************************************************************************** !> author: Izaak Beekman ! ! Wrap [[json_value_create_null]] so that `create_null` method may be called with ! an actual argument corresponding to the dummy argument `name` that is either ! of 'DEFAULT' or 'ISO_10646' character kind. subroutine wrap_json_value_create_null ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name call json % create_null ( p , to_unicode ( name )) end subroutine wrap_json_value_create_null !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Allocate a [[json_value]] pointer and make it an object variable. ! The pointer should not already be allocated. ! !### Example !````fortran ! type(json_value),pointer :: p ! type(json_core) :: json ! call json%create_object(p,'objectname') !```` ! !@note The name is not significant for the root structure or an array element. ! In those cases, an empty string can be used. subroutine json_value_create_object ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name call json_value_create ( p ) call json % to_object ( p , name ) end subroutine json_value_create_object !***************************************************************************************** !***************************************************************************************** !> author: Izaak Beekman ! ! Wrap [[json_value_create_object]] so that `create_object` method may be called ! with an actual argument corresponding to the dummy argument `name` that is of ! either 'DEFAULT' or 'ISO_10646' character kind. subroutine wrap_json_value_create_object ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name call json % create_object ( p , to_unicode ( name )) end subroutine wrap_json_value_create_object !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Allocate a [[json_value]] pointer and make it an array variable. ! The pointer should not already be allocated. ! !### Example !````fortran ! type(json_value),pointer :: p ! type(json_core) :: json ! call json%create_array(p,'arrayname') !```` subroutine json_value_create_array ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name call json_value_create ( p ) call json % to_array ( p , name ) end subroutine json_value_create_array !***************************************************************************************** !***************************************************************************************** !> author: Izaak Beekman ! ! A wrapper for [[json_value_create_array]] so that `create_array` method may be ! called with an actual argument, corresponding to the dummy argument `name`, ! that is either of 'DEFAULT' or 'ISO_10646' character kind. subroutine wrap_json_value_create_array ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name call json % create_array ( p , to_unicode ( name )) end subroutine wrap_json_value_create_array !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Change the [[json_value]] variable to a logical. subroutine to_logical ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p logical ( LK ), intent ( in ), optional :: val !! if the value is also to be set !! (if not present, then .false. is used). character ( kind = CK , len =* ), intent ( in ), optional :: name !! if the name is also to be changed. !set type and value: call destroy_json_data ( p ) p % var_type = json_logical allocate ( p % log_value ) if ( present ( val )) then p % log_value = val else p % log_value = . false . !default value end if !name: if ( present ( name )) call json % rename ( p , name ) end subroutine to_logical !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Change the [[json_value]] variable to an integer. subroutine to_integer ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p integer ( IK ), intent ( in ), optional :: val !! if the value is also to be set !! (if not present, then 0 is used). character ( kind = CK , len =* ), intent ( in ), optional :: name !! if the name is also to be changed. !set type and value: call destroy_json_data ( p ) p % var_type = json_integer allocate ( p % int_value ) if ( present ( val )) then p % int_value = val else p % int_value = 0_IK !default value end if !name: if ( present ( name )) call json % rename ( p , name ) end subroutine to_integer !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Change the [[json_value]] variable to a real. subroutine to_real ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p real ( RK ), intent ( in ), optional :: val !! if the value is also to be set !! (if not present, then 0.0_rk is used). character ( kind = CK , len =* ), intent ( in ), optional :: name !! if the name is also to be changed. !set type and value: call destroy_json_data ( p ) p % var_type = json_real allocate ( p % dbl_value ) if ( present ( val )) then p % dbl_value = val else p % dbl_value = 0.0_RK !default value end if !name: if ( present ( name )) call json % rename ( p , name ) end subroutine to_real !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Change the [[json_value]] variable to a string. ! !### Modified ! * Izaak Beekman : 02/24/2015 subroutine to_string ( json , p , val , name , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ), optional :: val !! if the value is also to be set !! (if not present, then '' is used). character ( kind = CK , len =* ), intent ( in ), optional :: name !! if the name is also to be changed. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` !! (only used if `val` is present) logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (only used if `val` is present) !! (note that ADJUSTL is done before TRIM) character ( kind = CK , len = :), allocatable :: str !! temp string for `trim()` and/or `adjustl()` logical :: trim_string !! if the string is to be trimmed logical :: adjustl_string !! if the string is to be adjusted left !set type and value: call destroy_json_data ( p ) p % var_type = json_string if ( present ( val )) then if ( present ( trim_str )) then trim_string = trim_str else trim_string = . false . end if if ( present ( adjustl_str )) then adjustl_string = adjustl_str else adjustl_string = . false . end if if ( trim_string . or . adjustl_string ) then str = val if ( adjustl_string ) str = adjustl ( str ) if ( trim_string ) str = trim ( str ) p % str_value = str else p % str_value = val end if else p % str_value = CK_ '' ! default value end if !name: if ( present ( name )) call json % rename ( p , name ) end subroutine to_string !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Change the [[json_value]] variable to a null. subroutine to_null ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ), optional :: name !! if the name is also to be changed. !set type and value: call destroy_json_data ( p ) p % var_type = json_null !name: if ( present ( name )) call json % rename ( p , name ) end subroutine to_null !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Change the [[json_value]] variable to an object. subroutine to_object ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ), optional :: name !! if the name is also to be changed. !set type and value: call destroy_json_data ( p ) p % var_type = json_object !name: if ( present ( name )) call json % rename ( p , name ) end subroutine to_object !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Change the [[json_value]] variable to an array. subroutine to_array ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ), optional :: name !! if the name is also to be changed. !set type and value: call destroy_json_data ( p ) p % var_type = json_array !name: if ( present ( name )) call json % rename ( p , name ) end subroutine to_array !***************************************************************************************** !***************************************************************************************** !> ! Core parsing routine. recursive subroutine parse_object ( json , unit , str , parent , expecting_next_element ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: unit !! file unit number (if parsing from a file) character ( kind = CK , len =* ), intent ( in ) :: str !! JSON string (if parsing from a string) type ( json_value ), pointer :: parent !! the parsed object will be added as a child of this logical ( LK ), intent ( in ) :: expecting_next_element !! if true, this object is preceeded by a comma, so !! we expect a valid object to exist. used to check !! for trailing delimiters. type ( json_value ), pointer :: pair !! temp variable logical ( LK ) :: eof !! end of file flag character ( kind = CK , len = 1 ) :: c !! character returned by [[pop_char]] #if defined __GFORTRAN__ character ( kind = CK , len = :), allocatable :: tmp !! this is a work-around for a bug !! in the gfortran 4.9 compiler. #endif if (. not . json % exception_thrown ) then !the routine is being called incorrectly. if (. not . associated ( parent )) then call json % throw_exception ( 'Error in parse_object: parent pointer not associated.' ) end if nullify ( pair ) !probably not necessary ! pair name call json % pop_char ( unit , str = str , eof = eof , skip_ws = . true ., & skip_comments = json % allow_comments , popped = c ) if ( eof ) then call json % throw_exception ( 'Error in parse_object:' // & ' Unexpected end of file while parsing start of object.' ) return else if ( end_object == c ) then ! end of an empty object if ( expecting_next_element . and . . not . json % allow_trailing_comma ) then ! this is a dangling comma. call json % throw_exception ( 'Error in parse_object: ' // & 'Dangling comma when parsing an object.' ) end if return else if ( quotation_mark == c ) then call json_value_create ( pair ) #if defined __GFORTRAN__ call json % parse_string ( unit , str , tmp ) ! write to a tmp variable because of pair % name = tmp ! a bug in 4.9 gfortran compiler. deallocate ( tmp ) #else call json % parse_string ( unit , str , pair % name ) #endif if ( json % exception_thrown ) then call json % destroy ( pair ) return end if else call json % throw_exception ( 'Error in parse_object: Expecting string: \"' // c // '\"' ) return end if ! pair value call json % pop_char ( unit , str = str , eof = eof , skip_ws = . true ., & skip_comments = json % allow_comments , popped = c ) if ( eof ) then call json % destroy ( pair ) call json % throw_exception ( 'Error in parse_object:' // & ' Unexpected end of file while parsing object member.' ) return else if ( colon_char == c ) then ! parse the value call json % parse_value ( unit , str , pair ) if ( json % exception_thrown ) then call json % destroy ( pair ) return else call json % add ( parent , pair ) end if else call json % destroy ( pair ) call json % throw_exception ( 'Error in parse_object:' // & ' Expecting : and then a value: ' // c ) return end if ! another possible pair call json % pop_char ( unit , str = str , eof = eof , skip_ws = . true ., & skip_comments = json % allow_comments , popped = c ) if ( eof ) then call json % throw_exception ( 'Error in parse_object: ' // & 'End of file encountered when parsing an object' ) return else if ( delimiter == c ) then ! read the next member call json % parse_object ( unit = unit , str = str , parent = parent , & expecting_next_element = . true .) else if ( end_object == c ) then ! end of object return else call json % throw_exception ( 'Error in parse_object: Expecting end of object: ' // c ) return end if end if end subroutine parse_object !***************************************************************************************** !***************************************************************************************** !> ! Core parsing routine. recursive subroutine parse_array ( json , unit , str , array ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: unit !! file unit number (if parsing from a file) character ( kind = CK , len =* ), intent ( in ) :: str !! JSON string (if parsing from a string) type ( json_value ), pointer :: array type ( json_value ), pointer :: element !! temp variable for array element logical ( LK ) :: eof !! end of file flag character ( kind = CK , len = 1 ) :: c !! character returned by [[pop_char]] logical ( LK ) :: expecting_next_element !! to check for trailing delimiters expecting_next_element = . false . do if ( json % exception_thrown ) exit ! try to parse an element value nullify ( element ) call json_value_create ( element ) call json % parse_value ( unit , str , element ) if ( json % exception_thrown ) then if ( associated ( element )) call json % destroy ( element ) exit end if ! parse value will deallocate an empty array value if ( associated ( element )) then expecting_next_element = . false . call json % add ( array , element ) end if ! popped the next character call json % pop_char ( unit , str = str , eof = eof , skip_ws = . true ., & skip_comments = json % allow_comments , popped = c ) if ( eof ) then ! The file ended before array was finished: call json % throw_exception ( 'Error in parse_array: ' // & 'End of file encountered when parsing an array.' ) exit else if ( delimiter == c ) then ! parse the next element expecting_next_element = . true . cycle else if ( end_array == c ) then ! end of array if ( expecting_next_element . and . . not . json % allow_trailing_comma ) then ! this is a dangling comma. call json % throw_exception ( 'Error in parse_array: ' // & 'Dangling comma when parsing an array.' ) end if exit else call json % throw_exception ( 'Error in parse_array: ' // & 'Unexpected character encountered when parsing array.' ) exit end if end do end subroutine parse_array !***************************************************************************************** !***************************************************************************************** !> ! Parses a string while reading a JSON file. ! !### History ! * Jacob Williams : 6/16/2014 : Added hex validation. ! * Jacob Williams : 12/3/2015 : Fixed some bugs. ! * Jacob Williams : 8/23/2015 : `string` is now returned unescaped. ! * Jacob Williams : 7/21/2018 : moved hex validate to [[unescape_string]]. subroutine parse_string ( json , unit , str , string ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: unit !! file unit number (if !! parsing from a file) character ( kind = CK , len =* ), intent ( in ) :: str !! JSON string (if parsing !! from a string) character ( kind = CK , len = :), allocatable , intent ( out ) :: string !! the string (unescaped !! if necessary) logical ( LK ) :: eof !! end of file flag logical ( LK ) :: escape !! for escape string parsing character ( kind = CK , len = 1 ) :: c !! character returned by [[pop_char]] integer ( IK ) :: ip !! index to put next character, !! to speed up by reducing the number !! of character string reallocations. character ( kind = CK , len = :), allocatable :: error_message !! for string unescaping !at least return a blank string if there is a problem: string = blank_chunk if (. not . json % exception_thrown ) then !initialize: escape = . false . ip = 1 do !get the next character from the file: call json % pop_char ( unit , str = str , eof = eof , skip_ws = . false ., popped = c ) if ( eof ) then call json % throw_exception ( 'Error in parse_string: Expecting end of string' ) return else if ( c == quotation_mark . and . . not . escape ) then !end of string exit else !if the string is not big enough, then add another chunk: if ( ip > len ( string )) string = string // blank_chunk !append to string: string ( ip : ip ) = c ip = ip + 1 ! check for escape character, so we don't ! exit prematurely if escaping a quotation ! character: if ( escape ) then escape = . false . else escape = ( c == backslash ) end if end if end do !trim the string if necessary: if ( ip < len ( string ) + 1 ) then if ( ip == 1 ) then string = CK_ '' else string = string ( 1 : ip - 1 ) end if end if ! string is returned unescaped: ! (this will also validate any hex strings present) call unescape_string ( string , error_message ) if ( allocated ( error_message )) then call json % throw_exception ( error_message ) deallocate ( error_message ) !cleanup end if end if end subroutine parse_string !***************************************************************************************** !***************************************************************************************** !> ! Core parsing routine. ! ! This is used to verify the strings `true`, `false`, and `null` during parsing. subroutine parse_for_chars ( json , unit , str , chars ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: unit !! file unit number (if parsing from a file) character ( kind = CK , len =* ), intent ( in ) :: str !! JSON string (if parsing from a string) character ( kind = CK , len =* ), intent ( in ) :: chars !! the string to check for. integer ( IK ) :: i !! counter integer ( IK ) :: length !! trimmed length of `chars` logical ( LK ) :: eof !! end of file flag character ( kind = CK , len = 1 ) :: c !! character returned by [[pop_char]] if (. not . json % exception_thrown ) then length = len_trim ( chars ) do i = 1 , length call json % pop_char ( unit , str = str , eof = eof , skip_ws = . false ., popped = c ) if ( eof ) then call json % throw_exception ( 'Error in parse_for_chars:' // & ' Unexpected end of file while parsing.' ) return else if ( c /= chars ( i : i )) then call json % throw_exception ( 'Error in parse_for_chars:' // & ' Unexpected character: \"' // c // '\" (expecting \"' // & chars ( i : i ) // '\")' ) return end if end do end if end subroutine parse_for_chars !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/20/2014 ! ! Read a numerical value from the file (or string). ! The routine will determine if it is an integer or a real, and ! allocate the type accordingly. ! !@note Complete rewrite of the original FSON routine, which had some problems. subroutine parse_number ( json , unit , str , value ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: unit !! file unit number (if parsing from a file) character ( kind = CK , len =* ), intent ( in ) :: str !! JSON string (if parsing from a string) type ( json_value ), pointer :: value character ( kind = CK , len = :), allocatable :: tmp !! temp string character ( kind = CK , len = :), allocatable :: saved_err_message !! temp error message for !! string to int conversion character ( kind = CK , len = 1 ) :: c !! character returned by [[pop_char]] logical ( LK ) :: eof !! end of file flag real ( RK ) :: rval !! real value integer ( IK ) :: ival !! integer value logical ( LK ) :: first !! first character logical ( LK ) :: is_integer !! it is an integer integer ( IK ) :: ip !! index to put next character !! [to speed up by reducing the number !! of character string reallocations] if (. not . json % exception_thrown ) then tmp = blank_chunk ip = 1 first = . true . is_integer = . true . !assume it may be an integer, unless otherwise determined !read one character at a time and accumulate the string: do !get the next character: call json % pop_char ( unit , str = str , eof = eof , skip_ws = . true ., popped = c ) select case ( c ) case ( CK_ '-' , CK_ '+' ) !note: allowing a '+' as the first character here. if ( is_integer . and . (. not . first )) is_integer = . false . !add it to the string: !tmp = tmp // c !...original if ( ip > len ( tmp )) tmp = tmp // blank_chunk tmp ( ip : ip ) = c ip = ip + 1 case ( CK_ '.' , CK_ 'E' , CK_ 'e' , CK_ 'D' , CK_ 'd' ) !can be present in real numbers if ( is_integer ) is_integer = . false . !add it to the string: !tmp = tmp // c !...original if ( ip > len ( tmp )) tmp = tmp // blank_chunk tmp ( ip : ip ) = c ip = ip + 1 case ( CK_ '0' : CK_ '9' ) !valid characters for numbers !add it to the string: !tmp = tmp // c !...original if ( ip > len ( tmp )) tmp = tmp // blank_chunk tmp ( ip : ip ) = c ip = ip + 1 case default !push back the last character read: call json % push_char ( c ) !string to value: if ( is_integer ) then ! it is an integer: ival = json % string_to_int ( tmp ) if ( json % exception_thrown . and . . not . json % strict_integer_type_checking ) then ! if it couldn't be converted to an integer, ! then try to convert it to a real value and see if that works saved_err_message = json % err_message ! keep the original error message call json % clear_exceptions () ! clear exceptions rval = json % string_to_dble ( tmp ) if ( json % exception_thrown ) then ! restore original error message and continue json % err_message = saved_err_message call json % to_integer ( value , ival ) ! just so we have something else ! in this case, we return a real call json % to_real ( value , rval ) end if else call json % to_integer ( value , ival ) end if else ! it is a real: rval = json % string_to_dble ( tmp ) call json % to_real ( value , rval ) end if exit !finished end select if ( first ) first = . false . end do !cleanup: if ( allocated ( tmp )) deallocate ( tmp ) end if end subroutine parse_number !***************************************************************************************** !***************************************************************************************** !> ! Get the next character from the file (or string). ! !### See also ! * [[push_char]] ! !@note This routine ignores non-printing ASCII characters ! (`iachar<=31`) that are in strings. subroutine pop_char ( json , unit , str , skip_ws , skip_comments , eof , popped ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: unit !! file unit number (if parsing !! from a file) character ( kind = CK , len =* ), intent ( in ) :: str !! JSON string (if parsing from a !! string) -- only used if `unit=0` logical ( LK ), intent ( in ), optional :: skip_ws !! to ignore whitespace [default False] logical ( LK ), intent ( in ), optional :: skip_comments !! to ignore comment lines [default False] logical ( LK ), intent ( out ) :: eof !! true if the end of the file has !! been reached. character ( kind = CK , len = 1 ), intent ( out ) :: popped !! the popped character returned integer ( IK ) :: ios !! `iostat` flag integer ( IK ) :: str_len !! length of `str` character ( kind = CK , len = 1 ) :: c !! a character read from the file (or string) logical ( LK ) :: ignore !! if whitespace is to be ignored logical ( LK ) :: ignore_comments !! if comment lines are to be ignored logical ( LK ) :: parsing_comment !! if we are in the process !! of parsing a comment line if (. not . json % exception_thrown ) then eof = . false . if (. not . present ( skip_ws )) then ignore = . false . else ignore = skip_ws end if parsing_comment = . false . if (. not . present ( skip_comments )) then ignore_comments = . false . else ignore_comments = skip_comments end if do if ( json % pushed_index > 0 ) then ! there is a character pushed back on, most likely ! from the number parsing. Note: this can only occur if ! reading from a file when use_unformatted_stream=.false. c = json % pushed_char ( json % pushed_index : json % pushed_index ) json % pushed_index = json % pushed_index - 1 else if ( unit /= 0 ) then !read from the file !read the next character: if ( use_unformatted_stream ) then ! in this case, we read the file in chunks. ! if we already have the character we need, ! then get it from the chunk. Otherwise, ! read in another chunk. if ( json % ichunk < 1 ) then ! read in a chunk: json % ichunk = 0 if ( json % filesize < json % ipos + len ( json % chunk ) - 1 ) then ! for the last chunk, we resize ! it to the correct size: json % chunk = repeat ( space , json % filesize - json % ipos + 1 ) end if read ( unit = unit , pos = json % ipos , iostat = ios ) json % chunk else ios = 0 end if json % ichunk = json % ichunk + 1 if ( json % ichunk > len ( json % chunk )) then ! check this just in case ios = IOSTAT_END else ! get the next character from the chunk: c = json % chunk ( json % ichunk : json % ichunk ) if ( json % ichunk == len ( json % chunk )) then json % ichunk = 0 ! reset for next chunk end if end if else ! a formatted read: read ( unit = unit , fmt = '(A1)' , advance = 'NO' , iostat = ios ) c end if json % ipos = json % ipos + 1 else !read from the string str_len = len ( str ) !length of the string if ( json % ipos <= str_len ) then c = str ( json % ipos : json % ipos ) ios = 0 else ios = IOSTAT_END !end of the string end if json % ipos = json % ipos + 1 end if json % char_count = json % char_count + 1 !character count in the current line if ( IS_IOSTAT_END ( ios )) then !end of file ! no character to return json % char_count = 0 eof = . true . popped = space ! just to set a value exit else if ( IS_IOSTAT_EOR ( ios ) . or . c == newline ) then !end of record json % char_count = 0 json % line_count = json % line_count + 1 if ( ignore_comments ) parsing_comment = . false . ! done parsing this comment line cycle end if end if if ( ignore_comments . and . ( parsing_comment . or . scan ( c , json % comment_char , kind = IK ) > 0_IK ) ) then ! skipping the comment parsing_comment = . true . cycle else if ( any ( c == control_chars )) then ! non printing ascii characters cycle else if ( ignore . and . c == space ) then ! ignoring whitespace cycle else ! return the character popped = c exit end if end do end if end subroutine pop_char !***************************************************************************************** !***************************************************************************************** !> ! Core routine. ! !### See also ! * [[pop_char]] ! !### History ! * Jacob Williams : 5/3/2015 : replaced original version of this routine. subroutine push_char ( json , c ) implicit none class ( json_core ), intent ( inout ) :: json character ( kind = CK , len = 1 ), intent ( in ) :: c !! to character to push character ( kind = CK , len = max_numeric_str_len ) :: istr !! for error printing if (. not . json % exception_thrown ) then if ( use_unformatted_stream ) then !in this case, c is ignored, and we just !decrement the stream position counter: json % ipos = json % ipos - 1 json % ichunk = json % ichunk - 1 else json % pushed_index = json % pushed_index + 1 if ( json % pushed_index > 0 . and . json % pushed_index <= len ( json % pushed_char )) then json % pushed_char ( json % pushed_index : json % pushed_index ) = c else call integer_to_string ( json % pushed_index , int_fmt , istr ) call json % throw_exception ( 'Error in push_char: ' // & 'invalid valid of pushed_index: ' // trim ( istr )) end if end if !character count in the current line json % char_count = json % char_count - 1 end if end subroutine push_char !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Print any error message, and then clear the exceptions. ! !@note This routine is used by the unit tests. ! It was originally in json_example.f90, and was ! moved here 2/26/2015 by Izaak Beekman. subroutine json_print_error_message ( json , io_unit ) implicit none class ( json_core ), intent ( inout ) :: json integer , intent ( in ), optional :: io_unit !! unit number for !! printing error message character ( kind = CK , len = :), allocatable :: error_msg !! error message logical :: status_ok !! false if there were any errors thrown !get error message: call json % check_for_errors ( status_ok , error_msg ) !print it if there is one: if (. not . status_ok ) then if ( present ( io_unit )) then write ( io_unit , '(A)' ) error_msg else write ( output_unit , '(A)' ) error_msg end if deallocate ( error_msg ) call json % clear_exceptions () end if end subroutine json_print_error_message !***************************************************************************************** !***************************************************************************************** end module json_value_module !*****************************************************************************************","tags":"","loc":"sourcefile/json_value_module.f90.html"},{"title":"Other Docs – JSON-Fortran","text":"Current Stable Release The latest stable release is 8.5.2 . 1 Past Releases Documentation for official, tagged releases can be found here , including the changelog , and download\nlinks. Development Documentation Additional documentation useful to JSON -Fortran contributors can be\nfound here , including contributing guidelines\nand test coverage reports. General Documentation A README , the same one that’s posted on GitHub , can be found here . Documentation pages for a specific release do not contain links\nback to this page and the master documentation. Please use your\nbrowser’s back button to navigate back to https://jacobwilliams.github.com/json-fortran/ . ↩","tags":"","loc":"page/index.html"},{"title":"Github README – JSON-Fortran","text":"JSON -Fortran: A Modern Fortran JSON API Table of Contents JSON -Fortran Status Brief description Download Building the library Documentation Contributing License Miscellaneous Status Take a look at the CHANGELOG for a list of changes since the latest release. top Brief description JSON -Fortran is a user-friendly, thread-safe, and object-oriented API for reading and writing JSON files, written in modern Fortran. top Download Download the official versioned releases here .\nOr, get the latest development code from the master branch here . NEWS: As of June 7, 2015, json-fortran can be\ndownloaded and installed with the homebrew package\nmanager on Mac OS X. Once homebrew is installed,\nmake sure that the formulae are up to date, view the package options\nand caveats, and install the json-fortran formula : brew update\nbrew info json-fortran\nbrew install --with-unicode-support json-fortran Please note , if you wish to support usage of JSON -Fortran with\nmultiple Fortran compilers, please follow the CMake installation\ninstructions below, as the homebrew installation is only intended to\nsupport a single Fortran compiler. Cheers! NEWS: As of January 20, 2022, json-fortran can be\ndownloaded and installed via the conda package manager on Mac OS X and Linux. Once a conda-distribution, like miniforge , is installed\nthe json-fortran package can be installed. conda install --channel conda-forge json-fortran Note: Packages on conda-forge are build with GCC 9.4 which is upwards\ncompatible with newer GCC versions, but not with other Fortran compilers. Package status from Repology top Building the library The code requires a Fortran compiler that supports\nvarious Fortran 2003 and Fortran 2008 features such as: allocatable\nstrings, newunit , generic , class , and abstract interface .\nIt has been successfully compiled with the Intel Fortran compiler\n13.1.0 (and greater) and the GNU gfortran\ncompiler [4.9 and greater]. It has also\nbeen reported that the library can be built (using the CMake build\nscript) with the NAG Fortran compiler 6.0 Currently, several ways are provided to build the JSON -fortran library\n(libjsonfortran). A build script, build.sh is provided in the project root directory. This script uses FoBiS to build the JSON -Fortran library and the unit tests on Unix-like systems. Edit the script to use either the Intel Fortran Compiler or Gfortran . Note that version 1.2.5 of FoBiS (or later) is required. A FoBiS configuration file ( json-fortran.fobis ) is also provided that can also build the library and examples. Use the mode flag to indicate what to build. For example: To build all the examples using gfortran: FoBiS.py build -f json-fortran.fobis -mode tests-gnu To build all the examples using ifort: FoBiS.py build -f json-fortran.fobis -mode tests-intel To build a static library using gfortran: FoBiS.py build -f json-fortran.fobis -mode static-gnu To build a static library using ifort: FoBiS.py build -f json-fortran.fobis -mode static-intel The full set of modes are: static-gnu , static-gnu-debug , static-intel , static-intel-debug , shared-gnu , shared-gnu-debug , shared-intel , shared-intel-debug , tests-gnu , tests-gnu-debug , tests-intel , tests-intel-debug To generate the documentation using ford , run: FoBiS.py rule --execute makedoc -f json-fortran.fobis To run all the tests, run: FoBiS.py rule --execute tests -f json-fortran.fobis A Visual Studio project is included for building the library (and unit tests) on Windows with the Intel Fortran Compiler. The project has been tested with Visual Studio 2010 and 2013. A CMake build\nsystem is provided. This build system has been tested on Mac and Linux\nusing the Intel Fortran Compiler, gfortran 4.9, and NAG Fortran 6.0. It does also work on Windows (but note that the Visual Studio project it generates is not quite the same as the one mentioned above). This CMake based build provides an install target,\nand exports from both the install location and the build location so\nthat building and using JSON -Fortran in another CMake based project is\ntrivial. To get started with the CMake based build, set the\nenvironment variable FC to point to your Fortran compiler, and\ncreate a build directory. Then (cmake-gui|ccmake|cmake)\n/path/to/json-fortran-root to configure, make to build and make\ninstall to optionally install. You can also use make check to build and run the unit tests.\nAs long as the project is built with\nCMake, other CMake projects can find it and link against it. For example,\nif you have a second copy of the JSON -Fortran project tree, and want to build the unit tests\nlinking against those compiled/installed by the first copy: cmake_minimum_required ( VERSION 3.18 FATAL_ERROR ) enable_language ( Fortran ) project ( jf_test NONE ) find_package ( jsonfortran- ${ CMAKE_Fortran_COMPILER_ID } 8.5.1 REQUIRED ) file ( GLOB JF_TEST_SRCS \"src/tests/jf_test_*.F90\" ) foreach ( UNIT_TEST ${ JF_TEST_SRCS } ) get_filename_component ( TEST ${ UNIT_TEST } NAME_WE ) add_executable ( ${ TEST } ${ UNIT_TEST } ) target_link_libraries ( ${ TEST } jsonfortran::jsonfortran-static ) # or for linking against the dynamic/shared library: # target_link_libraries ( ${TEST} jsonfortran::jsonfortran ) # instead endforeach () A Fortran Package Manager file is also included, so that JSON -Fortran can be compiled with FPM. top Documentation The API documentation for the latest release version can be found here . The\ndocumentation can also be generated by processing the source files\nwith FORD . Note that both the\nshell script and CMake will also generate these files automatically in the documentation folder, assuming you have FORD installed. Some examples can also be found on the wiki . top Contributing Want to help? Take a quick look at our contributing guidelines then claim something and Fork. Commit. Pull request. top License The JSON -Fortran source code and related files and documentation are distributed under a permissive free software license (BSD-style). See the LICENSE file for more details. top Miscellaneous JSON -Fortran is a fork and extensive upgrade of the Fortran 95 FSON code. The reason for the split was to be able to incorporate object-oriented and other nice features of the Fortran 2003 and 2008 standards. Many thanks to the original authors of FSON. For more information about JSON , see: http://www.json.org/ json-fortran on Codecov.IO top","tags":"","loc":"page/README.html"},{"title":"Development Resources – JSON-Fortran","text":"This page is a place to collect resources which are useful to JSON -Fortran contributors and developers. Contributing The guidelines for contributing to JSON -Fortran can be found here . Please read these before posting issues or opening pull requests . Also,\nplease carefully read the LICENSE before using JSON -Fortran in an application, or contributing code. Test Coverage Information The best place to start when trying to increase test coverage, is to\nlook at the procedure level coverage report automatically generated by FoBiS.py . If all procedures are\nlisted as covered, then please take a look at the Codecov.io coverage info . Scripts Scripts used to build and test JSON -Fortran. This is a partial list of\nscripts used in building and testing JSON -Fortran, as well as\ndeploying documentation and managing test coverage information. build.sh CI.yml codecov.yml gccr.pl Release Checklist This is a\nchecklist of tasks to be performed when tagging a new release of JSON -Fortran. The current stable version is 8.5.2 .","tags":"","loc":"page/development-resources/index.html"},{"title":"CI.yml – JSON-Fortran","text":"This is the GitHub Actions script\nused to perform continuous integration testing for JSON -Fortran, and\ntrigger automatic documentation deployment. name : CI on : [ push , pull_request ] jobs : Build : runs - on : $ {{ matrix . os }} strategy : fail - fast : false matrix : os : [ ubuntu -20.04 ] gcc_v : [ 7 , 8 , 9 , 10 , 11 ] # Version of GFortran we want to use . python - version : [ 3.11 ] env : FC : gfortran - $ {{ matrix . gcc_v }} GCC_V : $ {{ matrix . gcc_v }} steps : - name : Set vars id : vars # run: echo ::set-output name=tag::${GITHUB_REF#refs /*/} # this is depreciated: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/ run: echo \"name=tag::${GITHUB_REF#refs/*/ }\" >> $GITHUB_OUTPUT - name : Checkout code uses : actions / checkout @ v4 .1.6 with : submodules : recursive - name : Setup cmake if : contains ( matrix . gcc_v , 9 ) uses : jwlawson / actions - setup - cmake @ v2 .0.2 with : cmake - version : ' 3.28 . x ' - name : Install Python uses : actions / setup - python @ v5 .1.0 # Use pip to install latest CMake , & FORD / Jin2For , etc . with : python - version : $ {{ matrix . python - version }} - name : Setup Graphviz uses : ts - graphviz / setup - graphviz @ v2 .0.2 - name : Install Python dependencies if : contains ( matrix . os , ' ubuntu ' ) run : | python - m pip install -- upgrade pip pip install ford FoBiS . py pygooglechart fpm if [ - f requirements . txt ]; then pip install - r requirements . txt ; fi - name : Install GFortran Linux if : contains ( matrix . os , ' ubuntu ' ) run : | sudo add - apt - repository ppa : ubuntu - toolchain - r / test sudo apt - get update sudo apt - get install - y gcc - $ { GCC_V } gfortran - $ { GCC_V } sudo update - alternatives -- install / usr / bin / gcc gcc / usr / bin / gcc - $ { GCC_V } 100 \\ -- slave / usr / bin / gfortran gfortran / usr / bin / gfortran - $ { GCC_V } \\ -- slave / usr / bin / gcov gcov / usr / bin / gcov - $ { GCC_V } - name : Compile_with_build if : matrix . gcc_v != 7 && matrix . gcc_v != 11 run : | GFORTRAN = gfortran - $ {{ matrix . gcc_v }} GCOV = gcov - $ {{ matrix . gcc_v }} # build with build.sh, run unit tests . / build . sh -- skip - documentation . / build . sh -- skip - documentation -- enable - unicode - name : Compile_with_FPM if : matrix . gcc_v == 11 run : | GFORTRAN = gfortran - $ {{ matrix . gcc_v }} GCOV = gcov - $ {{ matrix . gcc_v }} sudo apt update && sudo apt install - y valgrind fpm test jf_test_01 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_02 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_03 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_04 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_05 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_06 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_07 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_08 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_09 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_10 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_11 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_12 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_13 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_14 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_15 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_16 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_17 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_18 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_19 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_20 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_21 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_22 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_23 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_24 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_25 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_26 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_27 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_28 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_29 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_30 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_31 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_32 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_33 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_34 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_35 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_36 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_37 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_38 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_39 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_40 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_41 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_42 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_43 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_44 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_45 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_46 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_47 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_48 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_49 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_50 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_51 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" - name : Compile_with_cmake # CMake build with unit tests, no documentation, with coverage analysis # No unicode so that coverage combined with the build script will cover unicode # and non-unicode code paths if : matrix . gcc_v == 9 run : | GFORTRAN = gfortran - $ {{ matrix . gcc_v }} GCOV = gcov - $ {{ matrix . gcc_v }} mkdir cmake - build cd cmake - build cmake - D ENABLE_TESTS = ON .. make - j 4 check - name : Compile_with_build_mkdocs # build with build.sh, make documentation, run unit tests # and perform coverage analysis - used for doc deployment if : matrix . gcc_v == 7 run : | GFORTRAN = gfortran - $ {{ matrix . gcc_v }} GCOV = gcov - $ {{ matrix . gcc_v }} . / build . sh -- coverage -- skip - documentation . / build . sh -- coverage -- enable - unicode - name : Deploy Documentation for master if : matrix . gcc_v == 7 && github . ref == ' refs / heads / master ' uses : JamesIves / github - pages - deploy - action @4.1.3 with : branch : gh - pages # The branch the action should deploy to . folder : doc # The folder the action should deploy . clean : true clean - exclude : | prev - name : Rebuild documentation for tagged release env : TAGNAME : $ {{ steps . vars . outputs . tag }} if : matrix . gcc_v == 7 && startsWith ( github . ref , ' refs / tags / ' ) run : | echo $ { TAGNAME } rm - rf doc sed \"2 s/^/version: ${TAGNAME} \\n /\" json - fortran . md > json - fortran . tagged . md ford -- debug json - fortran . tagged . md - name : Deploy documentation for tagged release if : matrix . gcc_v == 7 && startsWith ( github . ref , ' refs / tags / ' ) uses : JamesIves / github - pages - deploy - action @ v4 .4.1 with : branch : gh - pages # The branch the action should deploy to . folder : doc # The folder the action should deploy . target - folder : prev / $ {{ steps . vars . outputs . tag }} # deploy to a version - specific folder - name : Upload coverage if : matrix . gcc_v == 7 run : | rm json_ * . F90 -* unicode . gcov || true mv json_ * . F90 . gcov src / mv jf_test * .[ fF ] 90. gcov src / tests / bash < ( curl - s https : //codecov.io/bash) -v -X $GCOV","tags":"","loc":"page/development-resources/CI.html"},{"title":"Contributing Guidelines – JSON-Fortran","text":"Contributing to JSON -Fortran Looking to contribute something to JSON -Fortran ? Here’s how you can help. Table of Contents Key Branches Filing issues Outstanding Work Pull Requests Coding Standards Key Branches master is the latest, development version and all efforts should be made to keep it stable. top Filing issues Before filing a new issue , please perform a search to see if that issue has already been filed by someone else, and whether or not a solution exists. If you are experiencing the same issue as one that’s already posted, please leave any additional comments and information under the existing issue. If your issue is related to a previous issue, but substantively different, file a new issue and include a mention of the related issue in text, using Jib’s # syntax. When filing an issue please try to include all of the following information Problem description: What behavior are you seeing that you think is erroneous Installation method: Did you build the code with one of the included build scripts? Some other way? Install from a binary package? What type of system you are on: E.g., 64 bit Intel Mac OS X 10.10.2 (Yosemite) or x86_64 Ubuntu 14.04 LTS (Trusty Tahr) If applicable, what compiler you used, and any non-standard options or configurations that were used. All steps required to reproduce the problem top Outstanding Work Take a look at the issues to see if there is an issue you’d like to help address. Issues with the ready label are issues that are ready to be dealt with. (i.e., They are not blocked by other dependencies and are higher priority.) Increasing the test coverage is another helpful way to\n contribute. Please take a look at the test coverage page for a list of uncovered procedures, and at the Codecov.io coverage status to find procedures and lines of code that are still uncovered by the unit tests . It\n is worth pointing out that the majority of uncovered procedures are\n internal, overloaded procedures and can only be exercised by calling\n the corresponding generic procedure with input arguments that will\n resolve to the specific procedure in question. Let’s keep the\n following graph trending upwards! top Pull Requests Try not to pollute your pull request with unintended changes–keep them simple and small Pull requests should address one issue at a time, and each commit should be a set of self contained, related changes. If you forget something in a commit, please use git rebase -i [^ to amend and/or squash erroneous commits. Here ][ is the reference to to oldest commit needing to be modified (SHA, or HEAD~4 , etc.) Each commit should compile, and ideally pass the tests. Very complicated new features or fixes, may have commits that don’t pass tests, if otherwise the commit history would include far to many changes in any given commit. Use an interactive rebase to fix any of these issues, as described above. Each commit should have a concise, descriptive message following the\n guidelines laid out here . Make sure to document your changes in the CHANGELOG under the ‘unreleased’ heading. Pull requests should always be based on the upstream master, jacobwilliams/json-fortran:master . Please rebase your branch on top\nof the latest upstream master. Assuming you are on your branch and you’ve added the upstream remote by running something like: git remote add upstream git://github.com/jacobwilliams/json-fortran.git You can accomplish this by running: git rebase upstream/master Create a branch in your fork with a descriptive name that also includes the issue number , if applicable. For example, after forking the repo, you can run something like git checkout -b Unicode-support-issue-35 before starting work on issue #35 : Unicode support When you’re content with your changes, your commits are clean, self contained, with concise descriptive messages, and your changes compile and pass the tests, submit a pull request. We will review your changes, and may ask for certain modifications to be made. Pull requests are tested by our GitHub Actions continuous integration system, and any errors uncovered will need to be fixed before the pull request can be merged into master. The JSON -Fortran library and associated documentation is released under a BSD style license . By submitting a pull request, you are agreeing to release your code under the same license. Note that code with GPL or other “copyleft” style licenses will not be accepted. top Coding Standards Each commit should address a single logical change and code base transformation. Each commit must compile. Each commit should pass the tests unless the feature being implemented or bug being fixed requires extensive changes that would result in a commit with too many different changes. Each pull request should ensure that the proper unit tests have\n been added to cover at least 90% of new or changed code and that the\n overall coverage continues to increase. New tests are added to the src/tests directory and are named jf_test_<#>.[Ff]90 . Each test is a stand alone Fortran program\n which will automatically be compiled and linked against the JSON -Fortran library so long as it follows this naming\n convention. If any of the tests fail, the test program should exit\n with a non-zero return status, using the stop 2 intrinsic\n statement. (The Fortran standard does not require the ‘processor’ to\n have or set a return value, but in practice all compilers respect\n this convention. An integer other than 2 may be used, so long as\n it is non-zero and supported by the processor.) No extraneous white spaces are allowed to be introduced at line endings and all non binary files should end with a single new line. Run git config core.whitespace trailing-space,space-before-tab,blank-at-eol,blank-at-eof to setup the whitespace rules from within your fork, and then check for white space errors with git diff --check to see if you have accidentally introduced white space errors before committing. (You can also enable the sample pre-commit hook that ships with git, to prevent you from committing changes that introduce white space errors. See this stackoverflow question ) for some tips on preventing the introduction of whitespace errors. Please adhere to the code indentation and formatting as it currently exists, aligning common elements vertically, etc. Tab characters are not allowed. Indentations should be done with 4 space characters. Do NOT allow your editor to make a bunch of indentation or white space changes, that will introduce non-substantive changes on lines that you have not actually edited. The coding style is modern free-form Fortran, consistent with the Fortran 2008 standard. Note that the two supported compilers (ifort and gfortran) do not currently include the entire Fortran 2008 standard. Therefore, only those language features supported by Gfortran 4.9 and Intel 13.1.0 are currently allowed. This also means that previous versions of these compilers are not supported, and major changes to the code to support earlier compilers (or Fortran 95) will not be accepted. At some point in the future (when compiler support has improved), all Fortran 2008 features will be allowed. All subroutines and functions must be properly documented. This includes useful inline comments as well as comment blocks using the FORD syntax. top","tags":"","loc":"page/development-resources/CONTRIBUTING.html"},{"title":"JSON-Fortran License – JSON-Fortran","text":"JSON -Fortran: A Modern Fortran JSON API https://github.com/jacobwilliams/json-fortran Copyright (c) 2014-2024, Jacob Williams\nAll rights reserved. Redistribution and use in source and binary forms, with or without modification,\nare permitted provided that the following conditions are met: Redistributions of source code must retain the above copyright notice, this\n list of conditions and the following disclaimer. Redistributions in binary form must reproduce the above copyright notice, this\n list of conditions and the following disclaimer in the documentation and/or\n other materials provided with the distribution. The names of its contributors may not be used to endorse or promote products\n derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” AND\nANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED\nWARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\nDISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR\nANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES\n(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\nLOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON\nANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\nSOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Original FSON License: Copyright (c) 2012 Joseph A. Levin Permission is hereby granted, free of charge, to any person obtaining a copy of this\nsoftware and associated documentation files (the “Software”), to deal in the Software\nwithout restriction, including without limitation the rights to use, copy, modify, merge,\npublish, distribute, sublicense, and/or sell copies of the Software, and to permit\npersons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or\nsubstantial portions of the Software. THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,\nINCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR\nPURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\nLIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT\nOR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER\nDEALINGS IN THE SOFTWARE.","tags":"","loc":"page/development-resources/LICENSE.html"},{"title":"build.sh – JSON-Fortran","text":"Below is the build script used to build JSON -Fortran using FoBiS.py . #!/bin/bash # # NAME # build.sh # # DESCRIPTION # Build the JSON-Fortran library and unit tests. # # USAGE # build.sh [--compiler {intel|gnu|}] [--cflags ''] # [--coverage [{yes|no}]] [--profile [{yes|no}]] [--skip-tests [{yes|no}]] # [--skip-documentation [{yes|no}]] [--enable-unicode [{yes|no}]] [--help] # [--clean] [--real-kind [{REAL32\\REAL64\\REAL128}]] # [--int-kind [{INT8\\INT16\\INT32\\INT64}]] # # By default, if invoked without any flags, this build script will build the # JSON-Fortran library using gfortran, # without : # unicode support # coverage flags # profiling flags # with : # unit tests enabled # documentation (if FORD is installed) # real(REAL64) kinds # integer(INT32) kinds # # More recent (right-most) flags will override preceding flags # flags: # --compiler : gnu or gfortran for gfortran, intel or ifort for intel compiler # A custom compiler may also be specified here, e.g. ftn # # --cflags : Enter any additional/custom compiler flags here and make sure they are # properly quoted # # --help : Print a usage message and exit. # # --clean : Delete generated files and clean up after builds # # # The following flags all (optionally) accept an argument, \"yes\" or \"no.\" If # no argument is passed, \"yes\" will be assumed. # # --enable-unicode [{yes|no}]: Request that the JSON-Fortran be built with (or # without) unicode/UCS4 support. If your compiler # does NOT support ISO 10646/UCS4 and it was # requested, then a warning is printed and the # library is built without UCS4 support. # # --coverage [{yes|no}]: Compile the library and tests with code coverage enabled # or disabled. # # --profile [{yes|no}]: Compile the library and tests with code profiling enabled # or disabled # # --skip-tests [{yes|no}]: Skip (or don't skip) building and running the json- # fortran unit tests # # --skip-documentation [{yes|no}]: Skip (or don't skip) building the json- # fortran documentation using FORD # # REQUIRES # FoBiS.py : https://github.com/szaghi/FoBiS [version 1.2.5 or later required] # FORD : https://github.com/Fortran-FOSS-Programmers/ford [version 4.0.0 or later] # # AUTHOR # Jacob Williams : 12/27/2014 # #set -x #set -v set -o errexit FORDMD = 'json-fortran.md' # FORD options file for building documentation DOCDIR = './doc/' # build directory for documentation PAGESDIR = './pages/' # Directory for FORD \"pages\" SRCDIR = './src/' # library source directory TESTDIR = './src/tests/' # unit test source directory INTROSPECDIR = './src/tests/introspection/' # pre compile configuration tests directory UCS4TESTCODE = 'test_iso_10646_support.f90' BINDIR = './bin/' # build directory for unit tests LIBDIR = './lib/' # build directory for library MODCODE = 'json_module.F90' # json module file name LIBOUT = 'libjsonfortran.a' # name of json library FPP = \"gfortran -E\" # default to gfortran -E pre-processing # The following warning might be triggered by ifort unless explicitly silenced: # warning #7601: F2008 standard does not allow an internal procedure to be an actual argument procedure name. (R1214.4). # In the context of F2008 this is an erroneous warning. # See https://prd1idz.cps.intel.com/en-us/forums/topic/486629 INTELCOMPILERFLAGS = '-c -O2 -warn -stand f08 -diag-disable 7601 -diag-disable 4013 -diag-disable 5142 -traceback' #INTELCOMPILERFLAGS='-c -O2 -warn -traceback -stand f08 -assume protect_parens -assume buffered_io -check all' GNUCOMPILERFLAGS = '-c -O2 -fbacktrace -Wall -Wextra -Wno-maybe-uninitialized -Wno-unused-function -pedantic -std=f2008 -fno-omit-frame-pointer' FCOMPILER = 'gnu' #Set default compiler to gfortran # command line argument parsing # N.B.: Arguments appearing later in the list take precidence over those appearing earlier. # e.g., \"./build.sh --compiler intel --coverage no --compiler gnu --coverage\" will # perform the build with the GFORTRAN compiler, and coverage analysis script_name = \" $( basename \" $0 \" ) \" # usage message print_usage () { echo -e \"\\n\\nUsage:\\n\" echo -e \" ${ script_name } [--compiler {intel|gnu|}] [--cflags '']\\n\\ [--coverage [{yes|no}]] [--profile [{yes|no}]] [--skip-tests [{yes|no}]]\\n\\ [--skip-documentation [{yes|no}]] [--enable-unicode [{yes|no}]] [--help]\" echo \"\" echo -e \"Any flags that take an optional yes or no argument will default to 'yes' when no\\n\\ argument is passed. Additionally, A custom compiler may be passed to the 'compiler'\\n\\ flag, but appropriate 'cflags' should also be passed to the script.\\n\\n\" } while [ \" $# \" -ge \"1\" ] ; do # Get command line arguments while there are more left to process key = \" $1 \" # Command line args are key-value pairs or value-less keys case $key in #find known keys --compiler ) #pick the compiler. Defaults to gfortran, but intel or custom compilers can be used case \" $2 \" in intel | Intel | INTEL | ifort ) FCOMPILER = 'Intel' FCOMPILERFLAGS = \" $INTELCOMPILERFLAGS \" FPP = \"fpp\" shift ;; gnu | Gnu | GNU | gfortran | Gfortran | GFortran | GFORTRAN ) FCOMPILER = 'gnu' FCOMPILERFLAGS = \" $GNUCOMPILERFLAGS \" FPP = \"gfortran -E\" shift ;; * ) FCOMPILER = \"custom\" echo \"Warning: Trying to build with unsupported compiler, $2 .\" 1 > & 2 echo \"Please ensure you set appropriate --cflags and (single) quote them\" 1 > & 2 FC = \" $2 \" FPP = \"gfortran -E\" # try gfortran to preprocess as a default shift ;; esac ;; --cflags ) FCOMPILERFLAGS = \" $2 \" # no good way to check that the user didn't do something questionable shift ;; --real-kind ) REAL_KIND = \"-D $2 \" # warning: not checking for valid input # should be one of: REAL32, REAL64 [default], REAL128 shift ;; --int-kind ) INT_KIND = \"-D $2 \" # warning: not checking for valid input # should be one of: INT8, INT16, INT32 [default], INT64 shift ;; --enable-unicode ) case $2 in yes | Yes | YES ) TRY_UNICODE = \"yes\" shift ;; no | No | NO ) TRY_UNICODE = \"no\" shift ;; * ) TRY_UNICODE = \"yes\" # don't shift; $2 is next arg ;; esac ;; --coverage ) # enable coverage case $2 in yes | Yes | YES ) CODE_COVERAGE = \"yes\" shift ;; no | No | NO ) CODE_COVERAGE = \"no\" shift ;; * ) CODE_COVERAGE = \"yes\" # don't shift because $2 is some other flag ;; esac ;; --profile ) #enable profiling case $2 in yes | Yes | YES ) CODE_PROFILE = \"yes\" shift ;; no | No | NO ) CODE_PROFILE = \"no\" shift ;; * ) CODE_PROFILE = \"yes\" # don't shift because $2 is some other flag ;; esac ;; --skip-tests ) # skip tests case $2 in yes | Yes | YES ) JF_SKIP_TESTS = \"yes\" shift ;; no | No | NO ) JF_SKIP_TESTS = \"no\" shift ;; * ) JF_SKIP_TESTS = \"yes\" ;; esac ;; --skip-documentation ) case $2 in yes | Yes | YES ) JF_SKIP_DOCS = \"yes\" shift ;; no | No | NO ) JF_SKIP_DOCS = \"no\" shift ;; * ) JF_SKIP_DOCS = \"yes\" ;; esac ;; --help ) print_usage exit 0 ;; --clean ) rm -r -- src { ,/tests } /*.o $DOCDIR * $LIBDIR * $BINDIR * *.gcov* ;; * ) echo \"Unknown flag, \\\" $1 \\\", passed to ${ script_name } !\" 2 > & 1 print_usage exit 1 ;; esac shift # look at next argument done # with argument parsing loop # if no compiler selected, then we're defaulting to gnu, and need to check that the cflags are set if [ \" $FCOMPILER \" = 'gnu' ] && [ -z \" $FCOMPILERFLAGS \" ] ; then FCOMPILERFLAGS = \" $GNUCOMPILERFLAGS \" fi if [[ $CODE_COVERAGE == [ yY ] * ]] ; then echo \"Trying to compile with code coverage instrumentation.\" COVERAGE = \"-coverage\" fi if [[ $CODE_PROFILE == [ yY ] * ]] ; then echo \"Trying to compile with code profiling instrumentation.\" PROFILING = \"-profile\" fi if [[ $FCOMPILER == custom ]] ; then echo \"Trying to compile with custom compiler, $FC \" CUSTOM =( \"-fc\" \" $FC \" ) fi if [[ $TRY_UNICODE == [ yY ] * ]] ; then echo \"Trying to compile library with Unicode/UCS4 support\" FoBiS.py build -ch -compiler \" ${ FCOMPILER } \" \" ${ CUSTOM [@] } \" -cflags \" ${ FCOMPILERFLAGS } \" -dbld \" ${ BINDIR } \" -s \" ${ INTROSPECDIR } \" -dmod ./ -dobj ./ -t \" ${ UCS4TESTCODE } \" -o \" ${ UCS4TESTCODE %.f90 } \" -colors if \" ${ BINDIR } / ${ UCS4TESTCODE %.f90 } \" ; then DEFINES = \"-DUSE_UCS4 -Wunused-function\" fi fi #build the stand-alone library: echo \"\" echo \"Building library...\" FoBiS.py build -ch -compiler ${ FCOMPILER } \" ${ CUSTOM [@] } \" -cflags \" ${ FCOMPILERFLAGS } ${ DEFINES } ${ REAL_KIND } ${ INT_KIND } \" ${ COVERAGE } ${ PROFILING } -dbld ${ LIBDIR } -s ${ SRCDIR } -dmod ./ -dobj ./ -t ${ MODCODE } -o ${ LIBOUT } -mklib static -colors #build the unit tests (uses the above library): if [[ $JF_SKIP_TESTS ! = [ yY ] * ]] ; then echo \"\" echo \"Building unit tests...\" # FoBiS.py PR #45 work around [ -d \" $BINDIR \" ] || mkdir \" $BINDIR \" for TEST in \" ${ TESTDIR %/ } \" /jf_test_*. [ fF ] 90 ; do THIS_TEST = ${ TEST ##*/ } echo \"Build ${ THIS_TEST %.[fF]90 } \" FoBiS.py build -ch -compiler ${ FCOMPILER } \" ${ CUSTOM [@] } \" -cflags \" ${ FCOMPILERFLAGS } ${ DEFINES } \" ${ COVERAGE } ${ PROFILING } -dbld \" ${ BINDIR } \" -s \" ${ TESTDIR } \" -i \" ${ LIBDIR } \" -libs \" ${ LIBDIR } / ${ LIBOUT } \" -dmod ./ -dobj ./ -t \" ${ THIS_TEST } \" -o \" ${ THIS_TEST %.[fF]90 } \" -colors done else echo \"Skip building the unit tests since \\$JF_SKIP_TESTS has been set to 'true'.\" fi # Run all the tests unless $JF_SKIP_TESTS echo \"\" if [[ $JF_SKIP_TESTS ! = [ yY ] * ]] ; then echo \"Running tests...\" OLD_IGNORES = \" $GLOBIGNORE \" # run next commands in subshell to avoid `cd -` ( cd \" $BINDIR \" GLOBIGNORE = '*.*' # from: http://stackoverflow.com/questions/7992689/bash-how-to-loop-all-files-in-sorted-order ls jf_test_* | sed 's/^[^0-9]*[0-9]*/\\1 \\2/' | sort -k2,2n | tr -d ' ' | while read TEST ; do # It would be nice to run json output printed to stdout through jsonlint, however, # some tests output more than one json structure and these need to be split echo \"\" echo \"======================================================\" echo \"\" echo \"Running ${ TEST } \" cd .. \" ${ BINDIR }${ TEST } \" cd \" $BINDIR \" done ) echo \"\" echo \"======================================================\" GLOBIGNORE = \" $OLD_IGNORES \" if [[ $CODE_COVERAGE = [ yY ] * ]] ; then for SRCFILE in json_string_utilities.F90 json_value_module.F90 json_file_module.F90 ; do [ -f ${ SRCDIR }${ SRCFILE } .gcov ] && rm ${ SRCDIR }${ SRCFILE } .gcov gcov -o $LIBDIR ${ SRCDIR }${ SRCFILE } if [[ $TRY_UNICODE = [ yY ] * ]] ; then # gcov/gfortran bug work around awk -F ':' '{line=\"\"; for(i=2;i<=NF;i++){line=line\":\"$i}; if (NR > 1) print $1 prevline; prevline=line}; END{print \" -\"prevline}' ${ SRCFILE } .gcov > ${ SRCFILE } .gcov.fixed && \\ mv ${ SRCFILE } .gcov { .fixed, } # rename so we can merge coverage info mv ${ SRCFILE } .gcov ${ SRCFILE } -unicode.gcov else # rename so we can merge coverage info mv ${ SRCFILE } .gcov ${ SRCFILE } -no-unicode.gcov fi if [ -f ${ SRCFILE } -unicode.gcov ] && [ -f ${ SRCFILE } -no-unicode.gcov ] ; then ############## for debugging #echo \"\" #echo \"-------------------\" #echo \"no-unicode file\" #echo \"-------------------\" #cat ${SRCFILE}-no-unicode.gcov #echo \"\" #echo \"-------------------\" #echo \"unicode file\" #echo \"-------------------\" #cat ${SRCFILE}-unicode.gcov #echo \"\" #./pages/development-resources/gccr.pl -n -c ${SRCFILE}-no-unicode.gcov no-unicode \\ # ${SRCFILE}-unicode.gcov unicode ############## # merge them ./pages/development-resources/gccr.pl -n -c ${ SRCFILE } -no-unicode.gcov no-unicode \\ ${ SRCFILE } -unicode.gcov unicode > ${ SRCFILE } .gcov else cp ${ SRCFILE } *-unicode.gcov ${ SRCFILE } .gcov fi done FoBiS.py rule -gcov_analyzer . for SRCFILE in json_string_utilities.F90 json_value_module.F90 json_file_module.F90 ; do sed -i \"bak\" -E 's; \\*\\*([a-zA-Z]+[a-zA-Z0-9_]*)\\*\\*; \\*\\*[[\\1]]\\*\\*;' ${ SRCFILE } .gcov.md sed -i \"bak\" -E \"s;, line ([0-9]+);, line [\\1](https://github.com/jacobwilliams/json-fortran/blob/master/src/ ${ SRCFILE } #L\\1);\" ${ SRCFILE } .gcov.md done gcov -o $BINDIR ${ TESTDIR } *. [ Ff ] 90 fi else echo \"Skip running the unit tests since \\$JF_SKIP_TESTS has been set to ${ JF_SKIP_TESTS } .\" fi #build the documentation with ford (if present): echo \"\" if [[ $JF_SKIP_DOCS ! = [ yY ] * ]] ; then if hash ford 2 >/dev/null ; then echo \"Building documentation...\" [[ $TRY_UNICODE = [ yY ] * ]] && MACRO_FLAG =( \"-m\" \"USE_UCS4\" ) echo \" $FPP \" > .PREPROCESSOR # Override via include in project file, until FORD gets CLI for this ford --debug \" ${ MACRO_FLAG [@] } \" -p \" $PAGESDIR \" \" $FORDMD \" else echo \"FORD not found! Install using: pip install ford\" fi else echo \"Skip building documentation since \\$JF_SKIP_DOCS has been set to ${ JF_SKIP_DOCS } .\" fi","tags":"","loc":"page/development-resources/build.html"},{"title":"codecov.yml – JSON-Fortran","text":"This is the Codecov configuration file. comment : layout : header , changes , diff , sunburst coverage : fixes : - doc / src :: src ignore : - src / tests - doc status : patch : default : target : 20 % project : default : target : 80 %","tags":"","loc":"page/development-resources/codecov.html"},{"title":"gccr.pl – JSON-Fortran","text":"Below is the source code for gccr.pl , which was downloaded from https://github.com/eel3/gccr on July 23, 2015. This script is used\nby the build.sh script to merge the code coverage\ninformation for the coverage report . #!/usr/bin/env perl # -*- coding: utf-8; tab-width: 8 -*- # vim: fileencoding=UTF-8 shiftwidth=8 softtabstop=8 tabstop=8 # # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. # # version 0.4.18 : eel3 : changed shebang, fixed indent, specified emacs/vim coding system. # version 0.4.17 : eel3 : fixed error occur when print the line matched /%[^%]/g # version 0.4.16 : eel3 : fixed parse error occur in line 10000 or later # version 0.4.15 : eel3 : avoided warnings caused by uninitialized variable # version 0.4.14 : eel3 : fixed line number indent size for over 99999 line # version 0.4.13 : eel3 : changed warning option # version 0.4.12 : eel3 : fixed problem that extra tab is output, and changed line number to be right-aligned # version 0.4.11 : Nick Groesz : fix potential divide by zero # version 0.4.10 : Nick Groesz : fixed summary in combined coverage, ignore function data, added copyright # version 0.4.9 : Nick Groesz : added combined reporting in print_summary(), changed usage text # version 0.4.8 : Nick Groesz : added -c option (combined coverage) # version 0.4.7 : Nick Groesz : fixed formatting, added comments # version 0.4.6 : Dickson Patton : fixed tagfile option, right justify counts # version 0.4.5 : Nick Groesz : list code generated with #define macros # version 0.4.4 : Dickson Patton : added tagfile option # version 0.4.3 : Nick Groesz : changed around internal data structures, start of version history use strict ; use warnings ; use Getopt::Long ; # prototypes sub read_args (); # read in command line arguments sub process_files (); # run through each file sub parse_execution_data (); # parse the data from each file sub print_results (); # print gcov data sub print_summary (); # print summary (similary to gcov's summary) sub print_usage (); # print gccr usage text our $tool_name = 'gccr' ; # name of script our $version = 'gccr (GCC) 0.4.18' ; # version of script our $copyright = 'Copyright (C) 2005 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. ' ; # copyright notice # internal data our @files ; # gcov file data # # File information: # file_number - ranges from 0 to NUMBER OF FILES SPECIFIED - 1 # $file[file_number]{'tag'} - user specified file tag # $file[file_number]{'name'} - name of file to be read and parsed # # $file[file_number[{'data'} contains parsed gcov data # # Line information: # line_number - corresponds to the line number of the GCOV file # and ranges from 1 to NUMBER OF LINES # $data{'line'}[line_number]{'type'} - type of line # Can be set to: # no_ex - non-executing code (gcov meta-data, header code, code that has been #ifdef'd out) # line - an executable line of code # branch - branch execution information # call - call execution information # # $data{'line'}[line_number]{'count'} - number of times an executable line, branch, or call was executed # $data{'line'}[line_number]{'raw'} - raw data straight from gcov file # this is only populated in the first file's data structure # $data{'line'}[line_number]{'line_num'} - line number in original source code # Execution information: # $data{'line_count'} - number of executable lines # $data{'execution_count'} - number of executed lines our $file_count = 0 ; # number of files read our $line_count = 0 ; # number of lines in gcov data files (should be the same for each file) our $executable_total = 0 ; # number of different executable lines across all files our $executed_total = 0 ; # number of different executable lines across all files that were executed # options our $opt_combined = 0 ; our $opt_help = 0 ; # help option our $opt_version = 0 ; # version option our @tag_files = (); # tagfile(s) option our $opt_nosummary = 0 ; # do not print summary read_args (); process_files (); print_results (); unless ( $opt_nosummary ) { print_summary (); } # Summary: read command line arguments: # Parameters: none # Return: none sub read_args () { unless ( GetOptions ( 'combined' => \\ $opt_combined , 'help' => \\ $opt_help , 'no-summary' => \\ $opt_nosummary , 'tagfile|file=s' => \\ @tag_files , 'version' => \\ $opt_version , ) ) { # if GetOptions returns FALSE, then incorrect options were specified # exit with error print_usage (); exit ( 1 ); } if ( $opt_help ) { print_usage (); exit ( 0 ); } if ( $opt_version ) { print \"$version\\n\" ; print \"$copyright\\n\" ; exit ( 0 ); } # if any number of tag files were specified, then we read tagfiles instead of command line arugments if ( scalar ( @tag_files )) { @files = & read_tagfiles ( @tag_files ); } else { # number of file arguments + number of tag arguments should equal an even number if ( @ARGV % 2 == 1 ) { print ( \"ERROR: file count does not match tag count\\n\" ); exit ( 1 ); } my $i = 0 ; while ( $ARGV [ $i ]) { push @files , { name => $ARGV [ $i ], tag => $ARGV [ $i + 1 ]}; $i += 2 ; } } $file_count = scalar ( @files ); if ( $file_count < 2 ) { print ( \"ERROR: at least two files must be specified\\n\" ); exit ( 1 ); } } # Summary: read tagfiles specifie dwith the -t option # Parameters: array of names of tagfiles # Return: array of name/tag hashes sub read_tagfiles ($) { my @tag_files = @_ ; my @files ; my $l = 0 ; # count of --tagfile=___ options my $m = 0 ; # count of line in the current tagfile foreach my $file ( @tag_files ) { $l ++ ; open ( TAGFILE , $file ) || die \"ERROR: on open of tagfile $l, $file: ($!)\\n\" ; while ( ) { $m ++ ; chomp $_ ; if ( /(^([^ ]+) *(.*)$)/ ) { push @files , { name => $2 , tag => $3 }; } else { die \"ERROR: invalid file-tag pair on line $m of tagfile $l\\n\" ; } } close ( TAGFILE ); } return ( @files ); } # Summary: run through all the gcov files and call the parsing function # Parameters: none # Return: none sub process_files () { # the first file is used to gather raw data $files [ 0 ]{ 'data' } = parse_execution_data ( $files [ 0 ]{ 'name' }, 1 ); for ( my $i = 1 ; $i < $file_count ; $i ++ ) { $files [ $i ]{ 'data' } = parse_execution_data ( $files [ $i ]{ 'name' }, 0 ); } } # Summary: parse the gcov file, populating the %data structure # Parameters: name of file to parse | boolean indicating whether raw (original gcov) data should be saved # save_raw is set to 1 on the first file parse and set to zero thereafter # Returns: reference to data hash sub parse_execution_data () { my ( $file , $save_raw ) = @_ ; my %data ; $data { 'line_count' } = 0 ; # number of executable lines in file $data { 'execution_count' } = 0 ; # number of lines that were executed in file stat ( $file ); if ( ! ( - r _ )) { die ( \"ERROR: cannot read file: $file\\n\" ); } if ( ! ( - f _ )) { die ( \"ERROR: not a plain file: $file\\n\" ); } open ( FILE_HANDLE , $file ) || die ( \"ERROR: cannot open file $file: $!\" ); my $file_line_num = 0 ; while ( ) { my $line = $_ ; $file_line_num ++ ; chomp $line ; if ( $line =~ /^\\s+-:\\s*(\\d+):(.*)/ ) { # line is gcov preamble or non-executing code my $line_num = $1 ; my $raw = $2 ; $data { 'line' }[ $file_line_num ]{ 'type' } = 'no_ex' ; $data { 'line' }[ $file_line_num ]{ 'line_num' } = $line_num ; if ( $save_raw ) { $data { 'line' }[ $file_line_num ]{ 'raw' } = $2 ; } } elsif ( $line =~ /^\\s+#####:\\s*(\\d+):(.*)/ ) { # line was not executed my $line_num = $1 ; my $raw = $2 ; $data { 'line' }[ $file_line_num ]{ 'count' } = 0 ; $data { 'line' }[ $file_line_num ]{ 'type' } = 'code' ; $data { 'line' }[ $file_line_num ]{ 'line_num' } = $line_num ; $data { 'line_count' } ++ ; if ( $save_raw ) { $data { 'line' }[ $file_line_num ]{ 'raw' } = $raw ; } } elsif ( $line =~ /^\\s*(\\d+):\\s*(\\d+):(.*)/ ) { # line was executed my $count = $1 ; my $line_num = $2 ; my $raw = $3 ; $data { 'line' }[ $file_line_num ]{ 'count' } = $count ; $data { 'line' }[ $file_line_num ]{ 'type' } = 'code' ; $data { 'line' }[ $file_line_num ]{ 'line_num' } = $line_num ; $data { 'line_count' } ++ ; $data { 'execution_count' } ++ ; if ( $save_raw ) { $data { 'line' }[ $file_line_num ]{ 'raw' } = $raw ; } } elsif ( $line =~ /^branch\\s+(\\d+)/ ) { # line contains branch execution information my $branch_num = $1 ; $data { 'line' }[ $file_line_num ]{ 'num' } = $branch_num ; if ( $line =~ /^branch\\s+\\d+\\s+never executed/ ) { $data { 'line' }[ $file_line_num ]{ 'count' } = 0 ; $data { 'line' }[ $file_line_num ]{ 'type' } = 'branch' ; } elsif ( $line =~ /^branch\\s+\\d+\\s+taken (\\d+)%/ ) { $data { 'line' }[ $file_line_num ]{ 'count' } = $1 ; $data { 'line' }[ $file_line_num ]{ 'type' } = 'branch' ; } if ( $save_raw ) { $data { 'line' }[ $file_line_num ]{ 'raw' } = $line ; } } elsif ( $line =~ /^call\\s+(\\d+)/ ) { # line contains call execution information my $call_num = $1 ; $data { 'line' }[ $file_line_num ]{ 'num' } = $call_num ; if ( $line =~ /^call\\s+\\d+\\s+never executed/ ) { $data { 'line' }[ $file_line_num ]{ 'count' } = 0 ; $data { 'line' }[ $file_line_num ]{ 'type' } = 'call' ; } elsif ( $line =~ /^call\\s+\\d+\\s+returns (\\d+)%/ ) { $data { 'line' }[ $file_line_num ]{ 'count' } = $1 ; $data { 'line' }[ $file_line_num ]{ 'type' } = 'call' ; } if ( $save_raw ) { $data { 'line' }[ $file_line_num ]{ 'raw' } = $line ; } } elsif ( $line =~ /^function/i ) { # function data is ignored } else { # line could not be parsed print ( \"ERROR: cannot parse line $file_line_num in file $file\\n Is this a valid gcov file?\\n\" ); exit ( 1 ); } } close ( FILE_HANDLE ); # check to see if we should save an overall line count (common to all gcov files) if ( $save_raw ) { $line_count = $file_line_num ; } return ( \\ %data ); } # Summary: print interpolated gcov information # Parameters: none # Return: none sub print_results () { my $ftab = ' ' ; my $p_op = ( $line_count <= 99999 ) ? '%5d' : '%13d' ; for ( my $line_i = 1 ; $line_i <= $line_count ; $line_i ++ ) { my $raw_printed = 0 ; # boolean flag to print out the line slurped in from the gcov file my $count_sum = 0 ; # sum of executions across all files for this one line- used for combined coverage reporting my $never_exec = 1 ; # boolean flag that is set to 0 when the current line is executed or executable # in any file. used in combined coverage reporting. my $first_code_line_executed = 0 ; # boolean flag that indicates whether this is the first unique # executed line of code to be found among the gcov files for ( my $file_i = 0 ; $file_i < $file_count ; $file_i ++ ) { # Note that each file is cycled through for every line even if just the raw # data from the first file that ends up being printed. This is because the same # line may be non-executing in one file and executable in another file (because code # may be ifdef'd out). my $type = $files [ $file_i ]{ 'data' }{ 'line' }[ $line_i ]{ 'type' }; no warnings 'uninitialized' ; # XXX: remove warining for $type if ( $type eq 'no_ex' ) { # non-executing code unless ( $raw_printed || $opt_combined ) { printf ( \"$ftab-:$p_op:%s\\n\" , $files [ $file_i ]{ 'data' }{ 'line' }[ $line_i ]{ 'line_num' }, $files [ 0 ]{ 'data' }{ 'line' }[ $line_i ]{ 'raw' }); $raw_printed = 1 ; } # nothing additional is printed for non-executing code } elsif ( $type eq 'code' ) { # code that is executable if ( $never_exec ) { # this code is exectuable, so we indicate that in the never_exec flag $never_exec = 0 ; # we only want the number of UNIQUE lines across files that are executable # in the executable_total flag, so this is only incremented once for all # identical lines across each file $executable_total ++ ; } unless ( $raw_printed || $opt_combined ) { printf ( \"$ftab $p_op:%s\\n\" , $files [ 0 ]{ 'data' }{ 'line' }[ $line_i ]{ 'line_num' }, $files [ 0 ]{ 'data' }{ 'line' }[ $line_i ]{ 'raw' }); $raw_printed = 1 ; } my $count = $files [ $file_i ]{ 'data' }{ 'line' }[ $line_i ]{ 'count' }; if ( $opt_combined ) { $count_sum += $count ; if ( $first_code_line_executed == 0 && $count > 0 ) { $executed_total ++ ; $first_code_line_executed = 1 ; } } else { if ( $count == 0 ) { print ' ####' ; } else { unless ( $first_code_line_executed ) { # update the unique count of code lines executed # across all gcov files $executed_total ++ ; $first_code_line_executed = 1 ; } my $padding = 9 ; $padding -= length ( $count ); printf ( \"%*s%d\" , $padding , ' ' , $count ); } printf ( \":$p_op: \" , $files [ $file_i ]{ 'data' }{ 'line' }[ $line_i ]{ 'line_num' }); print \"$files[$file_i]{'tag'}\\n\" ; } } elsif ( $type eq 'branch' ) { # branch information my $count = $files [ $file_i ]{ 'data' }{ 'line' }[ $line_i ]{ 'count' }; if ( $opt_combined ) { $count_sum += $count ; } else { if ( $count == 0 ) { print \"branch $files[$file_i]{'data'}{'line'}[$line_i]{'num'} never executed:$files[$file_i]{'tag'}\\n\" ; } else { print \"branch $files[$file_i]{'data'}{'line'}[$line_i]{'num'} taken $count%:$files[$file_i]{'tag'}\\n\" ; } } } elsif ( $type eq 'call' ) { # call information my $count = $files [ $file_i ]{ 'data' }{ 'line' }[ $line_i ]{ 'count' }; if ( $opt_combined ) { $count_sum += $count ; } else { if ( $count == 0 ) { print \"call $files[$file_i]{'data'}{'line'}[$line_i]{'num'} never executed:$files[$file_i]{'tag'}\\n\" ; } else { print \"call $files[$file_i]{'data'}{'line'}[$line_i]{'num'} returns $count%:$files[$file_i]{'tag'}\\n\" ; } } } } if ( $opt_combined ) { # if the combined coverage flag is set then no information is printed in the above for loop # count information is summed into $count_sum and printed on a single line my $type = $files [ 0 ]{ 'data' }{ 'line' }[ $line_i ]{ 'type' }; no warnings 'uninitialized' ; # XXX: remove warining for $type if ( $type eq 'no_ex' || $type eq 'code' ) { # line is either non-executable or executable code if ( $never_exec ) { # code line is not executable in any file printf ( \"$ftab-:$p_op:%s\\n\" , $files [ 0 ]{ 'data' }{ 'line' }[ $line_i ]{ 'line_num' }, $files [ 0 ]{ 'data' }{ 'line' }[ $line_i ]{ 'raw' }); } else { # line is executable in at least one file if ( $count_sum == 0 ) { print ' #####' ; } else { my $padding = 9 ; $padding -= length ( $count_sum ); printf ( \"%*s%d\" , $padding , ' ' , $count_sum ); } printf ( \":$p_op:%s\\n\" , $files [ 0 ]{ 'data' }{ 'line' }[ $line_i ]{ 'line_num' }, $files [ 0 ]{ 'data' }{ 'line' }[ $line_i ]{ 'raw' }); } } elsif ( $type eq 'branch' ) { # branch information if ( $count_sum == 0 ) { print \"branch $files[0]{'data'}{'line'}[$line_i]{'num'} never executed\\n\" ; } else { my $percentage = $count_sum / $file_count ; print \"branch $files[0]{'data'}{'line'}[$line_i]{'num'} taken $percentage%\\n\" ; } } elsif ( $type eq 'call' ) { # call information if ( $count_sum == 0 ) { print \"call $files[0]{'data'}{'line'}[$line_i]{'num'} never executed\\n\" ; } else { my $percentage = $count_sum / $file_count ; print \"call $files[0]{'data'}{'line'}[$line_i]{'num'} returns $percentage%\\n\" ; } } } } } # Summary: prints the line execution percentages for each file and a percentage for all files combined # Parameters: none # Return: none sub print_summary () { for ( my $file_i = 0 ; $file_i < $file_count ; $file_i ++ ) { my $file_line_count = $files [ $file_i ]{ 'data' }{ 'line_count' }; my $percentage ; if ( $file_line_count ) { $percentage = ( $files [ $file_i ]{ 'data' }{ 'execution_count' } / $file_line_count ) * 100 ; } else { $percentage = 0 ; } $percentage = sprintf ( '%.2f' , $percentage ); print \"$percentage% of $file_line_count lines executed on target $files[$file_i]{'tag'}\\n\" ; } my $overall_percentage ; if ( $executable_total ) { $overall_percentage = ( $executed_total / $executable_total ) * 100 ; } else { $overall_percentage = 0 ; } $overall_percentage = sprintf ( '%.2f' , $overall_percentage ); print \"$overall_percentage% of $executable_total lines executed across all files\\n\" ; } # Summary: print tool usage information # Parameters: none # Return: none sub print_usage () { print << END_USAGE ; Usage: ./$tool_name [options] [file name] [target id]... Use $tool_name to compare gcov files generated on different platforms or targets. -h, --help Print this help, then exit -v, --version Print version number, then exit Input Options: -t, --tagfile Take file-tag assignments from a file, not from command-line Ouput Options: -c, --combined Print combined coverage -n, --no-summmary Do not print summary END_USAGE }","tags":"","loc":"page/development-resources/gccr.html"},{"title":"Coverage Analysis – JSON-Fortran","text":"Coverage analysis Coverage analysis of json_string_utilities.F90 Unexecuted procedures Executed procedures Coverage analysis of json_value_module.F90 Unexecuted procedures Executed procedures Coverage analysis of json_file_module.F90 Unexecuted procedures Executed procedures Coverage analysis The following report was automatically generated from gcov output by the FoBiS.py Fortran build\ntool. gccr.pl was used to\nmerge gcov coverage\nreports, and can be obtained at https://github.com/eel3/gccr . Any\nprocedures surrounded by double square brackets below are internal\nprocedures and do not have their own documentation page–documentation\nfor these procedures is included in the documentation of the scope in\nwhich they are defined. If procedure coverage is at 100%, also have a look at the Codecov.io coverage suggestions . Coverage analysis of json_string_utilities.F90 Metrics Number of executable lines 337 Number of executed lines 311 92% Number of unexecuted lines 26 8% Average hits per executed line 243573 Number of procedures 14 Number of executed procedures 12 86% Number of unexecuted procedures 2 14% Average hits per executed procedure 126995 Unexecuted procedures function to_uni , line 668 function to_uni_vec , line 687 Executed procedures subroutine unescape_string : tested 1210117 times subroutine escape_string : tested 206118 times subroutine string_to_integer : tested 75154 times subroutine string_to_real : tested 29931 times subroutine integer_to_string : tested 764 times subroutine replace_string : tested 560 times function valid_json_hex : tested 471 times subroutine real_to_string : tested 281 times subroutine compact_real_string : tested 268 times function decode_rfc6901 : tested 120 times function encode_rfc6901 : tested 96 times function lowercase_string : tested 64 times Report generated by FoBiS.py Coverage analysis of json_value_module.F90 Metrics Number of executable lines 4021 Number of executed lines 3490 87% Number of unexecuted lines 531 13% Average hits per executed line 2220377 Number of procedures 156 Number of executed procedures 150 96% Number of unexecuted procedures 6 4% Average hits per executed procedure 440341 Unexecuted procedures subroutine get_current_line_from_file_sequential , line 10032 subroutine wrap_json_info_by_path , line 1677 subroutine wrap_json_matrix_info_by_path , line 1912 subroutine wrap_json_value_create_logical , line 10272 subroutine wrap_json_value_get_child_by_name , line 5876 subroutine wrap_json_value_remove_if_present , line 2998 Executed procedures subroutine pop_char : tested 57802621 times subroutine destroy_json_data : tested 2170912 times subroutine parse_string : tested 1195115 times subroutine json_value_create : tested 989400 times subroutine json_info : tested 988247 times subroutine json_value_add_member : tested 986799 times subroutine to_string : tested 775339 times function wrap_json_valid_path : tested 264829 times subroutine push_char : tested 210976 times subroutine write_it : tested 204936 times subroutine parse_number : tested 104983 times subroutine to_integer : tested 75205 times function string_to_int : tested 75063 times subroutine to_object : tested 61319 times subroutine to_array : tested 31417 times subroutine to_real : tested 30086 times function string_to_dble : tested 29921 times subroutine to_logical : tested 14971 times subroutine parse_for_chars : tested 14960 times function json_failed : tested 2740 times function json_count : tested 2076 times subroutine json_clear_exceptions : tested 2049 times subroutine json_initialize : tested 1877 times function name_strings_equal : tested 1567 times subroutine json_prepare_parser : tested 1509 times subroutine json_parse_end : tested 1509 times subroutine json_parse_string : tested 1492 times function name_equal : tested 1409 times subroutine wrap_json_get_path : tested 612 times subroutine json_value_get_child_by_name : tested 556 times subroutine json_value_rename : tested 545 times subroutine json_value_get_child_by_index : tested 443 times function json_is_vector : tested 365 times subroutine add_to_path : tested 330 times subroutine json_get_by_path_default : tested 323 times subroutine json_get_by_path : tested 306 times subroutine json_get_real : tested 306 times subroutine json_throw_exception : tested 264 times subroutine get_real_from_array : tested 229 times subroutine json_value_to_string : tested 211 times subroutine json_get_string : tested 198 times subroutine json_check_children_for_duplicate_keys : tested 191 times subroutine duplicate_key_func : tested 191 times subroutine json_get_path : tested 188 times subroutine json_value_create_real : tested 159 times subroutine json_value_get_child : tested 150 times subroutine json_value_add_real : tested 148 times subroutine json_value_create_integer : tested 140 times subroutine json_value_add_integer : tested 127 times subroutine json_get_integer : tested 117 times subroutine json_print_to_unit : tested 89 times subroutine to_null : tested 84 times subroutine destroy_json_core : tested 70 times subroutine json_value_create_string : tested 70 times subroutine wrap_json_get_string_by_path : tested 63 times subroutine json_traverse : tested 62 times subroutine json_value_remove : tested 56 times subroutine json_value_add_string : tested 56 times subroutine json_create_by_path : tested 54 times subroutine json_get_integer_by_path : tested 54 times subroutine json_value_insert_after : tested 52 times subroutine json_value_create_array : tested 52 times subroutine json_check_all_for_duplicate_keys : tested 51 times subroutine json_value_replace : tested 47 times subroutine get_int_from_array : tested 47 times subroutine flag_not_found : tested 43 times subroutine json_get_logical : tested 42 times subroutine json_get_string_by_path : tested 42 times subroutine json_check_for_errors : tested 41 times subroutine json_value_create_object : tested 34 times subroutine json_get_by_path_rfc6901 : tested 28 times subroutine get_logical_from_array : tested 28 times subroutine json_get_real_by_path : tested 24 times subroutine json_value_create_logical : tested 22 times subroutine json_value_validate : tested 20 times subroutine json_get_string_vec_by_path : tested 20 times subroutine json_get_logical_by_path : tested 19 times subroutine get_chars_from_array : tested 19 times subroutine json_value_add_logical : tested 18 times subroutine json_parse_file : tested 17 times subroutine get_string_lengths : tested 16 times subroutine json_matrix_info_by_path : tested 16 times function json_value_is_child_of : tested 16 times subroutine json_get_real_vec : tested 16 times subroutine json_matrix_info : tested 15 times subroutine json_value_add_real_vec : tested 15 times subroutine json_get_real_vec_by_path : tested 15 times subroutine json_get_alloc_string_vec_by_path : tested 15 times subroutine json_get_integer_vec : tested 14 times subroutine convert : tested 13 times subroutine wrap_json_get_alloc_string_vec_by_path : tested 13 times subroutine get_chars_from_array : tested 12 times subroutine json_string_info : tested 11 times subroutine swap_pointers : tested 11 times subroutine json_update_string : tested 11 times subroutine json_clone : tested 10 times subroutine json_add_string_by_path : tested 10 times subroutine json_get_integer_vec_by_path : tested 10 times subroutine json_add_real_by_path : tested 9 times subroutine json_rename_by_path : tested 9 times subroutine json_get_by_path_jsonpath_bracket : tested 9 times subroutine annotate_invalid_json : tested 9 times subroutine json_value_swap : tested 8 times subroutine json_update_real : tested 7 times function json_valid_path : tested 7 times subroutine json_info_by_path : tested 6 times subroutine json_add_string_vec_by_path : tested 6 times subroutine json_print_to_console : tested 6 times subroutine json_print_error_message : tested 6 times subroutine json_add_real_vec_by_path : tested 5 times subroutine json_value_add_string_vec : tested 5 times subroutine json_print_to_filename : tested 5 times subroutine json_get_logical_vec : tested 5 times subroutine json_get_string_vec : tested 5 times subroutine json_value_reverse : tested 4 times subroutine is_child_of_callback : tested 4 times subroutine json_add_member_by_path : tested 4 times subroutine json_add_integer_by_path : tested 4 times subroutine json_add_logical_by_path : tested 4 times subroutine json_get_logical_vec_by_path : tested 4 times subroutine json_get_alloc_string_vec : tested 4 times subroutine json_value_remove_if_present : tested 3 times subroutine json_update_logical : tested 3 times subroutine json_update_real32 : tested 3 times subroutine json_update_integer : tested 3 times subroutine wrap_json_add_string_vec_by_path : tested 3 times subroutine json_value_add_integer_vec : tested 3 times subroutine json_get_parent : tested 3 times subroutine json_get_real32_by_path : tested 3 times subroutine json_get_real32_vec_by_path : tested 3 times subroutine get_current_line_from_file_stream : tested 3 times subroutine json_value_insert_after_child_by_index : tested 2 times subroutine json_add_real32_by_path : tested 2 times subroutine json_add_integer_vec_by_path : tested 2 times subroutine json_add_logical_vec_by_path : tested 2 times subroutine json_add_real32_vec_by_path : tested 2 times subroutine json_value_add_logical_vec : tested 2 times subroutine json_value_create_null : tested 2 times function initialize_json_core : tested 1 times subroutine json_add_string_vec_by_path_value_ascii : tested 1 times subroutine json_add_string_vec_by_path_path_ascii : tested 1 times subroutine json_value_add_real32 : tested 1 times subroutine json_value_add_real32_vec : tested 1 times subroutine json_value_add_null : tested 1 times subroutine json_get_next : tested 1 times subroutine json_get_previous : tested 1 times subroutine json_get_tail : tested 1 times subroutine json_get_real32 : tested 1 times subroutine json_get_real32_vec : tested 1 times subroutine json_value_create_real32 : tested 1 times Report generated by FoBiS.py Coverage analysis of json_file_module.F90 Metrics Number of executable lines 592 Number of executed lines 532 90% Number of unexecuted lines 60 10% Average hits per executed line 99 Number of procedures 65 Number of executed procedures 59 91% Number of unexecuted procedures 6 9% Average hits per executed procedure 114 Unexecuted procedures function initialize_json_file , line 570 function initialize_json_file_from_string , line 651 function initialize_json_file_from_string_v2 , line 698 function initialize_json_file_v2 , line 616 subroutine json_file_variable_matrix_info , line 1082 subroutine wrap_assign_string_to_json_file , line 1240 Executed procedures subroutine json_file_destroy : tested 2744 times function json_file_failed : tested 1824 times subroutine json_file_load_from_string : tested 1435 times subroutine initialize_json_core_in_file : tested 254 times subroutine json_file_print_to_string : tested 209 times subroutine finalize_json_file : tested 39 times subroutine json_file_get_string : tested 35 times subroutine json_file_print_to_unit : tested 27 times subroutine json_file_get_integer : tested 25 times subroutine json_file_load : tested 15 times subroutine json_file_get_real : tested 15 times subroutine json_file_get_logical : tested 14 times subroutine json_file_get_object : tested 10 times subroutine json_file_get_real_vec : tested 10 times subroutine json_file_get_alloc_string_vec : tested 8 times subroutine json_file_add : tested 8 times subroutine json_file_add_string_vec : tested 8 times subroutine json_file_print_to_console : tested 7 times subroutine json_file_check_for_errors : tested 6 times subroutine json_file_get_string_vec : tested 6 times subroutine json_file_print_error_message : tested 5 times subroutine json_file_add_string : tested 5 times subroutine set_json_core_in_file : tested 4 times function json_file_valid_path : tested 4 times subroutine json_file_rename : tested 4 times subroutine json_file_update_string : tested 4 times subroutine assign_string_to_json_file : tested 3 times function json_file_valid_path_op : tested 3 times subroutine json_file_update_real : tested 3 times subroutine json_file_move_pointer : tested 2 times subroutine json_file_print_to_filename : tested 2 times subroutine json_file_variable_info : tested 2 times subroutine json_file_get_root : tested 2 times subroutine assign_json_file : tested 2 times subroutine json_file_get_integer_vec : tested 2 times subroutine json_file_get_logical_vec : tested 2 times subroutine json_file_add_real : tested 2 times subroutine json_file_add_real_vec : tested 2 times subroutine json_file_update_logical : tested 2 times subroutine json_file_remove : tested 2 times subroutine json_file_clear_exceptions : tested 1 times subroutine get_json_core_in_file : tested 1 times subroutine json_file_nullify : tested 1 times subroutine assign_json_file_to_string : tested 1 times subroutine json_file_get_real32 : tested 1 times subroutine json_file_get_real32_vec : tested 1 times subroutine json_file_add_object : tested 1 times subroutine json_file_add_integer : tested 1 times subroutine json_file_add_integer_vec : tested 1 times subroutine json_file_add_real32 : tested 1 times subroutine json_file_add_real32_vec : tested 1 times subroutine json_file_add_logical : tested 1 times subroutine json_file_add_logical_vec : tested 1 times subroutine wrap_json_file_add_string_vec : tested 1 times subroutine json_file_add_string_vec_path_ascii : tested 1 times subroutine json_file_add_string_vec_vec_ascii : tested 1 times subroutine json_file_update_integer : tested 1 times subroutine json_file_update_real32 : tested 1 times subroutine json_file_traverse : tested 1 times Report generated by FoBiS.py","tags":"","loc":"page/development-resources/json_module.F90.html"},{"title":"Release Checklist – JSON-Fortran","text":"When tagging a new release please follow this checklist so that the\ndocumentation will be updated correctly, and version strings will\nremain accurate. Release Checklist Make sure you are working from the master branch: git checkout master Update the CHANGELOG.md Ensure that the changes listed under Unreleased are up\n to date and accurate. Look at the latest changes committed to GitHub since the\n last release ,\n 8.5.2. This will only be accurate if you have\n not yet updated the project version in cmake. If you have updated\n the product version in cmake and run cmake (and therefore .VERSION ) then edit the URL manually to view the\n changes. Run the github_changelog_generator as follows, and compare the output to the unreleased section of the CHANGELOG.md : github_changelog_generator --user jacobwilliams --project json-fortran -o Unreleased.md\n --unreleased-only --bugs-label \"**Fixed issues:**\"\n --enhancement-label \"**Enhancements:**\" --issues-label\n \"**Fixed issues:**\" and make sure that you have a\n 16-digit GitHub token stored in the environment variable CHANGELOG_GITHUB_TOKEN . Compare generated Unreleased.md to the “Unreleased” section of CHANGELOG.md and make updates as needed. Rename the “Unreleased” section to the new version number Copy the “Unreleased” section header and “Complete\n Changeset” link line and insert it just below the TOC In the newly inserted “Complete Changeset” URL replace the\n old version number with the new version number Rename the lower “Unreleased” section (with all the\n changes) to the current version Replace HEAD in the header URL with the new version\n number Replace HEAD in the “Complete Changeset” link with the\n new version number. Insert the new version section in the TOC just below the\n “Unreleased” entry Add CHANGELOG.md to the git index: git add CHANGELOG.md Add an entry in pages/releases/index.md under the “Past\n Releases” heading Copy/paste the most recent one listed and replace all\n occurrences of the old version string with the new version\n string Add pages/releases/index.md to the git index: git add pages/releases/index.md Update the version string in remaining files requiring manual edits: Edit the product version in CMake Run cmake to generate the .VERSION file (or manually update this file if not running CMake) Edit the CMake example on line 145 of README.md Edit the json_fortran_version string in json_module.F90 Add these files to the git index: git add .VERSION README.md ./src/json_module.F90 Commit the changes to the master branch: git commit Create the tag: git tag Note: for some reason, using GitHub to tag a project means that the tag doesn’t show up when you git describe the project. Tagging from the command line makes git describe work as expected. GitHub Actions will publish the documentation for the\n latest tag to\n https://jacobwilliams.github.io/json-fortran/prev/ new_ver / if all\n goes according to plan Push tags and master to GitHub: git push --tags origin master Draft and publish a new GitHub Release corresponding to the new version Update the Homebrew formula Fork the Homebrew repository Change to your local Homebrew repository: cd $(brew\n --repository)/Library/Formula Add your fork as a pushable remote: git remote add\n YOUR_USERNAME https://github.com/YOUR_USERNAME/homebrew.git Make sure you’re on the master branch: git checkout master Make sure everything is up to date: brew update (this calls git pull ) Create a new branch from the latest master branch with git\n checkout -b YOUR_BRANCH_NAME origin/master Edit the json-fortran.rb formula with brew edit\n json-fortran Do NOT change anything other than the URL and the SHA256\n checksum at the top of the formula. These should be changed to\n correspond to the new version of the compressed tarball\n available on newly minted latest release page Test the changes to make sure that they will be accepted: brew audit --strict --online json-fortran brew rm json-fortran brew install -v json-fortran brew test -v json-fortran Add json-fortran.rb to the index ( git add json-fortran.rb ) Commit your changes with the correct commit message: git\n commit -m \"json-fortran \" Push changes to your fork: git push --set-upstream\n YOUR_USERNAME YOUR_BRANCH_NAME Go to https://github.com/Homebrew/homebrew and submit a pull\n request","tags":"","loc":"page/development-resources/release-checklist.html"},{"title":"Official Releases – JSON-Fortran","text":"Official Releases Latest Stable Release Past Releases Development Version Changes Between Releases Change Log Unreleased 8.5.2 (2024-05-27) 8.5.1 (2024-05-26) 8.5.0 (2024-05-25) 8.4.0 (2024-03-06) 8.3.0 (2022-05-07) 8.2.5 (2021-08-17) 8.2.4 (2021-08-15) 8.2.3 (2020-06-05) 8.2.2 (2020-06-05) 8.2.1 (2020-01-02) 8.2.0 (2020-08-16) 8.1.0 (2020-06-21) 8.0.0 (2020-04-04) 7.1.0 (2019-06-23) 7.0.0 (2019-01-26) 6.11.0 (2019-01-19) 6.10.0 (2019-10-20) 6.9.0 (2018-07-29) 6.8.0 (2018-07-19) 6.7.0 (2018-07-10) 6.6.0 (2018-07-01) 6.5.0 (2018-06-23) 6.4.0 (2018-06-10) 6.3.0 (2018-04-20) 6.2.0 (2018-03-10) 6.1.0 (2017-11-05) 6.0.0 (2017-08-24) 5.3.0 (2017-04-07) 5.2.0 (2017-03-05) 5.1.0 (2016-08-14) 5.0.2 (2016-06-11) 5.0.1 (2016-06-11) 5.0.0 (2016-05-09) 4.3.0 (2015-12-05) 4.2.0 (2015-08-03) 4.1.1 (2015-05-27) 4.1.0 (2015-05-05) 4.0.0 (2015-03-16) 3.1.0 (2015-02-28) 3.0.0 (2015-01-18) 2.0.0 (2014-12-27) 1.0.0 (2014-06-23) Official Releases This is where to find the documentation corresponding to an official,\ntagged release. If you are looking for the most current documentation\nof the master branch, please head back to the main page . Latest Stable Release Documentation: 8.5.2 Download: https://github.com/jacobwilliams/json-fortran/releases/latest Past Releases Note: There is currently no way to navigate back to the general/master\ndocumentation from the documentation for official releases other than\nusing the browser’s back button. Feel free to bookmark this page, or\nthe main project page for convenient navigation. 8.5.2 ( FORD generated documentation) Download 8.5.1 ( FORD generated documentation) Download 8.5.0 ( FORD generated documentation) Download 8.4.0 ( FORD generated documentation) Download 8.3.0 ( FORD generated documentation) Download 8.2.5 ( FORD generated documentation) Download 8.2.4 ( FORD generated documentation) Download 8.2.3 ( FORD generated documentation) Download 8.2.2 ( FORD generated documentation) Download 8.2.1 ( FORD generated documentation) Download 8.2.0 ( FORD generated documentation) Download 8.1.0 ( FORD generated documentation) Download 8.0.0 ( FORD generated documentation) Download 7.1.0 ( FORD generated documentation) Download 7.0.0 ( FORD generated documentation) Download 6.11.0 ( FORD generated documentation) Download 6.10.0 ( FORD generated documentation) Download 6.9.0 ( FORD generated documentation) Download 6.8.0 ( FORD generated documentation) Download 6.7.0 ( FORD generated documentation) Download 6.6.0 ( FORD generated documentation) Download 6.5.0 ( FORD generated documentation) Download 6.4.0 ( FORD generated documentation) Download 6.3.0 ( FORD generated documentation) Download 6.2.0 ( FORD generated documentation) Download 6.1.0 ( FORD generated documentation) Download 6.0.0 ( FORD generated documentation) Download 5.3.0 ( FORD generated documentation) Download 5.2.0 ( FORD generated documentation) Download 5.1.0 ( FORD generated documentation) Download 5.0.2 ( FORD generated documentation) Download 5.0.1 ( FORD generated documentation) Download 5.0.0 ( FORD generated documentation) Download 4.3.0 ( FORD generated documentation) Download 4.2.0 ( FORD generated documentation) Download 4.1.1 ( ROBODoc generated documentation) Download 4.1.0 ( ROBODoc generated documentation) Download 4.0.0 ( ROBODoc generated documentation) Download 3.1.0 ( ROBODoc generated documentation) Download 3.0.0 ( ROBODoc generated documentation) Download 2.0.0 ( ROBODoc generated documentation) Download 1.0.0 ( ROBODoc generated documentation) Download Development Version Documentation for the latest development version may be found at https://jacobwilliams.github.io/json-fortran/prev/8.5.2/index.html or generated locally using the build.sh build\nscript. Changes Between Releases Included below is the changelog–a list of significant changes\nimplemented between each release. Change Log Table of Contents Change Log Unreleased 8.5.2 (2024-05-27) 8.5.1 (2024-05-26) 8.5.0 (2024-05-25) 8.4.0 (2024-03-06) 8.3.0 (2022-05-07) 8.2.5 (2021-08-17) 8.2.4 (2021-08-15) 8.2.3 (2021-06-05) 8.2.2 (2021-06-05) 8.2.1 (2021-01-02) 8.2.0 (2020-08-16) 8.1.0 (2020-06-21) 8.0.0 (2020-04-04) 7.1.0 (2019-06-23) 7.0.0 (2019-01-26) 6.11.0 (2019-01-19) 6.10.0 (2019-10-20) 6.9.0 (2018-07-29) 6.8.0 (2018-07-19) 6.7.0 (2018-07-10) 6.6.0 (2018-07-01) 6.5.0 (2018-06-23) 6.4.0 (2018-06-10) 6.3.0 (2018-04-20) 6.2.0 (2018-03-10) 6.1.0 (2017-11-05) 6.0.0 (2017-08-24) 5.3.0 (2017-04-07) 5.2.0 (2017-03-05) 5.1.0 (2016-08-14) 5.0.2 (2016-06-11) 5.0.1 (2016-06-11) 5.0.0 (2016-05-09) 4.3.0 (2015-12-05) 4.2.0 (2015-08-03) 4.1.1 (2015-05-27) 4.1.0 (2015-05-05) 4.0.0 (2015-03-16) 3.1.0 (2015-02-28) 3.0.0 (2015-01-18) 2.0.0 (2014-12-27) 1.0.0 (2014-06-23) Unreleased Complete Changeset 8.5.2 (2024-05-27) Complete Changeset or Download v8.5.2 Bug Fixes: Fixed a CMake bug where the package version was not set correctly, which caused the CMake configuration files to be saved to a folder with blank version name. #560 ( timfelle ) 8.5.1 (2024-05-26) Complete Changeset or Download v8.5.1 Bug Fixes: Fixed a bug when setting JSONFORTRAN_STATIC_LIBRARY_ONLY to False. Also restored some of the original CMake settings from 8.4.0. Specifically, the tests are enabled by default, and both the shared and static libraries are built by default. #558 #559 ( jacobwilliams ) 8.5.0 (2024-05-25) Complete Changeset or Download v8.5.0 Enhancements: Various CMake updates: Only installing if json-fortran is the top level project. Added a library alias so that json fortran can be included with find_package , fetch_content , and add_subdirectory easily. #526 #527 , #528 , #529 #556 ( K20shores ) Fixed compilation with Ninja and Intel OneAPI ifx compiler, and added some CMake options #557 ( lmdiazangulo ) Note that the CMake minimum version is now 3.18 . Added a new unit test. #546 #547 ( jacobwilliams ) Various CI and Readme updates. Bug Fixes: Fixed a bug when IEEE floating-point rounding mode was set to IEEE_DOWN . #545 ( amanotk ) 8.4.0 (2024-03-06) Complete Changeset or Download v8.4.0 Enhancements: Minor updates for readme and documentation #521 ( zmoon ) Updates for unit tests #536 #543 ( gha3mi , jacobwilliams ) Bug Fixes: Fixed a bug where the library would not compile if using REAL128 kind #550 ( jacobwilliams ) Fixes to GitHub Actions CI #535 ( jacobwilliams ) 8.3.0 (2022-05-07) Complete Changeset or Download v8.3.0 Enhancements: Added procedure to query version of json-fortran #505 #512 #516 ( jacobwilliams ) Updates to the CI #509 #508 ( jacobwilliams ) Add information on conda-forge distribution #506 ( awvwgk ) #507 Updated CMake to export include directories with target #504 #503 ( awvwgk ) Bug Fixes: Fixed a minor standards violation #510 #511 ( jacobwilliams ) Minor changes to work around issues with nvfortran compiler #496 ( vyu16 ) 8.2.5 (2021-08-17) Complete Changeset or Download v8.2.5 Enhancements: Enabled some extra warnings in the Visual Studio Debug project Removed obsolete forall construct from unit test 12 Bug Fixes: Fixed a potential uninitialized variable issue in get_current_line_from_file_stream Fixed a memory leak when parsing an invalid JSON . Fixed various memory issues in the unit tests #494 #495 ( jacobwilliams ) 8.2.4 (2021-08-15) Complete Changeset or Download v8.2.4 Enhancements: Documentation updates. #492 ( jacobwilliams ) Added MultiProcessorCompilation=\"true\" to the Visual Studio project file. Bug Fixes: Fixed a memory leak when deserializing an empty list. #488 #493 ( jacobwilliams ) Fixed a memory leak when cloning a JSON pointer. #489 #490 ( jacobwilliams ) Fixed a bug where some error messages would attempt to print unallocated name values. #491 8.2.3 (2020-06-05) Complete Changeset or Download v8.2.3 Enhancements: No code changes. Only documentation updates. 8.2.2 (2020-06-05) Complete Changeset or Download v8.2.2 Enhancements: Added support for the Fortran Package Manger. #483 ( jacobwilliams ) Updated CI to use GitHub Actions, including auto-deployment of documentation. #476 #484 ( jacobwilliams ) Eliminated some compiler warnings about real conversions. Bug fixes: Fixed a bug in test case 47. 8.2.1 (2020-01-02) Complete Changeset or Download v8.2.1 Enhancements: Fixed a couple compiler warnings when using the latest Intel Fortran compiler. #477 ( jacobwilliams ) replaced -std15 with -std18 for the Intel compiler in the FoBiS build file. Updated the Visual Studio test project with some missing test cases. ( jacobwilliams ) Bug fixes: Bug fix in json_value_remove : the parent and previous pointers should also be nullified when removing from an array. #477 #479 ( jacobwilliams ) 8.2.0 (2020-08-16) Complete Changeset or Download v8.2.0 Enhancements: Updated the compress_vectors option so that now vectors of mixed integers and reals are also compressed. #470 #471 ( jacobwilliams ) 8.1.0 (2020-06-21) Complete Changeset or Download v8.1.0 Enhancements: Added a json_file = string assignment operator #463 #464 #465 ( jacobwilliams ) Added support for multiple comment characters. The default is now to recognize any of #!/ as comment lines. #456 #461 ( jacobwilliams ) Added recursive attribute to json_get_array #291 #453 ( jacobwilliams ) Added optional “default” argument to json_get_*_by_path routines #208 #462 ( jacobwilliams ) Updated readme to document the cmake build instructions #455 ( jacobwilliams ) Bug fixes: Fixed bug in json_get_path #452 #454 ( jacobwilliams ) 8.0.0 (2020-04-04) Complete Changeset or Download v8.0.0 Enhancements: Cleanup of the API for reading and writing JSON . The main methods are now called print , load , serialize and deserialize . Note that the previous ones are still present for backward compatibility. #397 #409 ( jacobwilliams ) Added a finalizer to the json_file type #199 #406 ( jacobwilliams ) Added new optional arguments ( null_to_real_mode , non_normal_mode , use_quiet_nan ) to the initialize routines to handle NaN and Infinity. #395 Added a new optional argument ( strict_integer_type_checking ) to the initialize routines. If enabled, when parsing an integer value, if the parsing fails (e.g., the integer is outside the range of the integer kind), it will then attempt to convert it to a real. #444 #446 ( jacobwilliams ) json_info will now check for exceptions and raise one if the pointer is not associated #424 #425 ( jacobwilliams ) Allow the parser to work with some nonstandard real value representations (leading + , no leading digit before decimal, D/d format). #417 #418 ( jacobwilliams ) Added a character string to json_file assignment operator #410 #411 ( jacobwilliams ) Added a json_print_to_console method to json_core to match the one in json_file #408 The output array is now deallocated if an exception occurs in a json_get_*_vec routine #416 #419 ( jacobwilliams ) Bug fixes: Fixed a crash in json_file_check_for_errors if the error_msg was not present. #420 Fixed a potential issue with real to integer conversion when the library is compiled with a non-default integer kind. #449 #450 ( jacobwilliams ) Fixed a dangling pointer in unit test 10. #422 #423 ( jacobwilliams ) CMake updates: Updated CMake to enable building JSON -Fortran as a subdirectory of another project #445 #443 ( rouson ) Updated CMake for compatibility with older versions < 3.7. #442 #451 jacobwilliams ) Allow linking to JSON -Fortran from GFortran programs using OpenCoarrays as the coarray runtime implementation. Use the -DJSON_FORTRAN_USE_OpenCoarrays:BOOL=ON option to CMake to enable this. (NOTE: The fact that this is required may be a bug in GFortran.) CI updates: Updated the CI system to Travis-CI.com #447 #448 ( jacobwilliams ) Migrate test setup/teardown to fixtures #413 #421 ( zbeekman ) Expanded compiler tests on Travis-CI #414 #180 ( jacobwilliams ) 7.1.0 (2019-06-23) Complete Changeset or Download v7.1.0 Enhancements: Added a Visual Studio Code workspace file #399 #400 ( jacobwilliams ) Improvements to json_value_get_child_by_index efficiency #401 #402 ( jacobwilliams ) Updates to CMake install rule for better compatibility with Visual Studio #396 ( zbeekman ) Bug fixes: Fix for undeclared variable causing failing test on Mac #392 ( porteri ) Fixed a bug where using json%add() to create new variables in a structure would stop the program if stop_on_failure was enabled. #403 #404 ( jacobwilliams ) 7.0.0 (2019-01-26) Complete Changeset or Download v7.0.0 Enhancements: Added support for multiple real kinds: The library now supports the default real kind specified ( real32 , real64 and real128 ) as well as the kinds in this set with less precision than the default. For example, if real64 is specified (which is the default), then both real32 and real64 are available in all the public APIs. Internally, the values are always stored in a variable of the default kind. #386 #387 ( jacobwilliams ) Added a create_real() method and a json_real parameter to replace create_double() and json_double . The old versions are still available for backward compatibility. Added CMake options to control integer and real kinds #284 Updated the default real format statement to correctly correspond to the specified real kind. Added new json_file constructor functions for strings. This allows a json_file to be initialized using syntax such as: f = json_file('{\"x\": 1}') . #381 #382 ( jacobwilliams ) Fixed some links in the documentation. Bug fixes: Fixed an issue where the parser would fail if the JSON structure was just a lone integer. #388 #389 ( jacobwilliams ) Fixed an issue where the unit tests did not compile when using real32 or real128 . #383 #384 ( jacobwilliams ) Fixed various issues preventing compilation if the integer kind was changed from the default. #365 #385 ( jacobwilliams ) Renamed the integrated tests preprocessor flag to INTEGRATED_TESTS since it was mispelled. #390 #391 ( jacobwilliams ) 6.11.0 (2019-01-19) Complete Changeset or Download v6.11.0 Enhancements: Speed up writing JSON to a string #377 #378 ( jacobwilliams ) 6.10.0 (2019-10-20) Complete Changeset or Download v6.10.0 Enhancements: Speed up JSON file parsing #363 #366 ( jacobwilliams ) CMake updates for Windows #361 ( zbeekman ) Bug fixes: Parser no longer stops after main object, ignoring the rest of the file #369 #370 ( jacobwilliams ) 6.9.0 (2018-07-29) Complete Changeset or Download v6.9.0 Enhancements: Some efficiency improvements when parsing strings. #352 ( jacobwilliams ) Speed up the unescape_string() routine. #351 Some cleanup and efficiency improvements for hex string validation. #354 Various updates to error message reporting. The two arguments to json_file_check_for_errors() are now optional to match the core routine. #356 Some adjustments to error messages for invalid hex strings. Validation of hex strings is now done in the unescape_string() routine. #354 A string that ends in an escape character \\ is now flagged as invalid. #353 Fixed bugs: Fixed a bug in the annotate_invalid_json() routine. #355 Fixed an issue with the jf_test_06 unit test failing on Windows. #357 6.8.0 (2018-07-19) Complete Changeset or Download v6.8.0 Enhancements: Added some additional checks so that the destroy method could still be used to destroy some malformed JSON linked lists. Also updated the validate method to check for circular references. #346 #349 ( jacobwilliams ) Added missing arguments ( trim_str and adjustl_str ) to some of the string wrapper routines. #347 #348 ( jacobwilliams ) Various minor changes to remove some compiler warnings and a line length standards violation. Various documentation string updates. Fixed bugs: Fixed a dangling pointer bug in the destroy method that was causing unpredictable behavior in this routine which could cause a crash for some compilers #307 #350 ( jacobwilliams ) 6.7.0 (2018-07-10) Complete Changeset or Download v6.7.0 Enhancements: Made the two arguments to json_check_for_errors() optional, so now either or both can be used. Note that if no error has been raised, then error_msg is now returned unallocated. #344 #345 ( jacobwilliams ) Added an additional error check in json_value_print() to check for an unassociated pointer. #342 #343 ( jacobwilliams ) Added remove() method to json_file #339 #340 ( jacobwilliams ) Added additional error checks to json_value_add_member() . Now it will raise an exception if try to add a child to a non-array or non-object. #337 #338 ( jacobwilliams ) Added some additional unit tests to increase coverage #336 ( jacobwilliams ) Fixed bugs: Fixed a bug in json_value_clone_func() where it could crash if attempting to clone an array element. Updated this routine to improve behavior when cloning an array element (the subsequent entries are no longer cloned). #334 #335 ( jacobwilliams ) 6.6.0 (2018-07-01) Complete Changeset or Download v6.6.0 Enhancements #332 ( jacobwilliams ) Now, attempting to get a string variable as an integer, double, or logical will attempt to convert it to a string if strict_type_checking=False . Formerly these cases would raise an exception. #331 Fixed an inconsistency in json_get_by_path() . Now if using the optional found argument, any exceptions raised by this routine are cleared. #330 Changed the name argument in json_value_remove_if_present() to ‘path’ to be consistent with other routines since it is really a path. #329 Various documentation string updates. Fixed bugs: Fixed a bug in wrap_json_get_path() where an optional argument was being used without checking if it was present. #333 6.5.0 (2018-06-23) Complete Changeset or Download v6.5.0 Enhancements & Fixed Issues: Added optional trim and adjustl arguments were added to all the various routines for adding strings and string vectors to JSON #323 ( jacobwilliams ) The trailing_spaces_significant flag is now respected for name keys when creating a JSON structure. #324 #326 ( jacobwilliams ) 6.4.0 (2018-06-10) Complete Changeset or Download v6.4.0 Enhancements: Added optional stop_on_error argument to the various initialize() routines to immediately stop the program if an exception is raised. #318 #320 ( jacobwilliams ) Added routines to check if a name key is present in a json_file object, which is also available using the .in. operator. #316 #319 ( jacobwilliams ) Added routines to rename a json variable by specifying the path. #314 #317 ( jacobwilliams ) Added a Fobis rule for running the test programs. #321 ( jacobwilliams ) 6.3.0 (2018-04-20) Complete Changeset or Download v6.3.0 Enhancements: Add a FoBiS configuration file that can be used to build the library, tests, and documentation. #310 #311 ( jacobwilliams ) CMake produced Visual Studio Project #70 ( jacobwilliams ) Minor changes: renamed some of the example files and reverted back to older versions of FoBiS and markdown for documentation building on Travis-CI #313 ( jacobwilliams ) Fixed issues: Fixed a bug in the escaping logic where / characters in strings would not be printed under some circumstances. This bug was introduced in the 6.2.0 release. #312 ( jacobwilliams ) 6.2.0 (2018-03-10) Complete Changeset or Download v6.2.0 Enhancements: Allow the unit tests to be run from within the Visual Studio solution #295 ( Hugh-walsh , jacobwilliams ) Compiling now works for the CMake-produced Visual Studio solution on Windows (note that the CMake-produced solution is a bit different from the other one provided). #70 #309 ( handrake0724 , jacobwilliams ) Added a new option escape_solidus to specify if the forward slash (“ / ”) is to be escaped when serializing JSON . By default, it is no longer escaped (this changes the behavior introduced in 6.0.0) #304 #305 ( jacobwilliams ) Fixed issues: Fixed an issue causing a problem with the NAG compiler #303 ( jacobwilliams ) 6.1.0 (2017-11-05) Complete Changeset or Download v6.1.0 Enhancements: Added an optional allow_duplicate_keys argument to the various initialize routines. This is True by default. If False, then duplicate keys are considered an error. Also added check_for_duplicate_keys and check_children_for_duplicate_keys methods that can be called. #250 #290 ( jacobwilliams ) Added support for JSONPath “bracket-notation” mode for specifying paths to JSON variables. #266 #292 ( jacobwilliams ) Fixed issues: Replaced CMAKE_INSTALL_LIBDIR with INSTALL_LIB_DIR in the CMake project. #286 ( foeroyingur ) Fixed bug in the lowercase_string routine that could cause a crash for Debug builds. #293 #294 ( jacobwilliams ) 6.0.0 (2017-08-24) Complete Changeset or Download v6.0.0 Enhancements: Added a routine to reverse an array or object #280 #281 ( jacobwilliams ) Fixed issues: Fixed a bug where using no_whitespace mode could still print line breaks in some cases #288 ( jacobwilliams ) Strings (name key and value) were not being properly escaped/unescaped in some contexts. This change introduces a small backward incompatibility (formerly, if keys contained escape characters, the user would have to include them when getting their value). Now, the string variables in all user-facing API calls are unescaped (i.e., the user does not have to manually escape the keys to get their associated value). All strings are also now properly returned unescaped, no matter how the JSON structure was constructed. Escaping is now done in all cases if necessary when the JSON is printed to a string, file or the console. #287 #289 ( jacobwilliams ) 5.3.0 (2017-04-07) Complete Changeset or Download v5.3.0 Enhancements: It is now possible to build a JSON structure by specifying the paths to the variables. The update routines also now use this new feature so if the variable is not present, it will be added using the path (formerly, it added it as a name, which was inconsistent). Renamed the argument to the update routines from name to path . #257 #261 #268 #270 ( jacobwilliams ) Added new get routine to return an allocatable string array #245 #265 ( jacobwilliams ) Arrays of scalar values can now optionally be printed on a single line #228 #273 ( jacobwilliams ) When reading an empty JSON array it is now returned as an allocated array with zero length (rather than an unallocated array). #276 #277 ( jacobwilliams ) Fixed issues: Fixed an issue where the char_count wasn’t always correct, which caused the error message for invalid JSON to be wrong. #272 #274 ( jacobwilliams ) Fixed an issue where values with significant trailing whitespace were being trimmed when printed. #263 ( jacobwilliams ) Fixed two bugs in json_get_path for RFC 6091 path mode. Special characters weren’t being encoded properly, and it didn’t work if the final key was all whitespace. #262 #264 ( jacobwilliams ) Fixed an issue with indenting of arrays within arrays. #269 #271 ( jacobwilliams ) 5.2.0 (2017-03-05) Complete Changeset or Download v5.2.0 Enhancements: Added support for comments in JSON files. #256 #234 #259 ( jacobwilliams ) #240 ( jacobwilliams ) Added support for RFC 6901 paths. #249 #253 #255 #258 ( jacobwilliams ) #252 ( jacobwilliams ) #251 ( jacobwilliams ) Can now specify default real and integer kinds using compiler directives. #236 #238 #239 ( jacobwilliams ) compact_reals and real_format='*' can now be used at the same time. #226 #227 ( jacobwilliams ) Added option to change default path separator character. #254 ( jacobwilliams ) Add pkg-config file #242 ( wesbarnett ) Fixed issues: Real numbers now written with 17 digits of precision (previously it was using 16 which doesn’t accurately represent all values to full precision) #230 #241 ( jacobwilliams ) #232 ( jacobwilliams ) 5.1.0 (2016-08-14) Complete Changeset or Download v5.1.0 Enhancements: Added a traverse routine to json_file #204 #206 ( jacobwilliams ) Added added get and set routines for the json_core in a json_file #206 ( jacobwilliams ) Added new get_path routine #223 #224 ( jacobwilliams ) Added new option for returning strings in their escaped form. Also, when strict_type_checking is False, the get routines will now return integer, double, logical, and null values as strings. #224 ( jacobwilliams ) Added new insert_after routine #220 #221 ( jacobwilliams ) Move json type integer variables into the json_parameters module #218 #219 ( jacobwilliams ) Added new option to print JSON without extra whitespace #216 #217 ( jacobwilliams ) Added new info routines ( json_info_by_path , json_matrix_info_by_path , and json_matrix_info ) #213 #212 ( jacobwilliams ) Added an API for adding Null variables #210 #214 ( jacobwilliams ) Fixed issues: Fix doc deployment problems #201 ( zbeekman ) 5.0.2 (2016-06-11) Complete Changeset or Download v5.0.2 Note: This release contains no changes to the library, only the documentation. Minor documentation fix. 5.0.1 (2016-06-11) Complete Changeset or Download v5.0.1 Note: This release contains no changes to the library, only the build system and documentation. Fixed issues: FORD now uses the Intel preprocessor when library is built with the Intel compiler #205 ShellCheck script files #181 Merged pull requests: De-lint shell scripts with ShellCheck, debug FORD upgrade, and various updates to documentation and build system. #201 ( zbeekman ) 5.0.0 (2016-05-09) Complete Changeset or Download v5.0.0 See also this Wiki page on how to update your code to be compatible with this release. Enhancements: Split json_module into multiple files. #168 #170 ( jacobwilliams ) The library is now thread safe #36 #170 ( jacobwilliams ) Added new initialize() , failed() , print_error_message() , check_to_errors() , and clear_exceptions() to the json_file class. #170 ( jacobwilliams ) The number of spaces for indenting can now be user specified. #170 ( jacobwilliams ) Updates for Visual Studio project #170 ( jacobwilliams ) Added a validate() method for validating JSON linked lists #196 #197 ( jacobwilliams ) Added some additional error checks for malformed JSON linked lists #182 ( jacobwilliams ) Added a new routine is_child_of to check if one json_value is a descendant of another #182 ( jacobwilliams ) Added new options for case-insensitive searching of names/paths, as well as the option to consider trailing space significant #185 #192 ( jacobwilliams ) Added a routine to enable swapping of elements in a json_value linked list #177 #182 ( jacobwilliams ) Rename parameters RK , IK , LK , CK , and CDK using less generic names ( json_RK , json_IK , json_LK , json_CK , and json_CDK ) #172 ( jacobwilliams ) Calling the initialize() method (which is now in json_core and json_file ) is no longer mandatory #171 ( jacobwilliams ) Added a rename() method for renaming a json_value variable #184 #187 ( jacobwilliams ) Added some compiler directives so that workarounds for Gfortran bugs are not used for other compilers #190 ( jacobwilliams ) Added option for strict typing for get routines #173 ( jacobwilliams ) Various cosmetic changes and renaming of some of the dummy arguments in some procedures. #198 ( jacobwilliams ) Added checks to avoid unnecessary looping when traversing arrays if an exception is thrown #183 ( jacobwilliams ) Added a new get_child method to get the first child. [9d4f736] ( jacobwilliams ) Added some additional error checks for unassociated pointers [9d4f736] ( jacobwilliams ) Ensure null pointers are returned for some error cases [838f476] ( jacobwilliams ) Fixed Issues Fixed a bug in the traverse() routine, where the finished output flag was not being correctly checked #182 ( jacobwilliams ) 4.3.0 (2015-12-05) Complete Changeset or Download v4.3.0 Enhancements: Added routines for getting the parent , next , previous , and tail pointers #161 ( jacobwilliams ) Added a deep copy routine for json_value structures #160 ( jacobwilliams ) Updated the Visual Studio solution to VS 2013. Also removed the test projects (it now just compiles the library) ( jacobwilliams ) Fixed issues: Rewrote logic for decoding strings, and fixed bugs related to parsing strings with certain escape character combinations #164 ( jacobwilliams ) Fixed a bug where some real numbers weren’t being read in properly. Also added an option to output real numbers with fmt=* formatting #157 ( jacobwilliams ) Merged pull requests: Minor documentation change. #153 ( jacobwilliams ) Enabled FORD graphs in documentation. #149 ( jacobwilliams ) Tag documentation fix #147 ( zbeekman ) Fix url in 4.2.0 tag documentation #146 ( zbeekman ) 4.2.0 (2015-08-03) Complete Changeset or Download v4.2.0 Enhancements The exception_thrown flag is now true by default before the json_initialize routine is called to initialize the module. #142 ( jacobwilliams ) Updated json_info to get name of json_value variable. #141 ( jacobwilliams ) Added a new routine ( json_traverse ) to traverse all nodes of a JSON structure #140 via PR #144 from ( jacobwilliams ) Added FORD documentation automatic deployment via PR #137 from zbeekman Added new version release checklist, #122 via PR #137 from zbeekman Added finer control of real format printing, #117 via PR #137 from zbeekman , and #143 from jacobwilliams Removed official SCons support to facilitate faster development\n cycle, #121 via PR #130 from zbeekman Add a CHANGELOG #120 via PR #123 from zbeekman Spell ‘Fortran’ correctly #118 via PR #124 from zbeekman Migrate to Codecov.io #106 via PR #107 from zbeekman CMake emulate make check and exclude tests\n from all target #103 implemented via PR #104 from zbeekman Fixed issues: Fixed bad gcov reports being generated due to a gcov/gfortran bug, #131 via PR #137 from zbeekman Fixed inaccurate coverage reports via PR #109 from zbeekman Fixed a small consistency issue when outputting floating point\n numbers via PR #125 Problems writing JSON to error_unit (0) due to JSON -Fortran’s\n special interpretation of unit=0 #85 fixed via PR #111 from zbeekman Broken parsing error message for empty line PR #110 ( jacobwilliams ) Merged pull requests: Documentation fixes & coverage improvements #112 ( zbeekman ) Speedier container based Travis-CI builds #130 ( zbeekman ) 4.1.1 (2015-05-27) Complete Changeset or Download v4.1.1 Enhancements Installation now possible with a Homebrew package on Mac OS X CMake install option to use a more traditional\n Gnu install structure (to support Homebrew installation) PR #101 from zbeekman Fixed issues: Broken Travis-CI tests #99 fixed by PR #100 from zbeekman CMakeLists.txt accidentally defaulting to Unicode build due to small\n typo #96 ,\n fixed by PR #97 from zbeekman Merged pull requests: 4.1.0 (2015-05-05) Complete Changeset or Download v4.1.0 Enhancements: Run-time speed improvements #75 implemented in PR #93 from jacobwilliams Merged pull requests: Small formatting and addition of a unit test #95 ( jacobwilliams ) 4.0.0 (2015-03-16) Complete Changeset or Download v4.0.0 Enhancements Unicode support #35 added in PR #84 from zbeekman Automate testing of the stand alone programs listed in the README.md #67 added in PR #71 from zbeekman Automatically analyze and report test coverage info with coveralls.io and Travis-CI #63 implemented in PR #72 from zbeekman Enhanced command line user interface for build.sh build script PR #82 ( zbeekman ) Additional options and improvements made to command line interface\n of the build.sh build script PR #88 ( zbeekman ) Added unit tests for improved unit test coverage PR #83 ( jacobwilliams ) and PR #73 ( jacobwilliams ) Fixed issues: Stack overflow in destroy for large structure #76 fixed in PR #77 from jacobwilliams Discrepancy with dummy argument attributes for\n path between get and get_..._vec procedures #79 Small bug fix for CMake install #68 ( zbeekman ) JSON output files from tests are overwriting expected outputs and\n outputs from other tests #86 ( zbeekman ) NAG Fortran Errors on module procedure :: change to module\n procedure with no double colon PR #78 from kmanalo CMake for jf_test_9.f90 broke #74 ( zbeekman ) Merged pull requests: Very small changes and fixes: #81 ( zbeekman ) 3.1.0 (2015-02-28) Complete Changeset or Download v3.1.0 Enhancements: Compact real number printing ( 0.0 instead of 0.00000...E000 )\n with ability to revert to old behavior #39 (implemented in PR #60 from zbeekman and PR #61 from jacobwilliams ) Read JSON structure from a character string #5 Adopted official contributing guidelines and added a CONTRIBUTING.md #47 Fixed issues: Build script ( build.sh ) failing with Intel’s ifort #53 ,\n fixed by PR #54 (from zbeekman ) Segfaults and unexpected behavior due to optional dummy arguments\n being dereferenced outside of if (present(…)) #52 Documentation not being produced for tests because tests directory\n should be sub-directory of src #49 Example 8 failing on gfortran 4.9.2 #44 CMake Tests 3 and 8 fail due to new test\n case, example 6, added in e636f96 #30 CMake build using makefiles fails if\n parallel build is specified #8 , fixed\n by PR #50 from zbeekman Merged pull requests: Unit test updates #65 ( jacobwilliams ) Unit test cleanup as discussed in #30 #64 ( zbeekman ) Stops PRs by @jacobwilliams from\n deploying master docs #62 ( zbeekman ) Auto deploy script #59 ( zbeekman ) Getting ready for auto-deployment #57 ( zbeekman ) Travis-CI build matrix #56 ( zbeekman ) 3.0.0 (2015-01-18) Complete Changeset or Download v3.0.0 Fixed issues: Intel compiler bug triggered by commit d2622a8 #41 Unaligned data warnings with Intel compiler #34 CMake fails due to bad path to robodoc.rc #31 Indentation of output wrong for some nested objects #29 Intel build broke #28 CMake misbehaving when ROBODoc absent #26 Differentiate internal (low level, private) procedures/types/etc\n from public API in documentation #21 Merged pull requests: CMake Fixes for issues #31 and #26 . #32 ( zbeekman ) 2.0.0 (2014-12-27) Complete Changeset or Download v2.0.0 Enhancements: - Significant changes to the API including new procedures\n- Code re-factoring\n- SCons build added thanks to @bruceravel Fixed issues: enable wiki contributions from the public #23 1.0.0 (2014-06-23) Download v1.0.0 Enhancements: Validate hex values in strings #14 Add CMake build infrastructure #6 (pull request from zbeekman ) CMake build now builds the example program\n and runs tests #9 Added CMake logic to build ROBODoc documentation #12 (pull\n request from zbeekman ) Upload ROBODoc documentation to\n gh-pages project page #7 Add CMake testing infrastructure #18 ( zbeekman ) Implement better support for Intel compiler, DPD200247629 associate construct work around, via PR #2 ( zbeekman ) Fixed issues: Unit tests fail when compiled with GFortran #19 CMake outputs of ROBODoc must be specified in\n CMakeLists.txt manually #17 Invalid JSON input files ( test1.json , test5.json ) #10 ,\n fixed by PR #11 ( zbeekman ) char() is processor dependent, use achar() #20 (pull request from zbeekman ) Bug-fix for ROBODoc documentation\n generation with CMake #16 (pull request from zbeekman ) Change library file from libjson to libjsonfortran #4 * This Change Log was generated with help from github_changelog_generator","tags":"","loc":"page/releases/index.html"}]}
\ No newline at end of file
+var tipuesearch = {"pages":[{"title":" JSON-Fortran ","text":"JSON-Fortran Brief description License Official Releases Miscellaneous Brief description A user-friendly, thread-safe, and object-oriented API for reading and writing JSON files, written in modern Fortran. License The JSON -Fortran source code and related files and documentation are\ndistributed under a permissive free software license (BSD-style). See\nthe LICENSE file for more details. Official Releases The current stable release is 9.0.0 and can be downloaded\non GitHub or installed with Homebrew on MacOS. The\ndocumentation for the current version, 9.0.0 , can be\nfound here 1 , and a\nlist of changes from the previous version are here . A list of all past releases, links to their documentation, and the\nchange log can be found on the releases page . Miscellaneous For more information about JSON , see: http://www.json.org/ Documentation for a particular release does not contain links\nback to general documentation; use the browser’s back button to\nnavigate back to https://jacobwilliams.github.io/json-fortran/ ↩ Developer Info Jacob Williams","tags":"home","loc":"index.html"},{"title":"json_file – JSON-Fortran ","text":"type, public :: json_file The json_file is the main public class that is\n used to open a file and get data from it. A json_file contains only two items: an instance of a json_core ,\n which is used for all data manipulation, and a json_value pointer,\n which is used to construct the linked-list data structure.\n Note that most methods in the json_file class are simply wrappers\n to the lower-level routines in the json_value_module . Example program test use json_module implicit none type ( json_file ) :: json integer :: ival real ( real64 ) :: rval character ( len = :), allocatable :: cval logical :: found call json % initialize ( compact_reals = . true .) call json % load ( filename = 'myfile.json' ) call json % print () !print to the console call json % get ( 'var.i' , ival , found ) call json % get ( 'var.r(3)' , rval , found ) call json % get ( 'var.c' , cval , found ) call json % destroy () end program test Note The destroy() method may be called to free the memory if necessary. json_file includes a finalizer that also calls destroy() when the variable goes out of scope. Inherits type~~json_file~~InheritsGraph type~json_file json_file type~json_core json_core type~json_file->type~json_core core type~json_value json_value type~json_file->type~json_value p type~json_value->type~json_value previous, next, parent, children, tail Help Graph Key Nodes of different colours represent the following: Graph Key Type Type This Page's Entity This Page's Entity Solid arrows point from a derived type to the parent type which it\nextends. Dashed arrows point from a derived type to the other\ntypes it contains as a components, with a label listing the name(s) of\nsaid component(s). Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Components Type Visibility Attributes Name Initial type( json_core ), private :: core The instance of the json_core factory used for this file. type( json_value ), private, pointer :: p => null() the JSON structure read from the file Constructor public interface json_file Structure constructor to initialize a json_file object with an existing json_value object or a JSON string, and either the json_core settings or a json_core instance. Example ... type ( json_file ) :: my_file type ( json_value ), pointer :: json_object type ( json_core ) :: json_core_object ... ! Construct a json_object: !could do this: my_file = json_file ( json_object ) !or: my_file = json_file ( json_object , verbose = . true .) !or: my_file = json_file ( '{\"x\": [1]}' , verbose = . true .) !or: my_file = json_file ( json_object , json_core_object ) !or: my_file = json_file ( '{\"x\": [1]}' , json_core_object ) private function initialize_json_file (p, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma, nullify_pointer) result(file_object) Author Izaak Beekman Date 07/23/2015 Cast a json_value object as a json_file object.\n It also calls the initialize() method. Note initialize_json_core , json_initialize , initialize_json_core_in_file , initialize_json_file , initialize_json_file_v2 , initialize_json_file_from_string ,\n and initialize_json_file_from_string_v2 all have a similar interface. Arguments Type Intent Optional Attributes Name type( json_value ), optional, pointer :: p json_value object to cast\nas a json_file object. This\nwill be nullified. logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) logical(kind=LK), intent(in), optional :: nullify_pointer if True, then p will be nullified\nif present. (default is True). Normally,\nthis should be done, because the json_file will destroy\nthe pointer when the class goes out of scope (causing p to be\na dangling pointer). However, if the intent is to use p in\na json_file and then call nullify and continue\nto use p , then this should be set to False. Return Value type( json_file ) private function initialize_json_file_v2 (json_value_object, json_core_object) result(file_object) Author Jacob Williams Date 4/26/2016 Cast a json_value pointer and a json_core object\nas a json_file object. Arguments Type Intent Optional Attributes Name type( json_value ), intent(in), pointer :: json_value_object type( json_core ), intent(in) :: json_core_object Return Value type( json_file ) private function initialize_json_file_from_string (str, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) result(file_object) Author Jacob Williams Date 01/19/2019 Cast a JSON string as a json_file object.\n It also calls the initialize() method. Example type ( json_file ) :: f f = json_file ( '{\"key \": 1}' , trailing_spaces_significant = . true .) Note initialize_json_core , json_initialize , initialize_json_core_in_file , initialize_json_file , initialize_json_file_v2 , initialize_json_file_from_string ,\n and initialize_json_file_from_string_v2 all have a similar interface. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str string to load JSON data from logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Return Value type( json_file ) private function wrap_initialize_json_file_from_string (str, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) result(file_object) Alternate version of initialize_json_file_from_string , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: str string to load JSON data from logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Return Value type( json_file ) private function initialize_json_file_from_string_v2 (str, json_core_object) result(file_object) Author Jacob Williams Date 1/19/2019 Cast a JSON string and a json_core object\nas a json_file object. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str string to load JSON data from type( json_core ), intent(in) :: json_core_object Return Value type( json_file ) private function wrap_initialize_json_file_from_string_v2 (str, json_core_object) result(file_object) Alternate version of initialize_json_file_from_string_v2 , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: str string to load JSON data from type( json_core ), intent(in) :: json_core_object Return Value type( json_file ) Finalization Procedures final :: finalize_json_file private subroutine finalize_json_file (me) Finalizer for json_file class. Read more… Arguments Type Intent Optional Attributes Name type( json_file ), intent(inout) :: me Type-Bound Procedures generic, public :: add => json_file_add , json_file_add_object , wrap_json_file_add_object , json_file_add_integer , wrap_json_file_add_integer , json_file_add_real32 , wrap_json_file_add_real32 , json_file_add_real , wrap_json_file_add_real , json_file_add_logical , wrap_json_file_add_logical , json_file_add_string , wrap_json_file_add_string , json_file_add_integer_vec , wrap_json_file_add_integer_vec , json_file_add_real32_vec , wrap_json_file_add_real32_vec , json_file_add_real_vec , wrap_json_file_add_real_vec , json_file_add_logical_vec , wrap_json_file_add_logical_vec , json_file_add_string_vec , wrap_json_file_add_string_vec Add a variable to a json_file , by specifying the path. Example program test use json_module , rk => json_rk , ik => json_ik implicit none type ( json_file ) :: f call f % initialize () ! specify whatever init options you want. call f % add ( 'inputs.t' , 0.0_rk ) call f % add ( 'inputs.x' , [ 1.0_rk , 2.0_rk , 3.0_rk ]) call f % add ( 'inputs.flag' , . true .) call f % print () ! print to the console end program test private subroutine json_file_add (me, p, destroy_original) Author Jacob Williams Add a json_value pointer as the root object to a JSON file. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me type( json_value ), intent(in), pointer :: p pointer to the variable to add logical(kind=LK), intent(in), optional :: destroy_original if the file currently contains\nan associated pointer, it is\ndestroyed. [Default is True] private subroutine json_file_add_object (me, path, p, found, was_created) Author Jacob Williams Add a json_value pointer to an object to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(in), pointer :: p pointer to the variable to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_object (me, path, p, found, was_created) Author Jacob Williams Alternate version of json_file_add_object , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(in), pointer :: p pointer to the variable to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_integer (me, path, val, found, was_created) Author Jacob Williams Add an integer value to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_integer (me, path, val, found, was_created) Author Jacob Williams Alternate version of json_file_add_integer , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_real32 (me, path, val, found, was_created) Author Jacob Williams Alternate version of json_file_add_real where val is real32 . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_real32 (me, path, val, found, was_created) Author Jacob Williams Alternate version of json_file_add_real32 , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_real (me, path, val, found, was_created) Author Jacob Williams Add a real(RK) variable value to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_real (me, path, val, found, was_created) Author Jacob Williams Alternate version of json_file_add_real , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_logical (me, path, val, found, was_created) Author Jacob Williams Add a logical(LK) value to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_logical (me, path, val, found, was_created) Author Jacob Williams Alternate version of json_file_add_logical , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_string (me, path, val, found, was_created, trim_str, adjustl_str) Author Jacob Williams Add a character string to a json file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) private subroutine wrap_json_file_add_string (me, path, val, found, was_created, trim_str, adjustl_str) Author Jacob Williams Alternate version of json_file_add_string , where “path” and “val” are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) private subroutine json_file_add_integer_vec (me, path, vec, found, was_created) Author Jacob Williams Add an integer vector to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_integer_vec (me, path, vec, found, was_created) Author Jacob Williams Alternate version of json_file_add_integer_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_real32_vec (me, path, vec, found, was_created) Author Jacob Williams Alternate version of json_file_add_real_vec where vec is real32 . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_real32_vec (me, path, vec, found, was_created) Author Jacob Williams Alternate version of json_file_add_real32_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_real_vec (me, path, vec, found, was_created) Author Jacob Williams Add a real(RK) vector to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_real_vec (me, path, vec, found, was_created) Author Jacob Williams Alternate version of json_file_add_real_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_logical_vec (me, path, vec, found, was_created) Author Jacob Williams Add a logical(LK) vector to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_logical_vec (me, path, vec, found, was_created) Author Jacob Williams Alternate version of json_file_add_logical_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_string_vec (me, path, vec, found, was_created, ilen, trim_str, adjustl_str) Author Jacob Williams Add a string vector to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element\n(note that ADJUSTL is done before TRIM) private subroutine wrap_json_file_add_string_vec (me, path, vec, found, was_created, ilen, trim_str, adjustl_str) Author Jacob Williams Alternate version of json_file_add_string_vec , where “path” and “vec” are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element\n(note that ADJUSTL is done before TRIM) generic, public :: add => json_file_add_string_path_ascii , json_file_add_string_value_ascii , json_file_add_string_vec_path_ascii , json_file_add_string_vec_vec_ascii private subroutine json_file_add_string_path_ascii (me, path, val, found, was_created, trim_str, adjustl_str) Author Jacob Williams Wrapper for json_file_add_string where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) private subroutine json_file_add_string_value_ascii (me, path, val, found, was_created, trim_str, adjustl_str) Author Jacob Williams Wrapper for json_file_add_string where “val” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) private subroutine json_file_add_string_vec_path_ascii (me, path, vec, found, was_created, ilen, trim_str, adjustl_str) Author Jacob Williams Alternate version of json_file_add_string_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element\n(note that ADJUSTL is done before TRIM) private subroutine json_file_add_string_vec_vec_ascii (me, path, vec, found, was_created, ilen, trim_str, adjustl_str) Author Jacob Williams Alternate version of json_file_add_string_vec , where “vec” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element\n(note that ADJUSTL is done before TRIM) procedure, public :: assign_json_file private subroutine assign_json_file (me, f) Author Jacob Williams Assignment operator for json_core = json_core .\nThis will duplicate the json_core and also\nperform a deep copy of the json_value data structure. Arguments Type Intent Optional Attributes Name class( json_file ), intent(out) :: me type( json_file ), intent(in) :: f procedure, public, pass(me) :: assign_json_file_to_string private subroutine assign_json_file_to_string (str, me) Author Jacob Williams Assignment operator for character = json_core .\n This is just a wrapper for the json_value_to_string routine. Read more… Arguments Type Intent Optional Attributes Name character(kind=CK, len=:), intent(out), allocatable :: str class( json_file ), intent(in) :: me procedure, public :: assign_string_to_json_file private subroutine assign_string_to_json_file (me, str) Author Jacob Williams Assignment operator for json_core = character.\nThis is just a wrapper for the json_file_load_from_string routine. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: str generic, public :: assignment(=) => assign_json_file , assign_json_file_to_string , assign_string_to_json_file , wrap_assign_string_to_json_file private subroutine assign_json_file (me, f) Author Jacob Williams Assignment operator for json_core = json_core .\nThis will duplicate the json_core and also\nperform a deep copy of the json_value data structure. Arguments Type Intent Optional Attributes Name class( json_file ), intent(out) :: me type( json_file ), intent(in) :: f private subroutine assign_json_file_to_string (str, me) Author Jacob Williams Assignment operator for character = json_core .\n This is just a wrapper for the json_value_to_string routine. Read more… Arguments Type Intent Optional Attributes Name character(kind=CK, len=:), intent(out), allocatable :: str class( json_file ), intent(in) :: me private subroutine assign_string_to_json_file (me, str) Author Jacob Williams Assignment operator for json_core = character.\nThis is just a wrapper for the json_file_load_from_string routine. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: str private subroutine wrap_assign_string_to_json_file (me, str) Author Jacob Williams Alternate version of assign_string_to_json_file , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: str procedure, public :: check_for_errors => json_file_check_for_errors private subroutine json_file_check_for_errors (me, status_ok, error_msg) Retrieve error status and message from the class. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me logical(kind=LK), intent(out), optional :: status_ok true if there were no errors character(kind=CK, len=:), intent(out), optional, allocatable :: error_msg the error message\n(if there were errors) procedure, public :: clear_exceptions => json_file_clear_exceptions private pure subroutine json_file_clear_exceptions (me) Clear exceptions in the class. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me generic, public :: deserialize => json_file_load_from_string , wrap_json_file_load_from_string Load JSON from a string. private subroutine json_file_load_from_string (me, str, destroy_pointer) Author Jacob Williams Date 1/13/2015 Load the JSON data from a string. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: str string to load JSON data from logical(kind=LK), intent(in), optional :: destroy_pointer destroy the pointer before\nloading (default is True) private subroutine wrap_json_file_load_from_string (me, str) Alternate version of json_file_load_from_string , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: str procedure, public :: destroy => json_file_destroy private subroutine json_file_destroy (me, destroy_core) Author Jacob Williams Destroy the json_value data in a json_file .\n This may be done when the variable is no longer needed,\n or will be reused to open a different file.\n Otherwise a memory leak will occur. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me logical, intent(in), optional :: destroy_core to also destroy the json_core .\ndefault is to leave it as is. procedure, public :: failed => json_file_failed private pure function json_file_failed (me) result(failed) Check error status in the file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(in) :: me Return Value logical(kind=LK) will be true if there has been an error. generic, public :: get => json_file_get_object , wrap_json_file_get_object , json_file_get_integer , wrap_json_file_get_integer , json_file_get_real32 , wrap_json_file_get_real32 , json_file_get_real , wrap_json_file_get_real , json_file_get_logical , wrap_json_file_get_logical , json_file_get_string , wrap_json_file_get_string , json_file_get_integer_vec , wrap_json_file_get_integer_vec , json_file_get_real32_vec , wrap_json_file_get_real32_vec , json_file_get_real_vec , wrap_json_file_get_real_vec , json_file_get_logical_vec , wrap_json_file_get_logical_vec , json_file_get_string_vec , wrap_json_file_get_string_vec , json_file_get_alloc_string_vec , wrap_json_file_get_alloc_string_vec , json_file_get_root Get a variable from a json_file , by specifying the path. private subroutine json_file_get_object (me, path, p, found) Author Jacob Williams Date 2/3/2014 Get a json_value pointer to an object from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(out), pointer :: p pointer to the variable logical(kind=LK), intent(out), optional :: found if it was really found private subroutine wrap_json_file_get_object (me, path, p, found) Alternate version of json_file_get_object , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(out), pointer :: p pointer to the variable logical(kind=LK), intent(out), optional :: found if it was really found private subroutine json_file_get_integer (me, path, val, found, default) Author Jacob Williams Date 12/9/2013 Get an integer value from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found integer(kind=IK), intent(in), optional :: default private subroutine wrap_json_file_get_integer (me, path, val, found, default) Alternate version of json_file_get_integer , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found integer(kind=IK), intent(in), optional :: default private subroutine json_file_get_real32 (me, path, val, found, default) Author Jacob Williams Date 1/21/2019 Alternate version of json_file_get_real where val is real32 . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found real(kind=real32), intent(in), optional :: default private subroutine wrap_json_file_get_real32 (me, path, val, found, default) Alternate version of json_file_get_real32 , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found real(kind=real32), intent(in), optional :: default private subroutine json_file_get_real (me, path, val, found, default) Author Jacob Williams Date 12/9/2013 Get a real(RK) variable value from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found real(kind=RK), intent(in), optional :: default private subroutine wrap_json_file_get_real (me, path, val, found, default) Alternate version of json_file_get_real , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found real(kind=RK), intent(in), optional :: default private subroutine json_file_get_logical (me, path, val, found, default) Author Jacob Williams Date 12/9/2013 Get a logical(LK) value from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found logical(kind=LK), intent(in), optional :: default private subroutine wrap_json_file_get_logical (me, path, val, found, default) Alternate version of json_file_get_logical , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found logical(kind=LK), intent(in), optional :: default private subroutine json_file_get_string (me, path, val, found, default) Author Jacob Williams Date 12/9/2013 Get a character string from a json file.\nThe output val is an allocatable character string. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=:), intent(out), allocatable :: val value logical(kind=LK), intent(out), optional :: found if it was really found character(kind=CK, len=*), intent(in), optional :: default private subroutine wrap_json_file_get_string (me, path, val, found, default) Alternate version of json_file_get_string , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=:), intent(out), allocatable :: val value logical(kind=LK), intent(out), optional :: found if it was really found character(kind=CK, len=*), intent(in), optional :: default private subroutine json_file_get_integer_vec (me, path, vec, found, default) Author Jacob Williams Date 1/20/2014 Get an integer vector from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found integer(kind=IK), intent(in), optional, dimension(:) :: default private subroutine wrap_json_file_get_integer_vec (me, path, vec, found, default) Alternate version of json_file_get_integer_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found integer(kind=IK), intent(in), optional, dimension(:) :: default private subroutine json_file_get_real32_vec (me, path, vec, found, default) Author Jacob Williams Date 1/21/2019 Alternate version of json_file_get_real_vec where vec is real32 . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found real(kind=real32), intent(in), optional, dimension(:) :: default private subroutine wrap_json_file_get_real32_vec (me, path, vec, found, default) Alternate version of json_file_get_real32_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found real(kind=real32), intent(in), optional, dimension(:) :: default private subroutine json_file_get_real_vec (me, path, vec, found, default) Author Jacob Williams Date 1/19/2014 Get a real(RK) vector from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found real(kind=RK), intent(in), optional, dimension(:) :: default private subroutine wrap_json_file_get_real_vec (me, path, vec, found, default) Alternate version of json_file_get_real_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found real(kind=RK), intent(in), optional, dimension(:) :: default private subroutine json_file_get_logical_vec (me, path, vec, found, default) Author Jacob Williams Date 1/20/2014 Get a logical(LK) vector from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found logical(kind=LK), intent(in), optional, dimension(:) :: default private subroutine wrap_json_file_get_logical_vec (me, path, vec, found, default) Alternate version of json_file_get_logical_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found logical(kind=LK), intent(in), optional, dimension(:) :: default private subroutine json_file_get_string_vec (me, path, vec, found, default) Author Jacob Williams Date 1/19/2014 Get a string vector from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec value vector logical(kind=LK), intent(out), optional :: found if it was really found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default private subroutine wrap_json_file_get_string_vec (me, path, vec, found, default) Alternate version of json_file_get_string_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec value vector logical(kind=LK), intent(out), optional :: found if it was really found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default private subroutine json_file_get_alloc_string_vec (me, path, vec, ilen, found, default, default_ilen) Author Jacob Williams Date 12/17/2016 Get an (allocatable length) string vector from a JSON file.\nThis is just a wrapper for json_get_alloc_string_vec_by_path . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec value vector integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default integer(kind=IK), intent(in), optional, dimension(:) :: default_ilen the actual\nlength of default private subroutine wrap_json_file_get_alloc_string_vec (me, path, vec, ilen, found, default, default_ilen) Alternate version of json_file_get_alloc_string_vec , where “path” is kind=CDK.\nThis is just a wrapper for wrap_json_get_alloc_string_vec_by_path . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec value vector integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default integer(kind=IK), intent(in), optional, dimension(:) :: default_ilen the actual\nlength of default private subroutine json_file_get_root (me, p) Author Izaak Beekman Date 7/23/2015 Get a json_value pointer to the JSON file root. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me type( json_value ), intent(out), pointer :: p pointer to the variable procedure, public :: get_core => get_json_core_in_file private subroutine get_json_core_in_file (me, core) Get a copy of the json_core in this json_file . Arguments Type Intent Optional Attributes Name class( json_file ), intent(in) :: me type( json_core ), intent(out) :: core generic, public :: info => json_file_variable_info , wrap_json_file_variable_info private subroutine json_file_variable_info (me, path, found, var_type, n_children, name) Author Jacob Williams Date 2/3/2014 Returns information about a variable in a json_file . Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path path to the variable logical(kind=LK), intent(out), optional :: found the variable exists in the structure integer(kind=IK), intent(out), optional :: var_type variable type integer(kind=IK), intent(out), optional :: n_children number of children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name private subroutine wrap_json_file_variable_info (me, path, found, var_type, n_children, name) Alternate version of json_file_variable_info , where “path” is kind=CDK. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(out), optional :: var_type integer(kind=IK), intent(out), optional :: n_children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name generic, public :: initialize => initialize_json_core_in_file , set_json_core_in_file private subroutine initialize_json_core_in_file (me, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) Initialize the json_core for this json_file .\n This is just a wrapper for json_initialize . Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) private subroutine set_json_core_in_file (me, core) Set the json_core for this json_file . Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me type( json_core ), intent(in) :: core procedure, public :: initialize_json_core_in_file private subroutine initialize_json_core_in_file (me, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) Initialize the json_core for this json_file .\n This is just a wrapper for json_initialize . Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) procedure, public :: json_file_add private subroutine json_file_add (me, p, destroy_original) Author Jacob Williams Add a json_value pointer as the root object to a JSON file. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me type( json_value ), intent(in), pointer :: p pointer to the variable to add logical(kind=LK), intent(in), optional :: destroy_original if the file currently contains\nan associated pointer, it is\ndestroyed. [Default is True] procedure, public :: json_file_add_integer private subroutine json_file_add_integer (me, path, val, found, was_created) Author Jacob Williams Add an integer value to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: json_file_add_integer_vec private subroutine json_file_add_integer_vec (me, path, vec, found, was_created) Author Jacob Williams Add an integer vector to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: json_file_add_logical private subroutine json_file_add_logical (me, path, val, found, was_created) Author Jacob Williams Add a logical(LK) value to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: json_file_add_logical_vec private subroutine json_file_add_logical_vec (me, path, vec, found, was_created) Author Jacob Williams Add a logical(LK) vector to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: json_file_add_object private subroutine json_file_add_object (me, path, p, found, was_created) Author Jacob Williams Add a json_value pointer to an object to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(in), pointer :: p pointer to the variable to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: json_file_add_real private subroutine json_file_add_real (me, path, val, found, was_created) Author Jacob Williams Add a real(RK) variable value to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: json_file_add_real32 private subroutine json_file_add_real32 (me, path, val, found, was_created) Author Jacob Williams Alternate version of json_file_add_real where val is real32 . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: json_file_add_real32_vec private subroutine json_file_add_real32_vec (me, path, vec, found, was_created) Author Jacob Williams Alternate version of json_file_add_real_vec where vec is real32 . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: json_file_add_real_vec private subroutine json_file_add_real_vec (me, path, vec, found, was_created) Author Jacob Williams Add a real(RK) vector to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: json_file_add_string private subroutine json_file_add_string (me, path, val, found, was_created, trim_str, adjustl_str) Author Jacob Williams Add a character string to a json file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) procedure, public :: json_file_add_string_path_ascii private subroutine json_file_add_string_path_ascii (me, path, val, found, was_created, trim_str, adjustl_str) Author Jacob Williams Wrapper for json_file_add_string where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) procedure, public :: json_file_add_string_value_ascii private subroutine json_file_add_string_value_ascii (me, path, val, found, was_created, trim_str, adjustl_str) Author Jacob Williams Wrapper for json_file_add_string where “val” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) procedure, public :: json_file_add_string_vec private subroutine json_file_add_string_vec (me, path, vec, found, was_created, ilen, trim_str, adjustl_str) Author Jacob Williams Add a string vector to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element\n(note that ADJUSTL is done before TRIM) procedure, public :: json_file_add_string_vec_path_ascii private subroutine json_file_add_string_vec_path_ascii (me, path, vec, found, was_created, ilen, trim_str, adjustl_str) Author Jacob Williams Alternate version of json_file_add_string_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element\n(note that ADJUSTL is done before TRIM) procedure, public :: json_file_add_string_vec_vec_ascii private subroutine json_file_add_string_vec_vec_ascii (me, path, vec, found, was_created, ilen, trim_str, adjustl_str) Author Jacob Williams Alternate version of json_file_add_string_vec , where “vec” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element\n(note that ADJUSTL is done before TRIM) procedure, public :: json_file_get_alloc_string_vec private subroutine json_file_get_alloc_string_vec (me, path, vec, ilen, found, default, default_ilen) Author Jacob Williams Date 12/17/2016 Get an (allocatable length) string vector from a JSON file.\nThis is just a wrapper for json_get_alloc_string_vec_by_path . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec value vector integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default integer(kind=IK), intent(in), optional, dimension(:) :: default_ilen the actual\nlength of default procedure, public :: json_file_get_integer private subroutine json_file_get_integer (me, path, val, found, default) Author Jacob Williams Date 12/9/2013 Get an integer value from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found integer(kind=IK), intent(in), optional :: default procedure, public :: json_file_get_integer_vec private subroutine json_file_get_integer_vec (me, path, vec, found, default) Author Jacob Williams Date 1/20/2014 Get an integer vector from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found integer(kind=IK), intent(in), optional, dimension(:) :: default procedure, public :: json_file_get_logical private subroutine json_file_get_logical (me, path, val, found, default) Author Jacob Williams Date 12/9/2013 Get a logical(LK) value from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found logical(kind=LK), intent(in), optional :: default procedure, public :: json_file_get_logical_vec private subroutine json_file_get_logical_vec (me, path, vec, found, default) Author Jacob Williams Date 1/20/2014 Get a logical(LK) vector from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found logical(kind=LK), intent(in), optional, dimension(:) :: default procedure, public :: json_file_get_object private subroutine json_file_get_object (me, path, p, found) Author Jacob Williams Date 2/3/2014 Get a json_value pointer to an object from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(out), pointer :: p pointer to the variable logical(kind=LK), intent(out), optional :: found if it was really found procedure, public :: json_file_get_real private subroutine json_file_get_real (me, path, val, found, default) Author Jacob Williams Date 12/9/2013 Get a real(RK) variable value from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found real(kind=RK), intent(in), optional :: default procedure, public :: json_file_get_real32 private subroutine json_file_get_real32 (me, path, val, found, default) Author Jacob Williams Date 1/21/2019 Alternate version of json_file_get_real where val is real32 . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found real(kind=real32), intent(in), optional :: default procedure, public :: json_file_get_real32_vec private subroutine json_file_get_real32_vec (me, path, vec, found, default) Author Jacob Williams Date 1/21/2019 Alternate version of json_file_get_real_vec where vec is real32 . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found real(kind=real32), intent(in), optional, dimension(:) :: default procedure, public :: json_file_get_real_vec private subroutine json_file_get_real_vec (me, path, vec, found, default) Author Jacob Williams Date 1/19/2014 Get a real(RK) vector from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found real(kind=RK), intent(in), optional, dimension(:) :: default procedure, public :: json_file_get_root private subroutine json_file_get_root (me, p) Author Izaak Beekman Date 7/23/2015 Get a json_value pointer to the JSON file root. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me type( json_value ), intent(out), pointer :: p pointer to the variable procedure, public :: json_file_get_string private subroutine json_file_get_string (me, path, val, found, default) Author Jacob Williams Date 12/9/2013 Get a character string from a json file.\nThe output val is an allocatable character string. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=:), intent(out), allocatable :: val value logical(kind=LK), intent(out), optional :: found if it was really found character(kind=CK, len=*), intent(in), optional :: default procedure, public :: json_file_get_string_vec private subroutine json_file_get_string_vec (me, path, vec, found, default) Author Jacob Williams Date 1/19/2014 Get a string vector from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec value vector logical(kind=LK), intent(out), optional :: found if it was really found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default procedure, public :: json_file_load_from_string private subroutine json_file_load_from_string (me, str, destroy_pointer) Author Jacob Williams Date 1/13/2015 Load the JSON data from a string. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: str string to load JSON data from logical(kind=LK), intent(in), optional :: destroy_pointer destroy the pointer before\nloading (default is True) procedure, public :: json_file_print_to_console private subroutine json_file_print_to_console (me) Author Jacob Williams Date 1/11/2015 Print the JSON file to the console. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me procedure, public :: json_file_print_to_filename private subroutine json_file_print_to_filename (me, filename) Author Jacob Williams Date 1/11/2015 Print the JSON structure to the specified filename.\n The file is opened, printed, and then closed. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: filename filename to print to procedure, public :: json_file_print_to_unit private subroutine json_file_print_to_unit (me, iunit) Author Jacob Williams Date 12/9/2013 Prints the JSON file to the specified file unit number. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me integer(kind=IK), intent(in) :: iunit file unit number (must not be -1) procedure, public :: json_file_remove private subroutine json_file_remove (me, path) Author Jacob Williams Date 7/7/2018 Remove a variable from a JSON file. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable procedure, public :: json_file_rename private subroutine json_file_rename (me, path, name, found) Author Jacob Williams Rename a variable in a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if the variable was found procedure, public :: json_file_rename_name_ascii private subroutine json_file_rename_name_ascii (me, path, name, found) Author Jacob Williams Wrapper for json_file_rename where “name” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if the variable was found procedure, public :: json_file_rename_path_ascii private subroutine json_file_rename_path_ascii (me, path, name, found) Author Jacob Williams Wrapper for json_file_rename where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if the variable was found procedure, public :: json_file_update_integer private subroutine json_file_update_integer (me, path, val, found) Author Jacob Williams Date 1/10/2015 Given the path string, if the variable is present in the file,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path integer(kind=IK), intent(in) :: val logical(kind=LK), intent(out) :: found procedure, public :: json_file_update_logical private subroutine json_file_update_logical (me, path, val, found) Author Jacob Williams Date 1/10/2015 Given the path string, if the variable is present in the file,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path logical(kind=LK), intent(in) :: val logical(kind=LK), intent(out) :: found procedure, public :: json_file_update_real private subroutine json_file_update_real (me, path, val, found) Author Jacob Williams Date 1/10/2015 Given the path string, if the variable is present in the file,\nand is a scalar, then update its value.\nIf it is not present, then create it and set its value. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path real(kind=RK), intent(in) :: val logical(kind=LK), intent(out) :: found procedure, public :: json_file_update_real32 private subroutine json_file_update_real32 (me, path, val, found) Author Jacob Williams Date 1/21/2019 Alternate version of json_file_update_real where val is real32 . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path real(kind=real32), intent(in) :: val logical(kind=LK), intent(out) :: found procedure, public :: json_file_update_string private subroutine json_file_update_string (me, path, val, found, trim_str, adjustl_str) Author Jacob Williams Date 1/10/2015 Given the path string, if the variable is present in the file,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path character(kind=CK, len=*), intent(in) :: val logical(kind=LK), intent(out) :: found logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) procedure, public :: json_file_update_string_name_ascii private subroutine json_file_update_string_name_ascii (me, path, val, found, trim_str, adjustl_str) Alternate version of json_file_update_string , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=*), intent(in) :: val logical(kind=LK), intent(out) :: found logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) procedure, public :: json_file_update_string_val_ascii private subroutine json_file_update_string_val_ascii (me, path, val, found, trim_str, adjustl_str) Alternate version of json_file_update_string , where “val” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path character(kind=CDK, len=*), intent(in) :: val logical(kind=LK), intent(out) :: found logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) procedure, public :: json_file_valid_path private function json_file_valid_path (me, path) result(found) Author Jacob Williams Returns true if the path is present in the JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable Return Value logical(kind=LK) if the variable was found procedure, public, pass(me) :: json_file_valid_path_op private function json_file_valid_path_op (path, me) result(found) Author Jacob Williams A wrapper for json_file_valid_path for the .in. operator Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: path the path to the variable class( json_file ), intent(in) :: me the JSON file Return Value logical(kind=LK) if the variable was found procedure, public :: json_file_variable_info private subroutine json_file_variable_info (me, path, found, var_type, n_children, name) Author Jacob Williams Date 2/3/2014 Returns information about a variable in a json_file . Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path path to the variable logical(kind=LK), intent(out), optional :: found the variable exists in the structure integer(kind=IK), intent(out), optional :: var_type variable type integer(kind=IK), intent(out), optional :: n_children number of children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name procedure, public :: json_file_variable_matrix_info private subroutine json_file_variable_matrix_info (me, path, is_matrix, found, var_type, n_sets, set_size, name) Author Jacob Williams Date 6/26/2016 Returns matrix information about a variable in a json_file . Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, 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\nthe matrix (if all elements have\nthe same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name procedure, public :: load => json_file_load Load JSON from a file. private subroutine json_file_load (me, filename, unit, destroy_pointer) Author Jacob Williams Date 12/9/2013 Load the JSON data from a file. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: filename the filename to open integer(kind=IK), intent(in), optional :: unit the unit number to use\n(if not present, a newunit\nis used) logical(kind=LK), intent(in), optional :: destroy_pointer destroy the pointer before\nloading (default is True) procedure, public :: load_file => json_file_load The same as load , but only here for backward compatibility private subroutine json_file_load (me, filename, unit, destroy_pointer) Author Jacob Williams Date 12/9/2013 Load the JSON data from a file. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: filename the filename to open integer(kind=IK), intent(in), optional :: unit the unit number to use\n(if not present, a newunit\nis used) logical(kind=LK), intent(in), optional :: destroy_pointer destroy the pointer before\nloading (default is True) generic, public :: load_from_string => json_file_load_from_string , wrap_json_file_load_from_string The same as deserialize , but only here for backward compatibility private subroutine json_file_load_from_string (me, str, destroy_pointer) Author Jacob Williams Date 1/13/2015 Load the JSON data from a string. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: str string to load JSON data from logical(kind=LK), intent(in), optional :: destroy_pointer destroy the pointer before\nloading (default is True) private subroutine wrap_json_file_load_from_string (me, str) Alternate version of json_file_load_from_string , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: str generic, public :: matrix_info => json_file_variable_matrix_info , wrap_json_file_variable_matrix_info private subroutine json_file_variable_matrix_info (me, path, is_matrix, found, var_type, n_sets, set_size, name) Author Jacob Williams Date 6/26/2016 Returns matrix information about a variable in a json_file . Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, 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\nthe matrix (if all elements have\nthe same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name private subroutine wrap_json_file_variable_matrix_info (me, path, is_matrix, found, var_type, n_sets, set_size, name) Alternate version of json_file_variable_matrix_info , where “path” is kind=CDK. Read more… Arguments 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\nthe matrix (if all elements have\nthe same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name procedure, public :: move => json_file_move_pointer private subroutine json_file_move_pointer (to, from) Author Jacob Williams Date 12/5/2014 Move the json_value pointer from one json_file to another.\n The “from” pointer is then nullified, but not destroyed. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: to class( json_file ), intent(inout) :: from procedure, public :: nullify => json_file_nullify private subroutine json_file_nullify (me) Author Jacob Williams Nullify the json_value pointer in a json_file ,\n but do not destroy it. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me generic, public :: operator(.in.) => json_file_valid_path_op , wrap_json_file_valid_path_op private function json_file_valid_path_op (path, me) result(found) Author Jacob Williams A wrapper for json_file_valid_path for the .in. operator Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: path the path to the variable class( json_file ), intent(in) :: me the JSON file Return Value logical(kind=LK) if the variable was found private function wrap_json_file_valid_path_op (path, me) result(found) Author Jacob Williams Alternate version of json_file_valid_path_op , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: path the path to the variable class( json_file ), intent(in) :: me the JSON file Return Value logical(kind=LK) if the variable was found generic, public :: print => json_file_print_to_console , json_file_print_to_unit , json_file_print_to_filename private subroutine json_file_print_to_console (me) Author Jacob Williams Date 1/11/2015 Print the JSON file to the console. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me private subroutine json_file_print_to_unit (me, iunit) Author Jacob Williams Date 12/9/2013 Prints the JSON file to the specified file unit number. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me integer(kind=IK), intent(in) :: iunit file unit number (must not be -1) private subroutine json_file_print_to_filename (me, filename) Author Jacob Williams Date 1/11/2015 Print the JSON structure to the specified filename.\n The file is opened, printed, and then closed. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: filename filename to print to procedure, public :: print_error_message => json_file_print_error_message private subroutine json_file_print_error_message (me, io_unit) This is a wrapper for json_print_error_message . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me integer, intent(in), optional :: io_unit generic, public :: print_file => json_file_print_to_console , json_file_print_to_unit , json_file_print_to_filename The same as print , but only here for backward compatibility private subroutine json_file_print_to_console (me) Author Jacob Williams Date 1/11/2015 Print the JSON file to the console. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me private subroutine json_file_print_to_unit (me, iunit) Author Jacob Williams Date 12/9/2013 Prints the JSON file to the specified file unit number. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me integer(kind=IK), intent(in) :: iunit file unit number (must not be -1) private subroutine json_file_print_to_filename (me, filename) Author Jacob Williams Date 1/11/2015 Print the JSON structure to the specified filename.\n The file is opened, printed, and then closed. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: filename filename to print to procedure, public :: print_to_string => json_file_print_to_string The same as serialize , but only here for backward compatibility private subroutine json_file_print_to_string (me, str) Author Jacob Williams Date 1/11/2015 Print the JSON file to a string. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=:), intent(out), allocatable :: str string to print JSON data to generic, public :: remove => json_file_remove , wrap_json_file_remove Remove a variable from a json_file by specifying the path. private subroutine json_file_remove (me, path) Author Jacob Williams Date 7/7/2018 Remove a variable from a JSON file. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable private subroutine wrap_json_file_remove (me, path) Alternate version of json_file_remove , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable generic, public :: rename => json_file_rename , wrap_json_file_rename Rename a variable, specifying it by path private subroutine json_file_rename (me, path, name, found) Author Jacob Williams Rename a variable in a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if the variable was found private subroutine wrap_json_file_rename (me, path, name, found) Author Jacob Williams Alternate version of json_file_rename , where “path” and “name” are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if the variable was found generic, public :: rename => json_file_rename_path_ascii , json_file_rename_name_ascii private subroutine json_file_rename_path_ascii (me, path, name, found) Author Jacob Williams Wrapper for json_file_rename where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if the variable was found private subroutine json_file_rename_name_ascii (me, path, name, found) Author Jacob Williams Wrapper for json_file_rename where “name” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if the variable was found procedure, public :: serialize => json_file_print_to_string Print the json_value structure to an allocatable string private subroutine json_file_print_to_string (me, str) Author Jacob Williams Date 1/11/2015 Print the JSON file to a string. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=:), intent(out), allocatable :: str string to print JSON data to procedure, public :: set_json_core_in_file private subroutine set_json_core_in_file (me, core) Set the json_core for this json_file . Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me type( json_core ), intent(in) :: core procedure, public :: traverse => json_file_traverse private subroutine json_file_traverse (me, traverse_callback) Author Jacob Williams Date 6/11/2016 Traverse the JSON structure in the file.\nThis routine calls the user-specified json_traverse_callback_func for each element of the structure. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me procedure( json_traverse_callback_func ) :: traverse_callback generic, public :: update => json_file_update_integer , wrap_json_file_update_integer , json_file_update_logical , wrap_json_file_update_logical , json_file_update_real32 , wrap_json_file_update_real32 , json_file_update_real , wrap_json_file_update_real , json_file_update_string , wrap_json_file_update_string Update a scalar variable in a json_file ,\n by specifying the path. Note These have been mostly supplanted by the add methods, which do a similar thing (and can be used for\n scalars and vectors, etc.) private subroutine json_file_update_integer (me, path, val, found) Author Jacob Williams Date 1/10/2015 Given the path string, if the variable is present in the file,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path integer(kind=IK), intent(in) :: val logical(kind=LK), intent(out) :: found private subroutine wrap_json_file_update_integer (me, path, val, found) Alternate version of json_file_update_integer , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path integer(kind=IK), intent(in) :: val logical(kind=LK), intent(out) :: found private subroutine json_file_update_logical (me, path, val, found) Author Jacob Williams Date 1/10/2015 Given the path string, if the variable is present in the file,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path logical(kind=LK), intent(in) :: val logical(kind=LK), intent(out) :: found private subroutine wrap_json_file_update_logical (me, path, val, found) Alternate version of json_file_update_logical , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path logical(kind=LK), intent(in) :: val logical(kind=LK), intent(out) :: found private subroutine json_file_update_real32 (me, path, val, found) Author Jacob Williams Date 1/21/2019 Alternate version of json_file_update_real where val is real32 . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path real(kind=real32), intent(in) :: val logical(kind=LK), intent(out) :: found private subroutine wrap_json_file_update_real32 (me, path, val, found) Alternate version of json_file_update_real32 , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path real(kind=real32), intent(in) :: val logical(kind=LK), intent(out) :: found private subroutine json_file_update_real (me, path, val, found) Author Jacob Williams Date 1/10/2015 Given the path string, if the variable is present in the file,\nand is a scalar, then update its value.\nIf it is not present, then create it and set its value. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path real(kind=RK), intent(in) :: val logical(kind=LK), intent(out) :: found private subroutine wrap_json_file_update_real (me, path, val, found) Alternate version of json_file_update_real , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path real(kind=RK), intent(in) :: val logical(kind=LK), intent(out) :: found private subroutine json_file_update_string (me, path, val, found, trim_str, adjustl_str) Author Jacob Williams Date 1/10/2015 Given the path string, if the variable is present in the file,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path character(kind=CK, len=*), intent(in) :: val logical(kind=LK), intent(out) :: found logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) private subroutine wrap_json_file_update_string (me, path, val, found, trim_str, adjustl_str) Alternate version of json_file_update_string , where “path” and “val” are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CDK, len=*), intent(in) :: val logical(kind=LK), intent(out) :: found logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) generic, public :: update => json_file_update_string_name_ascii , json_file_update_string_val_ascii private subroutine json_file_update_string_name_ascii (me, path, val, found, trim_str, adjustl_str) Alternate version of json_file_update_string , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=*), intent(in) :: val logical(kind=LK), intent(out) :: found logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) private subroutine json_file_update_string_val_ascii (me, path, val, found, trim_str, adjustl_str) Alternate version of json_file_update_string , where “val” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path character(kind=CDK, len=*), intent(in) :: val logical(kind=LK), intent(out) :: found logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) generic, public :: valid_path => json_file_valid_path , wrap_json_file_valid_path Verify that a path is valid\n(i.e., a variable with this path exists in the file). private function json_file_valid_path (me, path) result(found) Author Jacob Williams Returns true if the path is present in the JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable Return Value logical(kind=LK) if the variable was found private function wrap_json_file_valid_path (me, path) result(found) Author Jacob Williams Alternate version of json_file_valid_path , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable Return Value logical(kind=LK) if the variable was found procedure, public :: wrap_assign_string_to_json_file private subroutine wrap_assign_string_to_json_file (me, str) Author Jacob Williams Alternate version of assign_string_to_json_file , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: str procedure, public :: wrap_json_file_add_integer private subroutine wrap_json_file_add_integer (me, path, val, found, was_created) Author Jacob Williams Alternate version of json_file_add_integer , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: wrap_json_file_add_integer_vec private subroutine wrap_json_file_add_integer_vec (me, path, vec, found, was_created) Author Jacob Williams Alternate version of json_file_add_integer_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: wrap_json_file_add_logical private subroutine wrap_json_file_add_logical (me, path, val, found, was_created) Author Jacob Williams Alternate version of json_file_add_logical , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: wrap_json_file_add_logical_vec private subroutine wrap_json_file_add_logical_vec (me, path, vec, found, was_created) Author Jacob Williams Alternate version of json_file_add_logical_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: wrap_json_file_add_object private subroutine wrap_json_file_add_object (me, path, p, found, was_created) Author Jacob Williams Alternate version of json_file_add_object , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(in), pointer :: p pointer to the variable to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: wrap_json_file_add_real private subroutine wrap_json_file_add_real (me, path, val, found, was_created) Author Jacob Williams Alternate version of json_file_add_real , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: wrap_json_file_add_real32 private subroutine wrap_json_file_add_real32 (me, path, val, found, was_created) Author Jacob Williams Alternate version of json_file_add_real32 , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: wrap_json_file_add_real32_vec private subroutine wrap_json_file_add_real32_vec (me, path, vec, found, was_created) Author Jacob Williams Alternate version of json_file_add_real32_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: wrap_json_file_add_real_vec private subroutine wrap_json_file_add_real_vec (me, path, vec, found, was_created) Author Jacob Williams Alternate version of json_file_add_real_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, public :: wrap_json_file_add_string private subroutine wrap_json_file_add_string (me, path, val, found, was_created, trim_str, adjustl_str) Author Jacob Williams Alternate version of json_file_add_string , where “path” and “val” are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) procedure, public :: wrap_json_file_add_string_vec private subroutine wrap_json_file_add_string_vec (me, path, vec, found, was_created, ilen, trim_str, adjustl_str) Author Jacob Williams Alternate version of json_file_add_string_vec , where “path” and “vec” are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element\n(note that ADJUSTL is done before TRIM) procedure, public :: wrap_json_file_get_alloc_string_vec private subroutine wrap_json_file_get_alloc_string_vec (me, path, vec, ilen, found, default, default_ilen) Alternate version of json_file_get_alloc_string_vec , where “path” is kind=CDK.\nThis is just a wrapper for wrap_json_get_alloc_string_vec_by_path . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec value vector integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default integer(kind=IK), intent(in), optional, dimension(:) :: default_ilen the actual\nlength of default procedure, public :: wrap_json_file_get_integer private subroutine wrap_json_file_get_integer (me, path, val, found, default) Alternate version of json_file_get_integer , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found integer(kind=IK), intent(in), optional :: default procedure, public :: wrap_json_file_get_integer_vec private subroutine wrap_json_file_get_integer_vec (me, path, vec, found, default) Alternate version of json_file_get_integer_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found integer(kind=IK), intent(in), optional, dimension(:) :: default procedure, public :: wrap_json_file_get_logical private subroutine wrap_json_file_get_logical (me, path, val, found, default) Alternate version of json_file_get_logical , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found logical(kind=LK), intent(in), optional :: default procedure, public :: wrap_json_file_get_logical_vec private subroutine wrap_json_file_get_logical_vec (me, path, vec, found, default) Alternate version of json_file_get_logical_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found logical(kind=LK), intent(in), optional, dimension(:) :: default procedure, public :: wrap_json_file_get_object private subroutine wrap_json_file_get_object (me, path, p, found) Alternate version of json_file_get_object , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(out), pointer :: p pointer to the variable logical(kind=LK), intent(out), optional :: found if it was really found procedure, public :: wrap_json_file_get_real private subroutine wrap_json_file_get_real (me, path, val, found, default) Alternate version of json_file_get_real , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found real(kind=RK), intent(in), optional :: default procedure, public :: wrap_json_file_get_real32 private subroutine wrap_json_file_get_real32 (me, path, val, found, default) Alternate version of json_file_get_real32 , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found real(kind=real32), intent(in), optional :: default procedure, public :: wrap_json_file_get_real32_vec private subroutine wrap_json_file_get_real32_vec (me, path, vec, found, default) Alternate version of json_file_get_real32_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found real(kind=real32), intent(in), optional, dimension(:) :: default procedure, public :: wrap_json_file_get_real_vec private subroutine wrap_json_file_get_real_vec (me, path, vec, found, default) Alternate version of json_file_get_real_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found real(kind=RK), intent(in), optional, dimension(:) :: default procedure, public :: wrap_json_file_get_string private subroutine wrap_json_file_get_string (me, path, val, found, default) Alternate version of json_file_get_string , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=:), intent(out), allocatable :: val value logical(kind=LK), intent(out), optional :: found if it was really found character(kind=CK, len=*), intent(in), optional :: default procedure, public :: wrap_json_file_get_string_vec private subroutine wrap_json_file_get_string_vec (me, path, vec, found, default) Alternate version of json_file_get_string_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec value vector logical(kind=LK), intent(out), optional :: found if it was really found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default procedure, public :: wrap_json_file_load_from_string private subroutine wrap_json_file_load_from_string (me, str) Alternate version of json_file_load_from_string , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: str procedure, public :: wrap_json_file_remove private subroutine wrap_json_file_remove (me, path) Alternate version of json_file_remove , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable procedure, public :: wrap_json_file_rename private subroutine wrap_json_file_rename (me, path, name, found) Author Jacob Williams Alternate version of json_file_rename , where “path” and “name” are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if the variable was found procedure, public :: wrap_json_file_update_integer private subroutine wrap_json_file_update_integer (me, path, val, found) Alternate version of json_file_update_integer , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path integer(kind=IK), intent(in) :: val logical(kind=LK), intent(out) :: found procedure, public :: wrap_json_file_update_logical private subroutine wrap_json_file_update_logical (me, path, val, found) Alternate version of json_file_update_logical , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path logical(kind=LK), intent(in) :: val logical(kind=LK), intent(out) :: found procedure, public :: wrap_json_file_update_real private subroutine wrap_json_file_update_real (me, path, val, found) Alternate version of json_file_update_real , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path real(kind=RK), intent(in) :: val logical(kind=LK), intent(out) :: found procedure, public :: wrap_json_file_update_real32 private subroutine wrap_json_file_update_real32 (me, path, val, found) Alternate version of json_file_update_real32 , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path real(kind=real32), intent(in) :: val logical(kind=LK), intent(out) :: found procedure, public :: wrap_json_file_update_string private subroutine wrap_json_file_update_string (me, path, val, found, trim_str, adjustl_str) Alternate version of json_file_update_string , where “path” and “val” are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CDK, len=*), intent(in) :: val logical(kind=LK), intent(out) :: found logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) procedure, public :: wrap_json_file_valid_path private function wrap_json_file_valid_path (me, path) result(found) Author Jacob Williams Alternate version of json_file_valid_path , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable Return Value logical(kind=LK) if the variable was found procedure, public, pass(me) :: wrap_json_file_valid_path_op private function wrap_json_file_valid_path_op (path, me) result(found) Author Jacob Williams Alternate version of json_file_valid_path_op , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: path the path to the variable class( json_file ), intent(in) :: me the JSON file Return Value logical(kind=LK) if the variable was found procedure, public :: wrap_json_file_variable_info private subroutine wrap_json_file_variable_info (me, path, found, var_type, n_children, name) Alternate version of json_file_variable_info , where “path” is kind=CDK. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(out), optional :: var_type integer(kind=IK), intent(out), optional :: n_children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name procedure, public :: wrap_json_file_variable_matrix_info private subroutine wrap_json_file_variable_matrix_info (me, path, is_matrix, found, var_type, n_sets, set_size, name) Alternate version of json_file_variable_matrix_info , where “path” is kind=CDK. Read more… Arguments 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\nthe matrix (if all elements have\nthe same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name Source Code type , public :: json_file private type ( json_core ) :: core !! The instance of the [[json_core(type)]] !! factory used for this file. type ( json_value ), pointer :: p => null () !! the JSON structure read from the file contains generic , public :: initialize => initialize_json_core_in_file ,& set_json_core_in_file procedure , public :: get_core => get_json_core_in_file !> ! Load JSON from a file. procedure , public :: load => json_file_load !> ! The same as `load`, but only here for backward compatibility procedure , public :: load_file => json_file_load !> ! Load JSON from a string. generic , public :: deserialize => MAYBEWRAP ( json_file_load_from_string ) !> ! The same as `deserialize`, but only here for backward compatibility generic , public :: load_from_string => MAYBEWRAP ( json_file_load_from_string ) !> ! Print the [[json_value]] structure to an allocatable string procedure , public :: serialize => json_file_print_to_string !> ! The same as `serialize`, but only here for backward compatibility procedure , public :: print_to_string => json_file_print_to_string procedure , public :: destroy => json_file_destroy procedure , public :: nullify => json_file_nullify procedure , public :: move => json_file_move_pointer generic , public :: info => MAYBEWRAP ( json_file_variable_info ) generic , public :: matrix_info => MAYBEWRAP ( json_file_variable_matrix_info ) !error checking: procedure , public :: failed => json_file_failed procedure , public :: print_error_message => json_file_print_error_message procedure , public :: check_for_errors => json_file_check_for_errors procedure , public :: clear_exceptions => json_file_clear_exceptions generic , public :: print => json_file_print_to_console , & json_file_print_to_unit , & json_file_print_to_filename !> ! The same as `print`, but only here for backward compatibility generic , public :: print_file => json_file_print_to_console , & json_file_print_to_unit , & json_file_print_to_filename !> ! Rename a variable, specifying it by path generic , public :: rename => MAYBEWRAP ( json_file_rename ) #ifdef USE_UCS4 generic , public :: rename => json_file_rename_path_ascii , & json_file_rename_name_ascii #endif !> ! Verify that a path is valid ! (i.e., a variable with this path exists in the file). generic , public :: valid_path => MAYBEWRAP ( json_file_valid_path ) !> ! Get a variable from a [[json_file(type)]], by specifying the path. generic , public :: get => MAYBEWRAP ( json_file_get_object ), & MAYBEWRAP ( json_file_get_integer ), & #ifndef REAL32 MAYBEWRAP ( json_file_get_real32 ), & #endif MAYBEWRAP ( json_file_get_real ), & #ifdef REAL128 MAYBEWRAP ( json_file_get_real64 ), & #endif MAYBEWRAP ( json_file_get_logical ), & MAYBEWRAP ( json_file_get_string ), & MAYBEWRAP ( json_file_get_integer_vec ), & #ifndef REAL32 MAYBEWRAP ( json_file_get_real32_vec ), & #endif MAYBEWRAP ( json_file_get_real_vec ), & #ifdef REAL128 MAYBEWRAP ( json_file_get_real64_vec ), & #endif MAYBEWRAP ( json_file_get_logical_vec ), & MAYBEWRAP ( json_file_get_string_vec ), & MAYBEWRAP ( json_file_get_alloc_string_vec ), & json_file_get_root !> ! Add a variable to a [[json_file(type)]], by specifying the path. ! !### Example ! !```fortran ! program test ! use json_module, rk=>json_rk, ik=>json_ik ! implicit none ! type(json_file) :: f ! call f%initialize() ! specify whatever init options you want. ! call f%add('inputs.t', 0.0_rk) ! call f%add('inputs.x', [1.0_rk,2.0_rk,3.0_rk]) ! call f%add('inputs.flag', .true.) ! call f%print() ! print to the console ! end program test !``` generic , public :: add => json_file_add , & MAYBEWRAP ( json_file_add_object ), & MAYBEWRAP ( json_file_add_integer ), & #ifndef REAL32 MAYBEWRAP ( json_file_add_real32 ), & #endif MAYBEWRAP ( json_file_add_real ), & #ifdef REAL128 MAYBEWRAP ( json_file_add_real64 ), & #endif MAYBEWRAP ( json_file_add_logical ), & MAYBEWRAP ( json_file_add_string ), & MAYBEWRAP ( json_file_add_integer_vec ), & #ifndef REAL32 MAYBEWRAP ( json_file_add_real32_vec ), & #endif MAYBEWRAP ( json_file_add_real_vec ), & #ifdef REAL128 MAYBEWRAP ( json_file_add_real64_vec ), & #endif MAYBEWRAP ( json_file_add_logical_vec ), & MAYBEWRAP ( json_file_add_string_vec ) #ifdef USE_UCS4 generic , public :: add => json_file_add_string_path_ascii , & json_file_add_string_value_ascii ,& json_file_add_string_vec_path_ascii ,& json_file_add_string_vec_vec_ascii #endif !> ! Update a scalar variable in a [[json_file(type)]], ! by specifying the path. ! !@note These have been mostly supplanted by the `add` ! methods, which do a similar thing (and can be used for ! scalars and vectors, etc.) generic , public :: update => MAYBEWRAP ( json_file_update_integer ), & MAYBEWRAP ( json_file_update_logical ), & #ifndef REAL32 MAYBEWRAP ( json_file_update_real32 ), & #endif MAYBEWRAP ( json_file_update_real ), & #ifdef REAL128 MAYBEWRAP ( json_file_update_real64 ), & #endif MAYBEWRAP ( json_file_update_string ) #ifdef USE_UCS4 generic , public :: update => json_file_update_string_name_ascii , & json_file_update_string_val_ascii #endif !> ! Remove a variable from a [[json_file(type)]] ! by specifying the path. generic , public :: remove => MAYBEWRAP ( json_file_remove ) !traverse procedure , public :: traverse => json_file_traverse ! *************************************************** ! operators ! *************************************************** generic , public :: operator (. in .) => MAYBEWRAP ( json_file_valid_path_op ) procedure , pass ( me ) :: MAYBEWRAP ( json_file_valid_path_op ) generic , public :: assignment ( = ) => assign_json_file ,& assign_json_file_to_string ,& MAYBEWRAP ( assign_string_to_json_file ) procedure :: assign_json_file procedure , pass ( me ) :: assign_json_file_to_string procedure :: MAYBEWRAP ( assign_string_to_json_file ) ! *************************************************** ! private routines ! *************************************************** !load from string: procedure :: MAYBEWRAP ( json_file_load_from_string ) !initialize procedure :: initialize_json_core_in_file procedure :: set_json_core_in_file !get info: procedure :: MAYBEWRAP ( json_file_variable_info ) procedure :: MAYBEWRAP ( json_file_variable_matrix_info ) !rename: procedure :: MAYBEWRAP ( json_file_rename ) #ifdef USE_UCS4 procedure :: json_file_rename_path_ascii procedure :: json_file_rename_name_ascii #endif !validate path: procedure :: MAYBEWRAP ( json_file_valid_path ) !get: procedure :: MAYBEWRAP ( json_file_get_object ) procedure :: MAYBEWRAP ( json_file_get_integer ) #ifndef REAL32 procedure :: MAYBEWRAP ( json_file_get_real32 ) #endif procedure :: MAYBEWRAP ( json_file_get_real ) #ifdef REAL128 procedure :: MAYBEWRAP ( json_file_get_real64 ) #endif procedure :: MAYBEWRAP ( json_file_get_logical ) procedure :: MAYBEWRAP ( json_file_get_string ) procedure :: MAYBEWRAP ( json_file_get_integer_vec ) #ifndef REAL32 procedure :: MAYBEWRAP ( json_file_get_real32_vec ) #endif procedure :: MAYBEWRAP ( json_file_get_real_vec ) #ifdef REAL128 procedure :: MAYBEWRAP ( json_file_get_real64_vec ) #endif procedure :: MAYBEWRAP ( json_file_get_logical_vec ) procedure :: MAYBEWRAP ( json_file_get_string_vec ) procedure :: MAYBEWRAP ( json_file_get_alloc_string_vec ) procedure :: json_file_get_root !add: procedure :: json_file_add procedure :: MAYBEWRAP ( json_file_add_object ) procedure :: MAYBEWRAP ( json_file_add_integer ) #ifndef REAL32 procedure :: MAYBEWRAP ( json_file_add_real32 ) #endif procedure :: MAYBEWRAP ( json_file_add_real ) #ifdef REAL128 procedure :: MAYBEWRAP ( json_file_add_real64 ) #endif procedure :: MAYBEWRAP ( json_file_add_logical ) procedure :: MAYBEWRAP ( json_file_add_string ) procedure :: MAYBEWRAP ( json_file_add_integer_vec ) #ifndef REAL32 procedure :: MAYBEWRAP ( json_file_add_real32_vec ) #endif procedure :: MAYBEWRAP ( json_file_add_real_vec ) #ifdef REAL128 procedure :: MAYBEWRAP ( json_file_add_real64_vec ) #endif procedure :: MAYBEWRAP ( json_file_add_logical_vec ) procedure :: MAYBEWRAP ( json_file_add_string_vec ) #ifdef USE_UCS4 procedure :: json_file_add_string_path_ascii procedure :: json_file_add_string_value_ascii procedure :: json_file_add_string_vec_path_ascii procedure :: json_file_add_string_vec_vec_ascii #endif !update: procedure :: MAYBEWRAP ( json_file_update_integer ) procedure :: MAYBEWRAP ( json_file_update_logical ) #ifndef REAL32 procedure :: MAYBEWRAP ( json_file_update_real32 ) #endif procedure :: MAYBEWRAP ( json_file_update_real ) #ifdef REAL128 procedure :: MAYBEWRAP ( json_file_update_real64 ) #endif procedure :: MAYBEWRAP ( json_file_update_string ) #ifdef USE_UCS4 procedure :: json_file_update_string_name_ascii procedure :: json_file_update_string_val_ascii #endif !remove: procedure :: MAYBEWRAP ( json_file_remove ) !print: procedure :: json_file_print_to_console procedure :: json_file_print_to_unit procedure :: json_file_print_to_filename final :: finalize_json_file end type json_file","tags":"","loc":"type/json_file.html"},{"title":"json_core – JSON-Fortran ","text":"type, public :: json_core To access the core routines for manipulation\n of json_value pointer variables. This class allows\n for thread safe use of the module. Usage program test use json_module , wp => json_RK implicit none type ( json_core ) :: json !<--have to declare this type ( json_value ), pointer :: p call json % create_object ( p , '' ) !create the root call json % add ( p , 'year' , 1805 ) !add some data call json % add ( p , 'value' , 1.0_wp ) !add some data call json % print ( p , 'test.json' ) !write it to a file call json % destroy ( p ) !cleanup end program test Inherited by type~~json_core~~InheritedByGraph type~json_core json_core type~json_file json_file type~json_file->type~json_core core Help Graph Key Nodes of different colours represent the following: Graph Key Type Type This Page's Entity This Page's Entity Solid arrows point from a derived type to the parent type which it\nextends. Dashed arrows point from a derived type to the other\ntypes it contains as a components, with a label listing the name(s) of\nsaid component(s). Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Components Type Visibility Attributes Name Initial logical(kind=LK), private :: allow_comments = .true. if true, any comments will be ignored when\nparsing a file. The comment tokens are defined\nby the comment_char character variable. logical(kind=LK), private :: allow_duplicate_keys = .true. If False, then after parsing, if any\nduplicate keys are found, an error is\nthrown. A call to json_value_validate will also check for duplicates. If True\n[default] then no special checks are done logical(kind=LK), private :: allow_trailing_comma = .true. Allow a single trailing comma in arrays and objects. logical(kind=LK), private :: case_sensitive_keys = .true. if name and path comparisons\nare case sensitive. integer(kind=IK), private :: char_count = 0 character position in the current line character(kind=CK, len=:), private, allocatable :: chunk a chunk read from a stream file\nwhen use_unformatted_stream=True character(kind=CK, len=:), private, allocatable :: comment_char comment tokens when allow_comments is true.\nExamples: ‘ ! ’ or ‘ # ’.\nDefault is CK_'/!#' . logical(kind=LK), private :: compact_real = .true. to use the “compact” form of real\nnumbers for output logical(kind=LK), private :: compress_vectors = .false. If true, then arrays of integers,\nnulls, reals, & logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary] character(kind=CK, len=:), private, allocatable :: err_message the error message.\nif exception_thrown=False then\nthis variable is not allocated. logical(kind=LK), private :: escape_solidus = .false. If True then the solidus “ / ” is always escaped\n(“ \\/ ”) when serializing JSON .\nIf False [default], then it is not escaped.\nNote that this option does not affect parsing\n(both escaped and unescaped versions are still\nvalid in all cases). logical(kind=LK), private :: exception_thrown = .false. The error flag. Will be set to true\nwhen an error is thrown in the class.\nMany of the methods will check this\nand return immediately if it is true. integer, private :: filesize = 0 the file size when when use_unformatted_stream=True integer, private :: ichunk = 0 index in chunk for pop_char when use_unformatted_stream=True integer(kind=IK), private :: ipos = 1 for allocatable strings: next character to read logical(kind=LK), private :: is_verbose = .false. if true, all exceptions are\nimmediately printed to console. integer(kind=IK), private :: line_count = 1 lines read counter logical(kind=LK), private :: no_whitespace = .false. when printing a JSON string, don’t include\nnon-significant spaces or line breaks.\nIf true, the entire structure will be\nprinted on one line. logical(kind=LK), private :: non_normals_to_null = .false. How to serialize NaN, Infinity,\nand -Infinity real values: If true : as JSON null values If false : as strings (e.g., “NaN”,\n “Infinity”, “-Infinity”) [default] integer(kind=IK), private :: null_to_real_mode = 2_IK if strict_type_checking=false : 1 : an exception will be raised if\n try to retrieve a null as a real. 2 : a null retrieved as a real\n will return NaN. [default] 3 : a null retrieved as a real\n will return 0.0. integer(kind=IK), private :: path_mode = 1_IK How the path strings are interpreted in the get_by_path routines: 1 – Default mode (see json_get_by_path_default ) 2 – as RFC 6901 “ JSON Pointer” paths\n (see json_get_by_path_rfc6901 ) 3 – JSONPath “bracket-notation”\n see json_get_by_path_jsonpath_bracket ) character(kind=CK, len=1), private :: path_separator = dot The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nNote: if path_mode/=1 then this is ignored. character(kind=CK, len=pushed_char_size), private :: pushed_char = CK_'' used when parsing\nlines in file integer(kind=IK), private :: pushed_index = 0 used when parsing lines in file character(kind=CDK, len=:), private, allocatable :: real_fmt the format string to use\nfor converting real numbers to strings.\nIt can be set in json_initialize ,\nand used in json_value_print If not set, then default_real_fmt is used instead. integer(kind=IK), private :: spaces_per_tab = 2 number of spaces for indenting logical(kind=LK), private :: stop_on_error = .false. if true, then the program is\nstopped immediately when an\nexception is raised. logical(kind=LK), private :: strict_integer_type_checking = .true. If false, when parsing JSON , if an integer numeric value\n cannot be converted to an integer ( integer(IK) ),\n then an attempt is then make to convert it\n to a real ( real(RK) ). If true [default], an exception will be raised if an integer\n value cannot be read when parsing JSON . logical(kind=LK), private :: strict_type_checking = .false. if true, then no type conversions are done\nin the get routines if the actual variable\ntype is different from the return type (for\nexample, integer to real). logical(kind=LK), private :: trailing_spaces_significant = .false. for name and path comparisons, if trailing\nspace is to be considered significant. logical(kind=LK), private :: unescaped_strings = .true. If false, then the escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. logical(kind=LK), private :: use_quiet_nan = .true. if true [default], null_to_real_mode=2 and string_to_real will use ieee_quiet_nan for NaN values. If false, ieee_signaling_nan will be used. Constructor public interface json_core Structure constructor to initialize a json_core object Example type ( json_file ) :: json_core json_core = json_core () private function initialize_json_core (verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) result(json_core_object) Author Jacob Williams Date 4/26/2016 Function constructor for a json_core .\n This is just a wrapper for json_initialize . Note initialize_json_core , json_initialize , initialize_json_core_in_file , and initialize_json_file all have a similar interface. Arguments Type Intent Optional Attributes Name logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Return Value type( json_core ) Type-Bound Procedures generic, public :: add => json_value_add_member , json_value_add_null , wrap_json_value_add_null , json_value_add_integer , wrap_json_value_add_integer , json_value_add_integer_vec , wrap_json_value_add_integer_vec , json_value_add_real32 , wrap_json_value_add_real32 , json_value_add_real32_vec , wrap_json_value_add_real32_vec , json_value_add_real , wrap_json_value_add_real , json_value_add_real_vec , wrap_json_value_add_real_vec , json_value_add_logical , wrap_json_value_add_logical , json_value_add_logical_vec , wrap_json_value_add_logical_vec , json_value_add_string , wrap_json_value_add_string , json_value_add_string_vec , wrap_json_value_add_string_vec Add objects to a linked list of json_value s. Note It might make more sense to call this add_child . private subroutine json_value_add_member (json, p, member) Adds member as a child of p . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p p must be a json_object or a json_array type( json_value ), pointer :: member the child member\nto add to p private subroutine json_value_add_null (json, p, name) Add a NULL value child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name private subroutine wrap_json_value_add_null (json, p, name) Alternate version of json_value_add_null where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable private subroutine json_value_add_integer (json, p, name, val) Author Jacob Williams Date 1/20/2014 Add an integer value child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name integer(kind=IK), intent(in) :: val private subroutine wrap_json_value_add_integer (json, p, name, val) Alternate version of json_value_add_integer where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable integer(kind=IK), intent(in) :: val value private subroutine json_value_add_integer_vec (json, p, name, val) Author Jacob Williams Date 1/20/2014 Add a integer vector child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the variable integer(kind=IK), intent(in), dimension(:) :: val value private subroutine wrap_json_value_add_integer_vec (json, p, name, val) Alternate version of json_value_add_integer_vec where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable integer(kind=IK), intent(in), dimension(:) :: val value private subroutine json_value_add_real32 (json, p, name, val) Alternate version of json_value_add_real where val is real32 . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name variable name real(kind=real32), intent(in) :: val real value private subroutine wrap_json_value_add_real32 (json, p, name, val) Alternate version of json_value_add_real32 where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name variable name real(kind=real32), intent(in) :: val real value private subroutine json_value_add_real32_vec (json, p, name, val) Alternate version of json_value_add_real_vec where val is real32 . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name real(kind=real32), intent(in), dimension(:) :: val private subroutine wrap_json_value_add_real32_vec (json, p, name, val) Alternate version of json_value_add_real32_vec where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name real(kind=real32), intent(in), dimension(:) :: val private subroutine json_value_add_real (json, p, name, val) Author Jacob Williams Date 1/19/2014 Add a real value child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name variable name real(kind=RK), intent(in) :: val real value private subroutine wrap_json_value_add_real (json, p, name, val) Alternate version of json_value_add_real where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name variable name real(kind=RK), intent(in) :: val real value private subroutine json_value_add_real_vec (json, p, name, val) Author Jacob Williams Date 1/20/2014 Add a real vector child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name real(kind=RK), intent(in), dimension(:) :: val private subroutine wrap_json_value_add_real_vec (json, p, name, val) Alternate version of json_value_add_real_vec where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name real(kind=RK), intent(in), dimension(:) :: val private subroutine json_value_add_logical (json, p, name, val) Author Jacob Williams Date 1/20/2014 Add a logical value child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the variable logical(kind=LK), intent(in) :: val value private subroutine wrap_json_value_add_logical (json, p, name, val) Alternate version of json_value_add_logical where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable logical(kind=LK), intent(in) :: val value private subroutine json_value_add_logical_vec (json, p, name, val) Author Jacob Williams Date 1/20/2014 Add a logical vector child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the vector logical(kind=LK), intent(in), dimension(:) :: val value private subroutine wrap_json_value_add_logical_vec (json, p, name, val) Alternate version of json_value_add_logical_vec where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable logical(kind=LK), intent(in), dimension(:) :: val value private subroutine json_value_add_string (json, p, name, val, trim_str, adjustl_str) Author Jacob Williams Date 1/19/2014 Add a character string child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the variable character(kind=CK, len=*), intent(in) :: val value logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val private subroutine wrap_json_value_add_string (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string where name and val are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable character(kind=CDK, len=*), intent(in) :: val value logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val private subroutine json_value_add_string_vec (json, p, name, val, trim_str, adjustl_str) Author Jacob Williams Date 1/19/2014 Add a character string vector child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name variable name character(kind=CK, len=*), intent(in), dimension(:) :: val array of strings logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element private subroutine wrap_json_value_add_string_vec (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string_vec where name and val are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name character(kind=CDK, len=*), intent(in), dimension(:) :: val logical(kind=LK), intent(in), optional :: trim_str logical(kind=LK), intent(in), optional :: adjustl_str generic, public :: add => json_value_add_string_name_ascii , json_value_add_string_val_ascii , json_value_add_string_vec_name_ascii , json_value_add_string_vec_val_ascii private subroutine json_value_add_string_name_ascii (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable character(kind=CK, len=*), intent(in) :: val value logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val private subroutine json_value_add_string_val_ascii (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string where val is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the variable character(kind=CDK, len=*), intent(in) :: val value logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val private subroutine json_value_add_string_vec_name_ascii (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string_vec where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name character(kind=CK, len=*), intent(in), dimension(:) :: val logical(kind=LK), intent(in), optional :: trim_str logical(kind=LK), intent(in), optional :: adjustl_str private subroutine json_value_add_string_vec_val_ascii (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string_vec where val is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name character(kind=CDK, len=*), intent(in), dimension(:) :: val logical(kind=LK), intent(in), optional :: trim_str logical(kind=LK), intent(in), optional :: adjustl_str generic, public :: add_by_path => json_add_member_by_path , wrap_json_add_member_by_path , json_add_integer_by_path , wrap_json_add_integer_by_path , json_add_real32_by_path , wrap_json_add_real32_by_path , json_add_real_by_path , wrap_json_add_real_by_path , json_add_logical_by_path , wrap_json_add_logical_by_path , json_add_string_by_path , wrap_json_add_string_by_path , json_add_integer_vec_by_path , wrap_json_add_integer_vec_by_path , json_add_real32_vec_by_path , wrap_json_add_real32_vec_by_path , json_add_real_vec_by_path , wrap_json_add_real_vec_by_path , json_add_logical_vec_by_path , wrap_json_add_logical_vec_by_path , json_add_string_vec_by_path , wrap_json_add_string_vec_by_path Add variables to a json_value linked list\n by specifying their paths. Example use , intrinsic :: iso_fortran_env , only : output_unit use json_module , wp => json_RK type ( json_core ) :: json type ( json_value ) :: p call json % create_object ( p , 'root' ) ! create the root ! now add some variables using the paths: call json % add_by_path ( p , 'inputs.t' , 0.0_wp ) call json % add_by_path ( p , 'inputs.x(1)' , 10 0.0_wp ) call json % add_by_path ( p , 'inputs.x(2)' , 20 0.0_wp ) call json % print ( p ) ! now print to console Notes This uses json_create_by_path See also The json_core%update methods. json_create_by_path private subroutine json_add_member_by_path (json, me, path, p, found, was_created) Add a new member ( json_value pointer) to a JSON structure, given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(in), pointer :: p the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_member_by_path (json, me, path, p, found, was_created) Wrapper to json_add_member_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(in), pointer :: p the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_integer_by_path (json, me, path, value, found, was_created) Add an integer value to a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_integer_by_path (json, me, path, value, found, was_created) Wrapper to json_add_integer_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_real32_by_path (json, me, path, value, found, was_created) Alternate version of json_add_real_by_path where value=real32. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_real32_by_path (json, me, path, value, found, was_created) Wrapper to json_add_real32_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_real_by_path (json, me, path, value, found, was_created) Add an real value to a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_real_by_path (json, me, path, value, found, was_created) Wrapper to json_add_real_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_logical_by_path (json, me, path, value, found, was_created) Add a logical value to a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_logical_by_path (json, me, path, value, found, was_created) Wrapper to json_add_logical_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_string_by_path (json, me, path, value, found, was_created, trim_str, adjustl_str) Add a string value to a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element private subroutine wrap_json_add_string_by_path (json, me, path, value, found, was_created, trim_str, adjustl_str) Wrapper to json_add_string_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element private subroutine json_add_integer_vec_by_path (json, me, path, value, found, was_created) Wrapper to json_add_integer_by_path for adding an integer vector by path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_integer_vec_by_path (json, me, path, value, found, was_created) Wrapper for json_add_integer_vec_by_path where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_real32_vec_by_path (json, me, path, value, found, was_created) Wrapper to json_add_real_by_path for adding a real vector by path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_real32_vec_by_path (json, me, path, value, found, was_created) Wrapper for json_add_real32_vec_by_path where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_real_vec_by_path (json, me, path, value, found, was_created) Wrapper to json_add_real_by_path for adding a real vector by path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_real_vec_by_path (json, me, path, value, found, was_created) Wrapper for json_add_real_vec_by_path where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_logical_vec_by_path (json, me, path, value, found, was_created) Wrapper to json_add_logical_by_path for adding a logical vector by path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_logical_vec_by_path (json, me, path, value, found, was_created) Wrapper for json_add_logical_vec_by_path where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_string_vec_by_path (json, me, path, value, found, was_created, ilen, trim_str, adjustl_str) Wrapper to json_add_string_by_path for adding a string vector by path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element private subroutine wrap_json_add_string_vec_by_path (json, me, path, value, found, was_created, ilen, trim_str, adjustl_str) Wrapper for json_add_string_vec_by_path where “path” and “value” are kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element generic, public :: add_by_path => json_add_string_by_path_value_ascii , json_add_string_by_path_path_ascii , json_add_string_vec_by_path_value_ascii , json_add_string_vec_by_path_path_ascii private subroutine json_add_string_by_path_value_ascii (json, me, path, value, found, was_created, trim_str, adjustl_str) Wrapper for json_add_string_by_path where “value” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element private subroutine json_add_string_by_path_path_ascii (json, me, path, value, found, was_created, trim_str, adjustl_str) Wrapper for json_add_string_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element private subroutine json_add_string_vec_by_path_value_ascii (json, me, path, value, found, was_created, ilen, trim_str, adjustl_str) Wrapper for json_add_string_vec_by_path where “value” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element private subroutine json_add_string_vec_by_path_path_ascii (json, me, path, value, found, was_created, ilen, trim_str, adjustl_str) Wrapper for json_add_string_vec_by_path where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element procedure, private :: annotate_invalid_json private subroutine annotate_invalid_json (json, iunit, str) Generate a warning message if there was an error parsing a JSON file or string. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: iunit file unit number character(kind=CK, len=*), intent(in) :: str string with JSON data procedure, public :: check_children_for_duplicate_keys => json_check_children_for_duplicate_keys Check a json_value object’s\nchildren for duplicate keys private subroutine json_check_children_for_duplicate_keys (json, p, has_duplicate, name, path) Author Jacob Williams Date 8/25/2017 Checks a JSON object for duplicate child names. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p the object to search. If p is\nnot a json_object , then has_duplicate will be false. logical(kind=LK), intent(out) :: has_duplicate true if there is at least\ntwo children have duplicate name values. character(kind=CK, len=:), intent(out), optional, allocatable :: name the duplicate name\n(unallocated if no\nduplicate was found) character(kind=CK, len=:), intent(out), optional, allocatable :: path the full path to the\nduplicate name\n(unallocated if no\nduplicate was found) procedure, public :: check_for_duplicate_keys => json_check_all_for_duplicate_keys Check entire JSON structure\nfor duplicate keys (recursively) private subroutine json_check_all_for_duplicate_keys (json, p, has_duplicate, name, path) Author Jacob Williams Date 8/25/2017 Checks a JSON structure for duplicate child names.\n This one recursively traverses the entire structure\n (calling json_check_children_for_duplicate_keys recursively for each element). Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p the object to search. If p is\nnot a json_object , then has_duplicate will be false. logical(kind=LK), intent(out) :: has_duplicate true if there is at least\none duplicate name key anywhere\nin the structure. character(kind=CK, len=:), intent(out), optional, allocatable :: name the duplicate name\n(unallocated if no\nduplicates were found) character(kind=CK, len=:), intent(out), optional, allocatable :: path the full path to the\nduplicate name\n(unallocated if no\nduplicate was found) procedure, public :: check_for_errors => json_check_for_errors check for error and get error message private subroutine json_check_for_errors (json, status_ok, error_msg) Author Jacob Williams Date 12/4/2013 Retrieve error code from the json_core .\n This should be called after parse to check for errors.\n If an error is thrown, before using the class again, json_initialize should be called to clean up before it is used again. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(in) :: json logical(kind=LK), intent(out), optional :: status_ok true if there were no errors character(kind=CK, len=:), intent(out), optional, allocatable :: error_msg the error message.\n(not allocated if\nthere were no errors) procedure, public :: clear_exceptions => json_clear_exceptions clear exceptions private pure subroutine json_clear_exceptions (json) Author Jacob Williams Date 12/4/2013 Clear exceptions in the json_core . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json procedure, public :: clone => json_clone clone a JSON structure (deep copy) private subroutine json_clone (json, from, to) Author Jacob Williams Date 10/31/2015 Create a deep copy of a json_value linked-list structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: from this is the structure to clone type( json_value ), pointer :: to the clone is put here\n(it must not already be associated) procedure, private :: convert private subroutine convert (json, p, var_type) Convert an existing JSON variable p to a different variable type .\n The existing variable (and its children) is destroyed. It is replaced\n in the structure by a new variable of type var_type (which can be a json_null , json_object or json_array ). Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p the variable to convert integer(kind=IK), intent(in) :: var_type the variable type to convert p to procedure, public :: count => json_count count the number of children private function json_count (json, p) result(count) Count the number of children in the object or array. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p this should normally be a json_object or a json_array . For any other variable type this will return 0. Return Value integer(kind=IK) number of children in p . generic, public :: create => json_create_by_path , wrap_json_create_by_path Create a json_value linked list using the\n path to the variables. Optionally return a\n pointer to the variable. (This will create a null variable) See also add_by_path private subroutine json_create_by_path (json, me, path, p, found, was_created) Returns the json_value pointer given the path string,\n If necessary, by creating the variables as needed. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable type( json_value ), intent(out), optional, pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if there were no errors\n(variable found or created) logical(kind=LK), intent(out), optional :: was_created true if it was actually created\n(as opposed to already being there) private subroutine wrap_json_create_by_path (json, me, path, p, found, was_created) Alternate version of json_create_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CDK, len=*), intent(in) :: path path to the variable type( json_value ), intent(out), optional, pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if there were no errors\n(variable found or created) logical(kind=LK), intent(out), optional :: was_created true if it was actually created\n(as opposed to already being there) generic, public :: create_array => json_value_create_array , wrap_json_value_create_array Allocate a json_value pointer and make it an array variable.\n The pointer should not already be allocated. Example type ( json_core ) :: json type ( json_value ), pointer :: p call json % create_array ( p , 'arrayname' ) private subroutine json_value_create_array (json, p, name) Author Jacob Williams Allocate a json_value pointer and make it an array variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name private subroutine wrap_json_value_create_array (json, p, name) Author Izaak Beekman A wrapper for json_value_create_array so that create_array method may be\ncalled with an actual argument, corresponding to the dummy argument name ,\nthat is either of ‘DEFAULT’ or ‘ISO_10646’ character kind. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name generic, public :: create_double => json_value_create_real , wrap_json_value_create_real This is equivalent to create_real ,\nand is here only for backward compatibility. private subroutine json_value_create_real (json, p, val, name) Author Jacob Williams Allocate a json_value pointer and make it a real(RK) variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=RK), intent(in) :: val character(kind=CK, len=*), intent(in) :: name private subroutine wrap_json_value_create_real (json, p, val, name) Author Izaak Beekman A wrapper for json_value_create_real so that create_real method\nmay be called with an actual argument corresponding to the dummy argument, name that may be of ‘DEFAULT’ or ‘ISO_10646’ character kind. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=RK), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name generic, public :: create_double => json_value_create_real32 , wrap_json_value_create_real32 private subroutine json_value_create_real32 (json, p, val, name) Alternate version of json_value_create_real where val=real32. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=real32), intent(in) :: val character(kind=CK, len=*), intent(in) :: name private subroutine wrap_json_value_create_real32 (json, p, val, name) Alternate version of json_value_create_real32 where “name” is kind(CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=real32), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name generic, public :: create_integer => json_value_create_integer , wrap_json_value_create_integer Allocate a json_value pointer and make it an integer variable.\n The pointer should not already be allocated. Example type ( json_core ) :: json type ( json_value ), pointer :: p call json % create_integer ( p , 42 , 'value' ) private subroutine json_value_create_integer (json, p, val, name) Author Jacob Williams Allocate a json_value pointer and make it an integer(IK) variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(in) :: val character(kind=CK, len=*), intent(in) :: name private subroutine wrap_json_value_create_integer (json, p, val, name) Author Izaak Beekman A wrapper procedure for json_value_create_integer so that create_integer method may be called with either a ‘DEFAULT’ or ‘ISO_10646’ character kind name actual argument. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name generic, public :: create_logical => json_value_create_logical , wrap_json_value_create_logical Allocate a json_value pointer and make it a logical variable.\n The pointer should not already be allocated. Example type ( json_core ) :: json type ( json_value ), pointer :: p call json % create_logical ( p , 'value' ,. true .) private subroutine json_value_create_logical (json, p, val, name) Author Jacob Williams Allocate a json_value pointer and make it a logical(LK) variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p logical(kind=LK), intent(in) :: val variable value character(kind=CK, len=*), intent(in) :: name variable name private subroutine wrap_json_value_create_logical (json, p, val, name) Author Izaak Beekman Wrapper for json_value_create_logical so create_logical method can\nbe called with name of character kind ‘DEFAULT’ or ‘ISO_10646’ Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p logical(kind=LK), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name generic, public :: create_null => json_value_create_null , wrap_json_value_create_null Allocate a json_value pointer and make it a null variable.\n The pointer should not already be allocated. Example type ( json_core ) :: json type ( json_value ), pointer :: p call json % create_null ( p , 'value' ) private subroutine json_value_create_null (json, p, name) Author Jacob Williams Allocate a json_value pointer and make it a null variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name private subroutine wrap_json_value_create_null (json, p, name) Author Izaak Beekman Wrap json_value_create_null so that create_null method may be called with\nan actual argument corresponding to the dummy argument name that is either\nof ‘DEFAULT’ or ‘ISO_10646’ character kind. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name generic, public :: create_object => json_value_create_object , wrap_json_value_create_object Allocate a json_value pointer and make it an object variable.\n The pointer should not already be allocated. Example type ( json_core ) :: json type ( json_value ), pointer :: p call json % create_object ( p , 'objectname' ) Note The name is not significant for the root structure or an array element.\n In those cases, an empty string can be used. private subroutine json_value_create_object (json, p, name) Author Jacob Williams Allocate a json_value pointer and make it an object variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name private subroutine wrap_json_value_create_object (json, p, name) Author Izaak Beekman Wrap json_value_create_object so that create_object method may be called\nwith an actual argument corresponding to the dummy argument name that is of\neither ‘DEFAULT’ or ‘ISO_10646’ character kind. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name generic, public :: create_real => json_value_create_real , wrap_json_value_create_real Allocate a json_value pointer and make it a real variable.\n The pointer should not already be allocated. Example type ( json_core ) :: json type ( json_value ), pointer :: p call json % create_real ( p , 'value' , 1.0_RK ) Note create_real is just an alias\n to this one for backward compatibility. private subroutine json_value_create_real (json, p, val, name) Author Jacob Williams Allocate a json_value pointer and make it a real(RK) variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=RK), intent(in) :: val character(kind=CK, len=*), intent(in) :: name private subroutine wrap_json_value_create_real (json, p, val, name) Author Izaak Beekman A wrapper for json_value_create_real so that create_real method\nmay be called with an actual argument corresponding to the dummy argument, name that may be of ‘DEFAULT’ or ‘ISO_10646’ character kind. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=RK), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name generic, public :: create_real => json_value_create_real32 , wrap_json_value_create_real32 private subroutine json_value_create_real32 (json, p, val, name) Alternate version of json_value_create_real where val=real32. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=real32), intent(in) :: val character(kind=CK, len=*), intent(in) :: name private subroutine wrap_json_value_create_real32 (json, p, val, name) Alternate version of json_value_create_real32 where “name” is kind(CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=real32), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name generic, public :: create_string => json_value_create_string , wrap_json_value_create_string Allocate a json_value pointer and make it a string variable.\n The pointer should not already be allocated. Example type ( json_core ) :: json type ( json_value ), pointer :: p call json % create_string ( p , 'value' , 'foobar' ) private subroutine json_value_create_string (json, p, val, name, trim_str, adjustl_str) Author Jacob Williams Allocate a json_value pointer and make it a string variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: val character(kind=CK, len=*), intent(in) :: name logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val private subroutine wrap_json_value_create_string (json, p, val, name, trim_str, adjustl_str) Author Izaak Beekman Wrap json_value_create_string so that create_string method may be called\nwith actual character string arguments for name and val that are BOTH of\n‘DEFAULT’ or ‘ISO_10646’ character kind. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val generic, public :: deserialize => json_parse_string , wrap_json_parse_string Parse the JSON string and populate the json_value tree. private subroutine json_parse_string (json, p, str) Parse the JSON string and populate the json_value tree. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p output structure character(kind=CK, len=*), intent(in) :: str string with JSON data private subroutine wrap_json_parse_string (json, p, str) Alternate version of json_parse_string , where str is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p output structure character(kind=CDK, len=*), intent(in) :: str string with JSON data generic, public :: destroy => json_value_destroy , destroy_json_core Destructor routine for a json_value pointer.\n This must be called explicitly if it is no longer needed,\n before it goes out of scope. Otherwise, a memory leak will result. Example Destroy the json_value pointer before the variable goes out of scope: subroutine example1 () type ( json_core ) :: json type ( json_value ), pointer :: p call json % create_object ( p , '' ) call json % add ( p , 'year' , 2015 ) call json % print ( p ) call json % destroy ( p ) end subroutine example1 Note: it should NOT be called for a json_value pointer than has already been\n added to another json_value structure, since doing so may render the\n other structure invalid. Consider the following example: subroutine example2 ( p ) type ( json_core ) :: json type ( json_value ), pointer , intent ( out ) :: p type ( json_value ), pointer :: q call json % create_object ( p , '' ) call json % add ( p , 'year' , 2015 ) call json % create_object ( q , 'q' ) call json % add ( q , 'val' , 1 ) call json % add ( p , q ) !add q to p structure ! do NOT call json%destroy(q) here, because q is ! now part of the output structure p. p should be destroyed ! somewhere upstream by the caller of this routine. nullify ( q ) !OK, but not strictly necessary end subroutine example2 private pure recursive subroutine json_value_destroy (json, p, destroy_next) Author Jacob Williams Date 1/22/2014 Destroy a json_value linked-list structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p variable to destroy logical(kind=LK), intent(in), optional :: destroy_next if true, then p%next is also destroyed (default is true) private subroutine destroy_json_core (me) Author Jacob Williams Date 4/17/2016 Destructor for the json_core type. Arguments Type Intent Optional Attributes Name class( json_core ), intent(out) :: me procedure, private :: destroy_json_core private subroutine destroy_json_core (me) Author Jacob Williams Date 4/17/2016 Destructor for the json_core type. Arguments Type Intent Optional Attributes Name class( json_core ), intent(out) :: me procedure, public :: failed => json_failed check for error private pure function json_failed (json) result(failed) Author Jacob Williams Date 12/5/2013 Logical function to indicate if an exception has been thrown in a json_core . Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(in) :: json Return Value logical(kind=LK) will be true if an exception\nhas been thrown. generic, public :: get => json_get_by_path , wrap_json_get_by_path , json_get_integer , json_get_integer_by_path , wrap_json_get_integer_by_path , json_get_integer_vec , json_get_integer_vec_by_path , wrap_json_get_integer_vec_by_path , json_get_real32 , json_get_real32_by_path , wrap_json_get_real32_by_path , json_get_real32_vec , json_get_real32_vec_by_path , wrap_json_get_real32_vec_by_path , json_get_real , json_get_real_by_path , wrap_json_get_real_by_path , json_get_real_vec , json_get_real_vec_by_path , wrap_json_get_real_vec_by_path , json_get_logical , json_get_logical_by_path , wrap_json_get_logical_by_path , json_get_logical_vec , json_get_logical_vec_by_path , wrap_json_get_logical_vec_by_path , json_get_string , json_get_string_by_path , wrap_json_get_string_by_path , json_get_string_vec , json_get_string_vec_by_path , wrap_json_get_string_vec_by_path , json_get_alloc_string_vec , json_get_alloc_string_vec_by_path , wrap_json_get_alloc_string_vec_by_path , json_get_array , json_get_array_by_path , wrap_json_get_array_by_path Get data from a json_value linked list. Note There are two versions (e.g. json_get_integer and json_get_integer_by_path ).\n The first one gets the value from the json_value passed into the routine,\n while the second one gets the value from the json_value found by parsing the\n path. The path version is split up into unicode and non-unicode versions. private subroutine json_get_by_path (json, me, path, p, found) Returns the json_value pointer given the path string. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable type( json_value ), intent(out), pointer :: p pointer to the variable\nspecified by path logical(kind=LK), intent(out), optional :: found true if it was found private subroutine wrap_json_get_by_path (json, me, path, p, found) Alternate version of json_get_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path type( json_value ), intent(out), pointer :: p logical(kind=LK), intent(out), optional :: found private subroutine json_get_integer (json, me, value) Get an integer value from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me integer(kind=IK), intent(out) :: value the integer value private subroutine json_get_integer_by_path (json, me, path, value, found, default) Get an integer value from a json_value , given the path string. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path integer(kind=IK), intent(out) :: value logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(in), optional :: default default value if not found private subroutine wrap_json_get_integer_by_path (json, me, path, value, found, default) Alternate version of json_get_integer_by_path , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path integer(kind=IK), intent(out) :: value logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(in), optional :: default default value if not found private subroutine json_get_integer_vec (json, me, vec) Author Jacob Williams Date 5/14/2014 Get an integer vector from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me integer(kind=IK), intent(out), dimension(:), allocatable :: vec private subroutine json_get_integer_vec_by_path (json, me, path, vec, found, default) Get an integer vector from a json_value , given the path string. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path integer(kind=IK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(in), optional, dimension(:) :: default default value if not found private subroutine wrap_json_get_integer_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_integer_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path integer(kind=IK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(in), optional, dimension(:) :: default default value if not found private subroutine json_get_real32 (json, me, value) Alternate version of json_get_real where value=real32. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me real(kind=real32), intent(out) :: value private subroutine json_get_real32_by_path (json, me, path, value, found, default) Alternate version of json_get_real_by_path where value=real32. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CK, len=*), intent(in) :: path real(kind=real32), intent(out) :: value logical(kind=LK), intent(out), optional :: found real(kind=real32), intent(in), optional :: default default value if not found private subroutine wrap_json_get_real32_by_path (json, me, path, value, found, default) Alternate version of json_get_real32_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path real(kind=real32), intent(out) :: value logical(kind=LK), intent(out), optional :: found real(kind=real32), intent(in), optional :: default default value if not found private subroutine json_get_real32_vec (json, me, vec) Alternate version of json_get_real_vec where vec is real32 . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me real(kind=real32), intent(out), dimension(:), allocatable :: vec private subroutine json_get_real32_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_real_vec_by_path where vec is real32 . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path real(kind=real32), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found real(kind=real32), intent(in), optional, dimension(:) :: default default value if not found private subroutine wrap_json_get_real32_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_real32_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path real(kind=real32), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found real(kind=real32), intent(in), optional, dimension(:) :: default default value if not found private subroutine json_get_real (json, me, value) Get a real value from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me real(kind=RK), intent(out) :: value private subroutine json_get_real_by_path (json, me, path, value, found, default) Get a real value from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CK, len=*), intent(in) :: path real(kind=RK), intent(out) :: value logical(kind=LK), intent(out), optional :: found real(kind=RK), intent(in), optional :: default default value if not found private subroutine wrap_json_get_real_by_path (json, me, path, value, found, default) Alternate version of json_get_real_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path real(kind=RK), intent(out) :: value logical(kind=LK), intent(out), optional :: found real(kind=RK), intent(in), optional :: default default value if not found private subroutine json_get_real_vec (json, me, vec) Author Jacob Williams Date 5/14/2014 Get a real vector from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me real(kind=RK), intent(out), dimension(:), allocatable :: vec private subroutine json_get_real_vec_by_path (json, me, path, vec, found, default) Get a real vector from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path real(kind=RK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found real(kind=RK), intent(in), optional, dimension(:) :: default default value if not found private subroutine wrap_json_get_real_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_real_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path real(kind=RK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found real(kind=RK), intent(in), optional, dimension(:) :: default default value if not found private subroutine json_get_logical (json, me, value) Get a logical value from a json_value . Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me logical(kind=LK), intent(out) :: value private subroutine json_get_logical_by_path (json, me, path, value, found, default) Get a logical value from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path logical(kind=LK), intent(out) :: value logical(kind=LK), intent(out), optional :: found logical(kind=LK), intent(in), optional :: default default value if not found private subroutine wrap_json_get_logical_by_path (json, me, path, value, found, default) Alternate version of json_get_logical_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path logical(kind=LK), intent(out) :: value logical(kind=LK), intent(out), optional :: found logical(kind=LK), intent(in), optional :: default default value if not found private subroutine json_get_logical_vec (json, me, vec) Author Jacob Williams Date 5/14/2014 Get a logical vector from json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me logical(kind=LK), intent(out), dimension(:), allocatable :: vec private subroutine json_get_logical_vec_by_path (json, me, path, vec, found, default) Get a logical vector from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path logical(kind=LK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found logical(kind=LK), intent(in), optional, dimension(:) :: default private subroutine wrap_json_get_logical_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_logical_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path logical(kind=LK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found logical(kind=LK), intent(in), optional, dimension(:) :: default private subroutine json_get_string (json, me, value) Get a character string from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=:), intent(out), allocatable :: value private subroutine json_get_string_by_path (json, me, path, value, found, default) Get a character string from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path character(kind=CK, len=:), intent(out), allocatable :: value logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional :: default private subroutine wrap_json_get_string_by_path (json, me, path, value, found, default) Alternate version of json_get_string_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=:), intent(out), allocatable :: value logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional :: default private subroutine json_get_string_vec (json, me, vec) Author Jacob Williams Date 5/14/2014 Get a string vector from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec private subroutine json_get_string_vec_by_path (json, me, path, vec, found, default) Get a string vector from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default private subroutine wrap_json_get_string_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_string_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default private subroutine json_get_alloc_string_vec (json, me, vec, ilen) Author Jacob Williams Date 12/16/2016 Get a string vector from a json_value . This is an alternate\n version of json_get_string_vec . This one returns an allocatable\n length character (where the string length is the maximum length of\n any element in the array). It also returns an integer array of the\n actual sizes of the strings in the JSON structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array private subroutine json_get_alloc_string_vec_by_path (json, me, path, vec, ilen, found, default, default_ilen) Alternate version of json_get_alloc_string_vec where input is the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default integer(kind=IK), intent(in), optional, dimension(:) :: default_ilen the actual\nlength of default private subroutine wrap_json_get_alloc_string_vec_by_path (json, me, path, vec, ilen, found, default, default_ilen) Alternate version of json_get_alloc_string_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default integer(kind=IK), intent(in), optional, dimension(:) :: default_ilen the actual\nlength of default private recursive subroutine json_get_array (json, me, array_callback) This routine calls the user-supplied json_array_callback_func subroutine for each element in the array. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me procedure( json_array_callback_func ) :: array_callback private recursive subroutine json_get_array_by_path (json, me, path, array_callback, found) This routine calls the user-supplied array_callback subroutine\nfor each element in the array (specified by the path). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path procedure( json_array_callback_func ) :: array_callback logical(kind=LK), intent(out), optional :: found private recursive subroutine wrap_json_get_array_by_path (json, me, path, array_callback, found) Alternate version of json_get_array_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path procedure( json_array_callback_func ) :: array_callback logical(kind=LK), intent(out), optional :: found generic, public :: get_child => json_value_get_child_by_index , json_value_get_child , json_value_get_child_by_name , wrap_json_value_get_child_by_name Return a child of a json_value structure. private subroutine json_value_get_child_by_index (json, p, idx, child, found) Returns a child in the object or array given the index. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p object or array JSON data integer(kind=IK), intent(in) :: idx index of the child\n(this is a 1-based Fortran\nstyle array index). type( json_value ), pointer :: child pointer to the child logical(kind=LK), intent(out), optional :: found true if the value was found\n(if not present, an exception\nwill be thrown if it was not\nfound. If present and not\nfound, no exception will be\nthrown). private subroutine json_value_get_child (json, p, child) Returns pointer to the first child of the object\n(or null() if it is not associated). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p object or array JSON data type( json_value ), pointer :: child pointer to the child private subroutine json_value_get_child_by_name (json, p, name, child, found) Returns a child in the object or array given the name string. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CK, len=*), intent(in) :: name the name of a child of p type( json_value ), pointer :: child pointer to the child logical(kind=LK), intent(out), optional :: found true if the value was found\n(if not present, an exception\nwill be thrown if it was not\nfound. If present and not\nfound, no exception will be\nthrown). private subroutine wrap_json_value_get_child_by_name (json, p, name, child, found) Alternate version of json_value_get_child_by_name where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CDK, len=*), intent(in) :: name type( json_value ), pointer :: child logical(kind=LK), intent(out), optional :: found procedure, private, nopass :: get_current_line_from_file_sequential private subroutine get_current_line_from_file_sequential (iunit, line) Author Jacob Williams Rewind the file to the beginning of the current line, and return this line.\nThe file is assumed to be opened.\nThis is the SEQUENTIAL version (see also get_current_line_from_file_stream ). Arguments Type Intent Optional Attributes Name integer(kind=IK), intent(in) :: iunit file unit number character(kind=CK, len=:), intent(out), allocatable :: line current line procedure, private :: get_current_line_from_file_stream private subroutine get_current_line_from_file_stream (json, iunit, line) Author Jacob Williams Rewind the file to the beginning of the current line, and return this line.\nThe file is assumed to be opened.\nThis is the STREAM version (see also get_current_line_from_file_sequential ). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: iunit file unit number character(kind=CK, len=:), intent(out), allocatable :: line current line procedure, public :: get_next => json_get_next get pointer to json_value next private subroutine json_get_next (json, p, next) Author Jacob Williams Date 10/31/2015 Returns a pointer to the next of a json_value .\nIf there is no next, then a null() pointer is returned. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p JSON object type( json_value ), intent(out), pointer :: next pointer to next procedure, public :: get_parent => json_get_parent get pointer to json_value parent private subroutine json_get_parent (json, p, parent) Author Jacob Williams Date 10/16/2015 Returns a pointer to the parent of a json_value .\nIf there is no parent, then a null() pointer is returned. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p JSON object type( json_value ), intent(out), pointer :: parent pointer to parent generic, public :: get_path => json_get_path , wrap_json_get_path get the path to a JSON variable in a structure: private subroutine json_get_path (json, p, path, found, use_alt_array_tokens, path_sep) Returns the path to a JSON object that is part\n of a linked list structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list object character(kind=CK, len=:), intent(out), allocatable :: path path to the variable logical(kind=LK), intent(out), optional :: found true if there were no problems logical(kind=LK), intent(in), optional :: use_alt_array_tokens if true, then ‘()’ are used for array elements\notherwise, ‘[]’ are used [default]\n(only used if path_mode=1 ) character(kind=CK, len=1), intent(in), optional :: path_sep character to use for path separator\n(otherwise use json%path_separator )\n(only used if path_mode=1 ) private subroutine wrap_json_get_path (json, p, path, found, use_alt_array_tokens, path_sep) Wrapper for json_get_path where “path” and “path_sep” are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list object character(kind=CDK, len=:), intent(out), allocatable :: path path to the variable logical(kind=LK), intent(out), optional :: found true if there were no problems logical(kind=LK), intent(in), optional :: use_alt_array_tokens if true, then ‘()’ are used\nfor array elements otherwise,\n‘[]’ are used [default] character(kind=CDK, len=1), intent(in), optional :: path_sep character to use for path\nseparator (default is ‘.’) procedure, public :: get_previous => json_get_previous get pointer to json_value previous private subroutine json_get_previous (json, p, previous) Author Jacob Williams Date 10/31/2015 Returns a pointer to the previous of a json_value .\nIf there is no previous, then a null() pointer is returned. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p JSON object type( json_value ), intent(out), pointer :: previous pointer to previous procedure, public :: get_tail => json_get_tail get pointer to json_value tail private subroutine json_get_tail (json, p, tail) Author Jacob Williams Date 10/31/2015 Returns a pointer to the tail of a json_value (the last child of an array of object).\nIf there is no tail, then a null() pointer is returned. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p JSON object type( json_value ), intent(out), pointer :: tail pointer to tail generic, public :: info => json_info , json_info_by_path , wrap_json_info_by_path get info about a json_value private subroutine json_info (json, p, var_type, n_children, name) Author Jacob Williams Date 2/13/2014 Returns information about a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(out), optional :: var_type variable type integer(kind=IK), intent(out), optional :: n_children number of children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name private subroutine json_info_by_path (json, p, path, found, var_type, n_children, name) Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable logical(kind=LK), intent(out), optional :: found true if it was found integer(kind=IK), intent(out), optional :: var_type variable type integer(kind=IK), intent(out), optional :: n_children number of children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name private subroutine wrap_json_info_by_path (json, p, path, found, var_type, n_children, name) Alternate version of json_info_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list character(kind=CDK, len=*), intent(in) :: path path to the variable logical(kind=LK), intent(out), optional :: found true if it was found integer(kind=IK), intent(out), optional :: var_type variable type integer(kind=IK), intent(out), optional :: n_children number of children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name procedure, public :: initialize => json_initialize to initialize some parsing parameters private subroutine json_initialize (me, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) Author Jacob Williams Date 12/4/2013 Initialize the json_core instance. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: me logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) generic, public :: insert_after => json_value_insert_after , json_value_insert_after_child_by_index insert a new element after an existing one,\nupdating the JSON structure accordingly private subroutine json_value_insert_after (json, p, element) Inserts element after p , and updates the JSON structure accordingly. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a value from a JSON structure\n(presumably, this is a child of\nan object or array). type( json_value ), pointer :: element the element to insert after p private subroutine json_value_insert_after_child_by_index (json, p, idx, element) Inserts element after the idx -th child of p ,\nand updates the JSON structure accordingly. This is just\na wrapper for json_value_insert_after . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a JSON object or array. integer(kind=IK), intent(in) :: idx the index of the child of p to\ninsert the new element after\n(this is a 1-based Fortran\nstyle array index) type( json_value ), pointer :: element the element to insert procedure, public :: is_child_of => json_value_is_child_of Check if a json_value is a\ndescendant of another. private function json_value_is_child_of (json, p1, p2) result(is_child_of) Author Jacob Williams Date 4/28/2016 Returns True if p2 is a descendant of p1 (i.e, a child, or a child of child, etc.) Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p1 type( json_value ), pointer :: p2 Return Value logical(kind=LK) procedure, private :: is_vector => json_is_vector private function json_is_vector (json, p) result(is_vector) Returns true if all the children are the same type (and a scalar).\nNote that integers and reals are considered the same type for this purpose.\nThis routine is used for the compress_vectors option. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p Return Value logical(kind=LK) if all elements of a vector\nare scalars of the same type procedure, private :: json_add_integer_by_path private subroutine json_add_integer_by_path (json, me, path, value, found, was_created) Add an integer value to a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: json_add_integer_vec_by_path private subroutine json_add_integer_vec_by_path (json, me, path, value, found, was_created) Wrapper to json_add_integer_by_path for adding an integer vector by path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: json_add_logical_by_path private subroutine json_add_logical_by_path (json, me, path, value, found, was_created) Add a logical value to a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: json_add_logical_vec_by_path private subroutine json_add_logical_vec_by_path (json, me, path, value, found, was_created) Wrapper to json_add_logical_by_path for adding a logical vector by path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: json_add_member_by_path private subroutine json_add_member_by_path (json, me, path, p, found, was_created) Add a new member ( json_value pointer) to a JSON structure, given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(in), pointer :: p the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: json_add_real32_by_path private subroutine json_add_real32_by_path (json, me, path, value, found, was_created) Alternate version of json_add_real_by_path where value=real32. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: json_add_real32_vec_by_path private subroutine json_add_real32_vec_by_path (json, me, path, value, found, was_created) Wrapper to json_add_real_by_path for adding a real vector by path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: json_add_real_by_path private subroutine json_add_real_by_path (json, me, path, value, found, was_created) Add an real value to a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: json_add_real_vec_by_path private subroutine json_add_real_vec_by_path (json, me, path, value, found, was_created) Wrapper to json_add_real_by_path for adding a real vector by path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: json_add_string_by_path private subroutine json_add_string_by_path (json, me, path, value, found, was_created, trim_str, adjustl_str) Add a string value to a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element procedure, private :: json_add_string_by_path_path_ascii private subroutine json_add_string_by_path_path_ascii (json, me, path, value, found, was_created, trim_str, adjustl_str) Wrapper for json_add_string_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element procedure, private :: json_add_string_by_path_value_ascii private subroutine json_add_string_by_path_value_ascii (json, me, path, value, found, was_created, trim_str, adjustl_str) Wrapper for json_add_string_by_path where “value” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element procedure, private :: json_add_string_vec_by_path private subroutine json_add_string_vec_by_path (json, me, path, value, found, was_created, ilen, trim_str, adjustl_str) Wrapper to json_add_string_by_path for adding a string vector by path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element procedure, private :: json_add_string_vec_by_path_path_ascii private subroutine json_add_string_vec_by_path_path_ascii (json, me, path, value, found, was_created, ilen, trim_str, adjustl_str) Wrapper for json_add_string_vec_by_path where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element procedure, private :: json_add_string_vec_by_path_value_ascii private subroutine json_add_string_vec_by_path_value_ascii (json, me, path, value, found, was_created, ilen, trim_str, adjustl_str) Wrapper for json_add_string_vec_by_path where “value” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element procedure, private :: json_create_by_path private subroutine json_create_by_path (json, me, path, p, found, was_created) Returns the json_value pointer given the path string,\n If necessary, by creating the variables as needed. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable type( json_value ), intent(out), optional, pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if there were no errors\n(variable found or created) logical(kind=LK), intent(out), optional :: was_created true if it was actually created\n(as opposed to already being there) procedure, private :: json_get_alloc_string_vec private subroutine json_get_alloc_string_vec (json, me, vec, ilen) Author Jacob Williams Date 12/16/2016 Get a string vector from a json_value . This is an alternate\n version of json_get_string_vec . This one returns an allocatable\n length character (where the string length is the maximum length of\n any element in the array). It also returns an integer array of the\n actual sizes of the strings in the JSON structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array procedure, private :: json_get_alloc_string_vec_by_path private subroutine json_get_alloc_string_vec_by_path (json, me, path, vec, ilen, found, default, default_ilen) Alternate version of json_get_alloc_string_vec where input is the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default integer(kind=IK), intent(in), optional, dimension(:) :: default_ilen the actual\nlength of default procedure, private :: json_get_array private recursive subroutine json_get_array (json, me, array_callback) This routine calls the user-supplied json_array_callback_func subroutine for each element in the array. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me procedure( json_array_callback_func ) :: array_callback procedure, private :: json_get_array_by_path private recursive subroutine json_get_array_by_path (json, me, path, array_callback, found) This routine calls the user-supplied array_callback subroutine\nfor each element in the array (specified by the path). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path procedure( json_array_callback_func ) :: array_callback logical(kind=LK), intent(out), optional :: found procedure, private :: json_get_by_path private subroutine json_get_by_path (json, me, path, p, found) Returns the json_value pointer given the path string. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable type( json_value ), intent(out), pointer :: p pointer to the variable\nspecified by path logical(kind=LK), intent(out), optional :: found true if it was found procedure, private :: json_get_by_path_default private subroutine json_get_by_path_default (json, me, path, p, found, create_it, was_created) Returns the json_value pointer given the path string. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable type( json_value ), intent(out), pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if it was found logical(kind=LK), intent(in), optional :: create_it if a variable is not present\nin the path, then it is created.\nthe leaf node is returned as\na null json type and can be\nchanged by the caller. logical(kind=LK), intent(out), optional :: was_created if create_it is true, this\nwill be true if the variable\nwas actually created. Otherwise\nit will be false. procedure, private :: json_get_by_path_jsonpath_bracket private subroutine json_get_by_path_jsonpath_bracket (json, me, path, p, found, create_it, was_created) Author Jacob Williams Date 9/2/2017 Returns the json_value pointer given the path string,\n using the “ JSON Pointer” path specification defined by the\n JSONPath “bracket-notation”. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable\n(using JSONPath\n“bracket-notation”) type( json_value ), intent(out), pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if it was found logical(kind=LK), intent(in), optional :: create_it if a variable is not present\nin the path, then it is created.\nthe leaf node is returned as\na null json type and can be\nchanged by the caller. logical(kind=LK), intent(out), optional :: was_created if create_it is true, this\nwill be true if the variable\nwas actually created. Otherwise\nit will be false. procedure, private :: json_get_by_path_rfc6901 private subroutine json_get_by_path_rfc6901 (json, me, path, p, found) Author Jacob Williams Date 2/4/2017 Returns the json_value pointer given the path string,\n using the “ JSON Pointer” path specification defined by RFC 6901. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable\n(an RFC 6901 “ JSON Pointer”) type( json_value ), intent(out), pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if it was found procedure, private :: json_get_integer private subroutine json_get_integer (json, me, value) Get an integer value from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me integer(kind=IK), intent(out) :: value the integer value procedure, private :: json_get_integer_by_path private subroutine json_get_integer_by_path (json, me, path, value, found, default) Get an integer value from a json_value , given the path string. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path integer(kind=IK), intent(out) :: value logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(in), optional :: default default value if not found procedure, private :: json_get_integer_vec private subroutine json_get_integer_vec (json, me, vec) Author Jacob Williams Date 5/14/2014 Get an integer vector from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me integer(kind=IK), intent(out), dimension(:), allocatable :: vec procedure, private :: json_get_integer_vec_by_path private subroutine json_get_integer_vec_by_path (json, me, path, vec, found, default) Get an integer vector from a json_value , given the path string. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path integer(kind=IK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(in), optional, dimension(:) :: default default value if not found procedure, private :: json_get_logical private subroutine json_get_logical (json, me, value) Get a logical value from a json_value . Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me logical(kind=LK), intent(out) :: value procedure, private :: json_get_logical_by_path private subroutine json_get_logical_by_path (json, me, path, value, found, default) Get a logical value from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path logical(kind=LK), intent(out) :: value logical(kind=LK), intent(out), optional :: found logical(kind=LK), intent(in), optional :: default default value if not found procedure, private :: json_get_logical_vec private subroutine json_get_logical_vec (json, me, vec) Author Jacob Williams Date 5/14/2014 Get a logical vector from json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me logical(kind=LK), intent(out), dimension(:), allocatable :: vec procedure, private :: json_get_logical_vec_by_path private subroutine json_get_logical_vec_by_path (json, me, path, vec, found, default) Get a logical vector from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path logical(kind=LK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found logical(kind=LK), intent(in), optional, dimension(:) :: default procedure, private :: json_get_path private subroutine json_get_path (json, p, path, found, use_alt_array_tokens, path_sep) Returns the path to a JSON object that is part\n of a linked list structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list object character(kind=CK, len=:), intent(out), allocatable :: path path to the variable logical(kind=LK), intent(out), optional :: found true if there were no problems logical(kind=LK), intent(in), optional :: use_alt_array_tokens if true, then ‘()’ are used for array elements\notherwise, ‘[]’ are used [default]\n(only used if path_mode=1 ) character(kind=CK, len=1), intent(in), optional :: path_sep character to use for path separator\n(otherwise use json%path_separator )\n(only used if path_mode=1 ) procedure, private :: json_get_real private subroutine json_get_real (json, me, value) Get a real value from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me real(kind=RK), intent(out) :: value procedure, private :: json_get_real32 private subroutine json_get_real32 (json, me, value) Alternate version of json_get_real where value=real32. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me real(kind=real32), intent(out) :: value procedure, private :: json_get_real32_by_path private subroutine json_get_real32_by_path (json, me, path, value, found, default) Alternate version of json_get_real_by_path where value=real32. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CK, len=*), intent(in) :: path real(kind=real32), intent(out) :: value logical(kind=LK), intent(out), optional :: found real(kind=real32), intent(in), optional :: default default value if not found procedure, private :: json_get_real32_vec private subroutine json_get_real32_vec (json, me, vec) Alternate version of json_get_real_vec where vec is real32 . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me real(kind=real32), intent(out), dimension(:), allocatable :: vec procedure, private :: json_get_real32_vec_by_path private subroutine json_get_real32_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_real_vec_by_path where vec is real32 . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path real(kind=real32), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found real(kind=real32), intent(in), optional, dimension(:) :: default default value if not found procedure, private :: json_get_real_by_path private subroutine json_get_real_by_path (json, me, path, value, found, default) Get a real value from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CK, len=*), intent(in) :: path real(kind=RK), intent(out) :: value logical(kind=LK), intent(out), optional :: found real(kind=RK), intent(in), optional :: default default value if not found procedure, private :: json_get_real_vec private subroutine json_get_real_vec (json, me, vec) Author Jacob Williams Date 5/14/2014 Get a real vector from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me real(kind=RK), intent(out), dimension(:), allocatable :: vec procedure, private :: json_get_real_vec_by_path private subroutine json_get_real_vec_by_path (json, me, path, vec, found, default) Get a real vector from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path real(kind=RK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found real(kind=RK), intent(in), optional, dimension(:) :: default default value if not found procedure, private :: json_get_string private subroutine json_get_string (json, me, value) Get a character string from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=:), intent(out), allocatable :: value procedure, private :: json_get_string_by_path private subroutine json_get_string_by_path (json, me, path, value, found, default) Get a character string from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path character(kind=CK, len=:), intent(out), allocatable :: value logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional :: default procedure, private :: json_get_string_vec private subroutine json_get_string_vec (json, me, vec) Author Jacob Williams Date 5/14/2014 Get a string vector from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec procedure, private :: json_get_string_vec_by_path private subroutine json_get_string_vec_by_path (json, me, path, vec, found, default) Get a string vector from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default procedure, private :: json_info private subroutine json_info (json, p, var_type, n_children, name) Author Jacob Williams Date 2/13/2014 Returns information about a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(out), optional :: var_type variable type integer(kind=IK), intent(out), optional :: n_children number of children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name procedure, private :: json_info_by_path private subroutine json_info_by_path (json, p, path, found, var_type, n_children, name) Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable logical(kind=LK), intent(out), optional :: found true if it was found integer(kind=IK), intent(out), optional :: var_type variable type integer(kind=IK), intent(out), optional :: n_children number of children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name procedure, private :: json_matrix_info private subroutine json_matrix_info (json, p, is_matrix, var_type, n_sets, set_size, name) Author Jacob Williams Date 10/16/2015 Alternate version of json_info that returns matrix\n information about a json_value . Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a JSON linked list logical(kind=LK), intent(out) :: is_matrix true if it is a valid matrix integer(kind=IK), intent(out), optional :: var_type variable type of data in the matrix\n(if all elements have the same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name procedure, private :: json_matrix_info_by_path private subroutine json_matrix_info_by_path (json, p, path, is_matrix, found, var_type, n_sets, set_size, name) Returns matrix information about a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a JSON linked list character(kind=CK, 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\nthe matrix (if all elements have\nthe same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name procedure, private :: json_parse_file private subroutine json_parse_file (json, file, p, unit) Parse the JSON file and populate the json_value tree. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CDK, len=*), intent(in) :: file JSON file name type( json_value ), pointer :: p output structure integer(kind=IK), intent(in), optional :: unit file unit number (/= 0) procedure, private :: json_parse_string private subroutine json_parse_string (json, p, str) Parse the JSON string and populate the json_value tree. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p output structure character(kind=CK, len=*), intent(in) :: str string with JSON data procedure, private :: json_print_to_console private subroutine json_print_to_console (json, p) Print the json_value structure to the console ( output_unit ). Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p procedure, private :: json_print_to_filename private subroutine json_print_to_filename (json, p, filename) Author Jacob Williams Date 12/23/2014 Print the json_value structure to a file. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CDK, len=*), intent(in) :: filename the filename to print to\n(should not already be open) procedure, private :: json_print_to_unit private subroutine json_print_to_unit (json, p, iunit) Author Jacob Williams Date 6/20/2014 Print the json_value structure to a file. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p integer(kind=IK), intent(in) :: iunit the file unit (the file must\nalready have been opened, can’t be -1). procedure, private :: json_rename_by_path private subroutine json_rename_by_path (json, me, path, name, found) Rename a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path path to the variable to rename character(kind=CK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if there were no errors procedure, private :: json_rename_by_path_name_ascii private subroutine json_rename_by_path_name_ascii (json, me, path, name, found) Alternate version of json_rename_by_path , where “name” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path character(kind=CDK, len=*), intent(in) :: name logical(kind=LK), intent(out), optional :: found procedure, private :: json_rename_by_path_path_ascii private subroutine json_rename_by_path_path_ascii (json, me, path, name, found) Alternate version of json_rename_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=*), intent(in) :: name logical(kind=LK), intent(out), optional :: found procedure, private :: json_string_info private subroutine json_string_info (json, p, ilen, max_str_len, found) Author Jacob Williams Date 12/18/2016 Returns information about character strings returned from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(out), optional, dimension(:), allocatable :: ilen if p is an array, this\nis the actual length\nof each character\nstring in the array.\nif not an array, this\nis returned unallocated. integer(kind=IK), intent(out), optional :: max_str_len The maximum length required to\nhold the string representation returned\nby a call to a get routine. If a scalar,\nthis is just the length of the scalar. If\na vector, this is the maximum length of\nany element. logical(kind=LK), intent(out), optional :: found true if there were no errors.\nif not present, an error will\nthrow an exception procedure, private :: json_throw_exception private subroutine json_throw_exception (json, msg, found) Author Jacob Williams Date 12/4/2013 Throw an exception in the json_core .\n This routine sets the error flag, and prevents any subsequent routine\n from doing anything, until json_clear_exceptions is called. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CK, len=*), intent(in) :: msg the error message logical(kind=LK), intent(inout), optional :: found if the caller is handling the\nexception with an optimal return\nargument. If so, json%stop_on_error is ignored. procedure, private :: json_update_integer private subroutine json_update_integer (json, p, path, val, found) Author Jacob Williams Date 12/6/2014 Given the path string, if the variable is present,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure integer(kind=IK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. procedure, private :: json_update_logical private subroutine json_update_logical (json, p, path, val, found) Author Jacob Williams Date 12/6/2014 Given the path string, if the variable is present,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure logical(kind=LK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. procedure, private :: json_update_real private subroutine json_update_real (json, p, path, val, found) Author Jacob Williams Date 12/6/2014 Given the path string, if the variable is present,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure real(kind=RK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. procedure, private :: json_update_real32 private subroutine json_update_real32 (json, p, path, val, found) Alternate version of json_update_real , where val is real32 . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure real(kind=real32), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. procedure, private :: json_update_string private subroutine json_update_string (json, p, path, val, found, trim_str, adjustl_str) Author Jacob Williams Date 12/6/2014 Given the path string, if the variable is present,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure character(kind=CK, len=*), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) procedure, private :: json_update_string_name_ascii private subroutine json_update_string_name_ascii (json, p, path, val, found, trim_str, adjustl_str) Alternate version of json_update_string , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure character(kind=CK, len=*), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) procedure, private :: json_update_string_val_ascii private subroutine json_update_string_val_ascii (json, p, path, val, found, trim_str, adjustl_str) Alternate version of json_update_string , where val is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure character(kind=CDK, len=*), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) procedure, private :: json_valid_path private function json_valid_path (json, p, path) result(found) Returns true if the path is present in the p JSON structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable Return Value logical(kind=LK) true if it was found procedure, private :: json_value_add_integer private subroutine json_value_add_integer (json, p, name, val) Author Jacob Williams Date 1/20/2014 Add an integer value child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name integer(kind=IK), intent(in) :: val procedure, private :: json_value_add_integer_vec private subroutine json_value_add_integer_vec (json, p, name, val) Author Jacob Williams Date 1/20/2014 Add a integer vector child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the variable integer(kind=IK), intent(in), dimension(:) :: val value procedure, private :: json_value_add_logical private subroutine json_value_add_logical (json, p, name, val) Author Jacob Williams Date 1/20/2014 Add a logical value child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the variable logical(kind=LK), intent(in) :: val value procedure, private :: json_value_add_logical_vec private subroutine json_value_add_logical_vec (json, p, name, val) Author Jacob Williams Date 1/20/2014 Add a logical vector child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the vector logical(kind=LK), intent(in), dimension(:) :: val value procedure, private :: json_value_add_member private subroutine json_value_add_member (json, p, member) Adds member as a child of p . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p p must be a json_object or a json_array type( json_value ), pointer :: member the child member\nto add to p procedure, private :: json_value_add_null private subroutine json_value_add_null (json, p, name) Add a NULL value child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name procedure, private :: json_value_add_real private subroutine json_value_add_real (json, p, name, val) Author Jacob Williams Date 1/19/2014 Add a real value child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name variable name real(kind=RK), intent(in) :: val real value procedure, private :: json_value_add_real32 private subroutine json_value_add_real32 (json, p, name, val) Alternate version of json_value_add_real where val is real32 . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name variable name real(kind=real32), intent(in) :: val real value procedure, private :: json_value_add_real32_vec private subroutine json_value_add_real32_vec (json, p, name, val) Alternate version of json_value_add_real_vec where val is real32 . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name real(kind=real32), intent(in), dimension(:) :: val procedure, private :: json_value_add_real_vec private subroutine json_value_add_real_vec (json, p, name, val) Author Jacob Williams Date 1/20/2014 Add a real vector child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name real(kind=RK), intent(in), dimension(:) :: val procedure, private :: json_value_add_string private subroutine json_value_add_string (json, p, name, val, trim_str, adjustl_str) Author Jacob Williams Date 1/19/2014 Add a character string child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the variable character(kind=CK, len=*), intent(in) :: val value logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val procedure, private :: json_value_add_string_name_ascii private subroutine json_value_add_string_name_ascii (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable character(kind=CK, len=*), intent(in) :: val value logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val procedure, private :: json_value_add_string_val_ascii private subroutine json_value_add_string_val_ascii (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string where val is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the variable character(kind=CDK, len=*), intent(in) :: val value logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val procedure, private :: json_value_add_string_vec private subroutine json_value_add_string_vec (json, p, name, val, trim_str, adjustl_str) Author Jacob Williams Date 1/19/2014 Add a character string vector child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name variable name character(kind=CK, len=*), intent(in), dimension(:) :: val array of strings logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element procedure, private :: json_value_add_string_vec_name_ascii private subroutine json_value_add_string_vec_name_ascii (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string_vec where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name character(kind=CK, len=*), intent(in), dimension(:) :: val logical(kind=LK), intent(in), optional :: trim_str logical(kind=LK), intent(in), optional :: adjustl_str procedure, private :: json_value_add_string_vec_val_ascii private subroutine json_value_add_string_vec_val_ascii (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string_vec where val is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name character(kind=CDK, len=*), intent(in), dimension(:) :: val logical(kind=LK), intent(in), optional :: trim_str logical(kind=LK), intent(in), optional :: adjustl_str procedure, private, nopass :: json_value_clone_func private recursive subroutine json_value_clone_func (from, to, parent, previous, tail) Author Jacob Williams Date 10/31/2015 Recursive deep copy function called by json_clone . Read more… Arguments Type Intent Optional Attributes Name type( json_value ), pointer :: from this is the structure to clone type( json_value ), pointer :: to the clone is put here (it\nmust not already be associated) type( json_value ), optional, pointer :: parent to%parent type( json_value ), optional, pointer :: previous to%previous logical, optional :: tail if “to” is the tail of\nits parent’s children procedure, private :: json_value_create_array private subroutine json_value_create_array (json, p, name) Author Jacob Williams Allocate a json_value pointer and make it an array variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name procedure, private :: json_value_create_integer private subroutine json_value_create_integer (json, p, val, name) Author Jacob Williams Allocate a json_value pointer and make it an integer(IK) variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(in) :: val character(kind=CK, len=*), intent(in) :: name procedure, private :: json_value_create_logical private subroutine json_value_create_logical (json, p, val, name) Author Jacob Williams Allocate a json_value pointer and make it a logical(LK) variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p logical(kind=LK), intent(in) :: val variable value character(kind=CK, len=*), intent(in) :: name variable name procedure, private :: json_value_create_null private subroutine json_value_create_null (json, p, name) Author Jacob Williams Allocate a json_value pointer and make it a null variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name procedure, private :: json_value_create_object private subroutine json_value_create_object (json, p, name) Author Jacob Williams Allocate a json_value pointer and make it an object variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name procedure, private :: json_value_create_real private subroutine json_value_create_real (json, p, val, name) Author Jacob Williams Allocate a json_value pointer and make it a real(RK) variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=RK), intent(in) :: val character(kind=CK, len=*), intent(in) :: name procedure, private :: json_value_create_real32 private subroutine json_value_create_real32 (json, p, val, name) Alternate version of json_value_create_real where val=real32. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=real32), intent(in) :: val character(kind=CK, len=*), intent(in) :: name procedure, private :: json_value_create_string private subroutine json_value_create_string (json, p, val, name, trim_str, adjustl_str) Author Jacob Williams Allocate a json_value pointer and make it a string variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: val character(kind=CK, len=*), intent(in) :: name logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val procedure, private :: json_value_destroy private pure recursive subroutine json_value_destroy (json, p, destroy_next) Author Jacob Williams Date 1/22/2014 Destroy a json_value linked-list structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p variable to destroy logical(kind=LK), intent(in), optional :: destroy_next if true, then p%next is also destroyed (default is true) procedure, private :: json_value_get_child private subroutine json_value_get_child (json, p, child) Returns pointer to the first child of the object\n(or null() if it is not associated). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p object or array JSON data type( json_value ), pointer :: child pointer to the child procedure, private :: json_value_get_child_by_index private subroutine json_value_get_child_by_index (json, p, idx, child, found) Returns a child in the object or array given the index. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p object or array JSON data integer(kind=IK), intent(in) :: idx index of the child\n(this is a 1-based Fortran\nstyle array index). type( json_value ), pointer :: child pointer to the child logical(kind=LK), intent(out), optional :: found true if the value was found\n(if not present, an exception\nwill be thrown if it was not\nfound. If present and not\nfound, no exception will be\nthrown). procedure, private :: json_value_get_child_by_name private subroutine json_value_get_child_by_name (json, p, name, child, found) Returns a child in the object or array given the name string. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CK, len=*), intent(in) :: name the name of a child of p type( json_value ), pointer :: child pointer to the child logical(kind=LK), intent(out), optional :: found true if the value was found\n(if not present, an exception\nwill be thrown if it was not\nfound. If present and not\nfound, no exception will be\nthrown). procedure, private :: json_value_insert_after private subroutine json_value_insert_after (json, p, element) Inserts element after p , and updates the JSON structure accordingly. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a value from a JSON structure\n(presumably, this is a child of\nan object or array). type( json_value ), pointer :: element the element to insert after p procedure, private :: json_value_insert_after_child_by_index private subroutine json_value_insert_after_child_by_index (json, p, idx, element) Inserts element after the idx -th child of p ,\nand updates the JSON structure accordingly. This is just\na wrapper for json_value_insert_after . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a JSON object or array. integer(kind=IK), intent(in) :: idx the index of the child of p to\ninsert the new element after\n(this is a 1-based Fortran\nstyle array index) type( json_value ), pointer :: element the element to insert procedure, private :: json_value_print private recursive subroutine json_value_print (json, p, iunit, str, indent, need_comma, colon, is_array_element, is_compressed_vector, iloc) Print the JSON structure to a string or a file. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p integer(kind=IK), intent(in) :: iunit file unit to write to (the\nfile is assumed to be open) character(kind=CK, len=:), intent(inout), allocatable :: str if iunit==unit2str (-1) then\nthe structure is printed to this\nstring rather than a file. This mode\nis used by json_value_to_string . integer(kind=IK), intent(in), optional :: indent indention level logical(kind=LK), intent(in), optional :: need_comma if it needs a comma after it logical(kind=LK), intent(in), optional :: colon if the colon was just written logical(kind=LK), intent(in), optional :: is_array_element if this is an array element logical(kind=LK), intent(in), optional :: is_compressed_vector if True, this is an element\nfrom an array being printed\non one line [default is False] integer(kind=IK), intent(inout) :: iloc current index in str . should be set to 0 initially.\n[only used when str is used.] procedure, private :: json_value_remove_if_present private subroutine json_value_remove_if_present (json, p, path) Author Jacob Williams Date 12/6/2014 Given the path string, remove the variable\nfrom json_value , if it exists. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path the path to the variable to remove procedure, private :: json_value_rename private subroutine json_value_rename (json, p, name) Author Jacob Williams Date 4/29/2016 Rename a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CK, len=*), intent(in) :: name new variable name generic, public :: load => json_parse_file Parse the JSON file and populate the json_value tree. private subroutine json_parse_file (json, file, p, unit) Parse the JSON file and populate the json_value tree. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CDK, len=*), intent(in) :: file JSON file name type( json_value ), pointer :: p output structure integer(kind=IK), intent(in), optional :: unit file unit number (/= 0) generic, public :: matrix_info => json_matrix_info , json_matrix_info_by_path , wrap_json_matrix_info_by_path get matrix info about a json_value private subroutine json_matrix_info (json, p, is_matrix, var_type, n_sets, set_size, name) Author Jacob Williams Date 10/16/2015 Alternate version of json_info that returns matrix\n information about a json_value . Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a JSON linked list logical(kind=LK), intent(out) :: is_matrix true if it is a valid matrix integer(kind=IK), intent(out), optional :: var_type variable type of data in the matrix\n(if all elements have the same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name private subroutine json_matrix_info_by_path (json, p, path, is_matrix, found, var_type, n_sets, set_size, name) Returns matrix information about a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a JSON linked list character(kind=CK, 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\nthe matrix (if all elements have\nthe same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name private subroutine wrap_json_matrix_info_by_path (json, p, path, is_matrix, found, var_type, n_sets, set_size, name) Alternate version of json_matrix_info_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a JSON linked list 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\nthe matrix (if all elements have\nthe same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name procedure, private :: name_equal private function name_equal (json, p, name) result(is_equal) Author Jacob Williams Returns true if name is equal to p%name , using the specified\n settings for case sensitivity and trailing whitespace. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in) :: p the json object character(kind=CK, len=*), intent(in) :: name the name to check for Return Value logical(kind=LK) true if the string are\nlexically equal procedure, private :: name_strings_equal private function name_strings_equal (json, name1, name2) result(is_equal) Author Jacob Williams Date 8/25/2017 Returns true if the name strings name1 is equal to name2 , using\nthe specified settings for case sensitivity and trailing whitespace. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CK, len=*), intent(in) :: name1 the name to check character(kind=CK, len=*), intent(in) :: name2 the name to check Return Value logical(kind=LK) true if the string are\nlexically equal generic, public :: parse => json_parse_file , json_parse_string , wrap_json_parse_string Same as load and deserialize but only here for backward compatibility. private subroutine json_parse_file (json, file, p, unit) Parse the JSON file and populate the json_value tree. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CDK, len=*), intent(in) :: file JSON file name type( json_value ), pointer :: p output structure integer(kind=IK), intent(in), optional :: unit file unit number (/= 0) private subroutine json_parse_string (json, p, str) Parse the JSON string and populate the json_value tree. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p output structure character(kind=CK, len=*), intent(in) :: str string with JSON data private subroutine wrap_json_parse_string (json, p, str) Alternate version of json_parse_string , where str is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p output structure character(kind=CDK, len=*), intent(in) :: str string with JSON data procedure, private :: parse_array private recursive subroutine parse_array (json, unit, str, array) Core parsing routine. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if parsing from a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing from a string) type( json_value ), pointer :: array procedure, private :: parse_end => json_parse_end private subroutine json_parse_end (json, unit, str) An error checking routine to call after a file (or string) has been parsed.\nIt will throw an exception if there are any other non-whitespace characters\nin the file. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number character(kind=CK, len=*), intent(in) :: str string containing JSON data (only used if unit=0 ) procedure, private :: parse_for_chars private subroutine parse_for_chars (json, unit, str, chars) Core parsing routine. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if parsing from a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing from a string) character(kind=CK, len=*), intent(in) :: chars the string to check for. procedure, private :: parse_number private subroutine parse_number (json, unit, str, value) Author Jacob Williams Date 1/20/2014 Read a numerical value from the file (or string).\n The routine will determine if it is an integer or a real, and\n allocate the type accordingly. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if parsing from a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing from a string) type( json_value ), pointer :: value procedure, private :: parse_object private recursive subroutine parse_object (json, unit, str, parent, expecting_next_element) Core parsing routine. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if parsing from a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing from a string) type( json_value ), pointer :: parent the parsed object will be added as a child of this logical(kind=LK), intent(in) :: expecting_next_element if true, this object is preceeded by a comma, so\nwe expect a valid object to exist. used to check\nfor trailing delimiters. procedure, private :: parse_string private subroutine parse_string (json, unit, str, string) Parses a string while reading a JSON file. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if\nparsing from a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing\nfrom a string) character(kind=CK, len=:), intent(out), allocatable :: string the string (unescaped\nif necessary) procedure, private :: parse_value private recursive subroutine parse_value (json, unit, str, value) Core parsing routine. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number character(kind=CK, len=*), intent(in) :: str string containing JSON data (only used if unit=0 ) type( json_value ), pointer :: value JSON data that is extracted procedure, private :: pop_char private subroutine pop_char (json, unit, str, skip_ws, skip_comments, eof, popped) Get the next character from the file (or string). Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if parsing\nfrom a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing from a\nstring) – only used if unit=0 logical(kind=LK), intent(in), optional :: skip_ws to ignore whitespace [default False] logical(kind=LK), intent(in), optional :: skip_comments to ignore comment lines [default False] logical(kind=LK), intent(out) :: eof true if the end of the file has\nbeen reached. character(kind=CK, len=1), intent(out) :: popped the popped character returned procedure, private :: prepare_parser => json_prepare_parser private subroutine json_prepare_parser (json) Internal routine to be called before parsing JSON .\nCurrently, all this does it allocate the comment_char if none was specified. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json generic, public :: print => json_print_to_console , json_print_to_unit , json_print_to_filename Print the json_value to an output unit or file. Example type ( json_core ) :: json type ( json_value ) :: p !... call json % print ( p , 'test.json' ) !this is [[json_print_to_filename]] private subroutine json_print_to_console (json, p) Print the json_value structure to the console ( output_unit ). Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p private subroutine json_print_to_unit (json, p, iunit) Author Jacob Williams Date 6/20/2014 Print the json_value structure to a file. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p integer(kind=IK), intent(in) :: iunit the file unit (the file must\nalready have been opened, can’t be -1). private subroutine json_print_to_filename (json, p, filename) Author Jacob Williams Date 12/23/2014 Print the json_value structure to a file. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CDK, len=*), intent(in) :: filename the filename to print to\n(should not already be open) procedure, public :: print_error_message => json_print_error_message simply routine to print error\nmessages private subroutine json_print_error_message (json, io_unit) Author Jacob Williams Print any error message, and then clear the exceptions. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer, intent(in), optional :: io_unit unit number for\nprinting error message procedure, public :: print_to_string => json_value_to_string The same as serialize , but only here for backward compatibility private subroutine json_value_to_string (json, p, str) Author Jacob Williams Date 2/12/2014 Print the json_value structure to an allocatable string. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CK, len=:), intent(out), allocatable :: str prints structure to this string procedure, private :: push_char private subroutine push_char (json, c) Core routine. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CK, len=1), intent(in) :: c to character to push procedure, public :: remove => json_value_remove Remove a json_value from a\nlinked-list structure. private subroutine json_value_remove (json, p, destroy) Author Jacob Williams Date 9/9/2014 Remove a json_value (and all its children)\n from a linked-list structure, preserving the rest of the structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p logical(kind=LK), intent(in), optional :: destroy Option to destroy p after it is removed: Read more… generic, public :: remove_if_present => json_value_remove_if_present , wrap_json_value_remove_if_present If the child variable is present, then remove it. private subroutine json_value_remove_if_present (json, p, path) Author Jacob Williams Date 12/6/2014 Given the path string, remove the variable\nfrom json_value , if it exists. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path the path to the variable to remove private subroutine wrap_json_value_remove_if_present (json, p, path) Alternate version of json_value_remove_if_present , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path generic, public :: rename => json_value_rename , wrap_json_value_rename , json_rename_by_path , wrap_json_rename_by_path Rename a json_value variable. private subroutine json_value_rename (json, p, name) Author Jacob Williams Date 4/29/2016 Rename a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CK, len=*), intent(in) :: name new variable name private subroutine wrap_json_value_rename (json, p, name) Author Jacob Williams Date 4/29/2016 Alternate version of json_value_rename , where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CDK, len=*), intent(in) :: name new variable name private subroutine json_rename_by_path (json, me, path, name, found) Rename a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path path to the variable to rename character(kind=CK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if there were no errors private subroutine wrap_json_rename_by_path (json, me, path, name, found) Alternate version of json_rename_by_path , where “path” and “name” are kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CDK, len=*), intent(in) :: name logical(kind=LK), intent(out), optional :: found generic, public :: rename => json_rename_by_path_name_ascii , json_rename_by_path_path_ascii private subroutine json_rename_by_path_name_ascii (json, me, path, name, found) Alternate version of json_rename_by_path , where “name” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path character(kind=CDK, len=*), intent(in) :: name logical(kind=LK), intent(out), optional :: found private subroutine json_rename_by_path_path_ascii (json, me, path, name, found) Alternate version of json_rename_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=*), intent(in) :: name logical(kind=LK), intent(out), optional :: found procedure, public :: replace => json_value_replace Replace a json_value in a\nlinked-list structure. private subroutine json_value_replace (json, p1, p2, destroy) Replace p1 with p2 in a JSON structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p1 the item to replace type( json_value ), pointer :: p2 item to take the place of p1 logical(kind=LK), intent(in), optional :: destroy Should p1 also be destroyed\n(default is True). Normally,\nthis should be true to avoid\na memory leak. procedure, public :: reverse => json_value_reverse Reverse the order of the children\nof an array of object. private subroutine json_value_reverse (json, p) Author Jacob Williams Date 4/11/2017 Reverse the order of the children of an array or object. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p procedure, public :: serialize => json_value_to_string Print the json_value structure to an allocatable string private subroutine json_value_to_string (json, p, str) Author Jacob Williams Date 2/12/2014 Print the json_value structure to an allocatable string. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CK, len=:), intent(out), allocatable :: str prints structure to this string generic, public :: string_info => json_string_info get string info about a json_value private subroutine json_string_info (json, p, ilen, max_str_len, found) Author Jacob Williams Date 12/18/2016 Returns information about character strings returned from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(out), optional, dimension(:), allocatable :: ilen if p is an array, this\nis the actual length\nof each character\nstring in the array.\nif not an array, this\nis returned unallocated. integer(kind=IK), intent(out), optional :: max_str_len The maximum length required to\nhold the string representation returned\nby a call to a get routine. If a scalar,\nthis is just the length of the scalar. If\na vector, this is the maximum length of\nany element. logical(kind=LK), intent(out), optional :: found true if there were no errors.\nif not present, an error will\nthrow an exception procedure, private :: string_to_dble private function string_to_dble (json, str) result(rval) Convert a string into a real(RK) value. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CK, len=*), intent(in) :: str a string Return Value real(kind=RK) str converted to a real(RK) procedure, private :: string_to_int private function string_to_int (json, str) result(ival) Convert a string into an integer. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CK, len=*), intent(in) :: str a string Return Value integer(kind=IK) str converted to an integer procedure, public :: swap => json_value_swap Swap two json_value pointers\nin a structure (or two different\nstructures). private subroutine json_value_swap (json, p1, p2) Author Jacob Williams Date 4/26/2016 Swap two elements in a JSON structure.\n All of the children are carried along as well. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p1 swap with p2 type( json_value ), pointer :: p2 swap with p1 generic, public :: throw_exception => json_throw_exception , wrap_json_throw_exception Throw an exception. private subroutine json_throw_exception (json, msg, found) Author Jacob Williams Date 12/4/2013 Throw an exception in the json_core .\n This routine sets the error flag, and prevents any subsequent routine\n from doing anything, until json_clear_exceptions is called. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CK, len=*), intent(in) :: msg the error message logical(kind=LK), intent(inout), optional :: found if the caller is handling the\nexception with an optimal return\nargument. If so, json%stop_on_error is ignored. private subroutine wrap_json_throw_exception (json, msg, found) Alternate version of json_throw_exception , where msg is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CDK, len=*), intent(in) :: msg the error message logical(kind=LK), intent(inout), optional :: found if the caller is handling the\nexception with an optimal return\nargument. If so, json%stop_on_error is ignored. procedure, private :: to_array private subroutine to_array (json, p, name) Author Jacob Williams Change the json_value variable to an array. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. procedure, private :: to_integer private subroutine to_integer (json, p, val, name) Author Jacob Williams Change the json_value variable to an integer. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(in), optional :: val if the value is also to be set\n(if not present, then 0 is used). character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. procedure, private :: to_logical private subroutine to_logical (json, p, val, name) Author Jacob Williams Change the json_value variable to a logical. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p logical(kind=LK), intent(in), optional :: val if the value is also to be set\n(if not present, then .false. is used). character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. procedure, private :: to_null private subroutine to_null (json, p, name) Author Jacob Williams Change the json_value variable to a null. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. procedure, private :: to_object private subroutine to_object (json, p, name) Author Jacob Williams Change the json_value variable to an object. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. procedure, private :: to_real private subroutine to_real (json, p, val, name) Author Jacob Williams Change the json_value variable to a real. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=RK), intent(in), optional :: val if the value is also to be set\n(if not present, then 0.0_rk is used). character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. procedure, private :: to_string private subroutine to_string (json, p, val, name, trim_str, adjustl_str) Author Jacob Williams Change the json_value variable to a string. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in), optional :: val if the value is also to be set\n(if not present, then ‘’ is used). character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) procedure, public :: traverse => json_traverse to traverse all elements of a JSON structure private subroutine json_traverse (json, p, traverse_callback) Author Jacob Williams Date 4/28/2016 Traverse a JSON structure.\nThis routine calls the user-specified json_traverse_callback_func for each element of the structure. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p procedure( json_traverse_callback_func ) :: traverse_callback generic, public :: update => json_update_logical , wrap_json_update_logical , json_update_real32 , wrap_json_update_real32 , json_update_real , wrap_json_update_real , json_update_integer , wrap_json_update_integer , json_update_string , wrap_json_update_string These are like the add methods, except if a variable with the\n same path is already present, then its value is simply updated.\n Note that currently, these only work for scalar variables.\n These routines can also change the variable’s type (but an error will be\n thrown if the existing variable is not a scalar). See also add_by_path - this one can be used to change\n arrays and objects to scalars if so desired. Note Unlike some routines, the found output is not optional,\n so it doesn’t present exceptions from being thrown. Note These have been mostly supplanted by the add_by_path methods, which do a similar thing (and can be used for\n scalars and vectors, etc.) private subroutine json_update_logical (json, p, path, val, found) Author Jacob Williams Date 12/6/2014 Given the path string, if the variable is present,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure logical(kind=LK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. private subroutine wrap_json_update_logical (json, p, path, val, found) Alternate version of json_update_logical , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure logical(kind=LK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. private subroutine json_update_real32 (json, p, path, val, found) Alternate version of json_update_real , where val is real32 . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure real(kind=real32), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. private subroutine wrap_json_update_real32 (json, p, path, val, found) Alternate version of json_update_real32 , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure real(kind=real32), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. private subroutine json_update_real (json, p, path, val, found) Author Jacob Williams Date 12/6/2014 Given the path string, if the variable is present,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure real(kind=RK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. private subroutine wrap_json_update_real (json, p, path, val, found) Alternate version of json_update_real , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure real(kind=RK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. private subroutine json_update_integer (json, p, path, val, found) Author Jacob Williams Date 12/6/2014 Given the path string, if the variable is present,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure integer(kind=IK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. private subroutine wrap_json_update_integer (json, p, path, val, found) Alternate version of json_update_integer , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure integer(kind=IK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. private subroutine json_update_string (json, p, path, val, found, trim_str, adjustl_str) Author Jacob Williams Date 12/6/2014 Given the path string, if the variable is present,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure character(kind=CK, len=*), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) private subroutine wrap_json_update_string (json, p, path, val, found, trim_str, adjustl_str) Alternate version of json_update_string , where path and value are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure character(kind=CDK, len=*), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) generic, public :: update => json_update_string_name_ascii , json_update_string_val_ascii private subroutine json_update_string_name_ascii (json, p, path, val, found, trim_str, adjustl_str) Alternate version of json_update_string , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure character(kind=CK, len=*), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) private subroutine json_update_string_val_ascii (json, p, path, val, found, trim_str, adjustl_str) Alternate version of json_update_string , where val is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure character(kind=CDK, len=*), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) generic, public :: valid_path => json_valid_path , wrap_json_valid_path verify if a path is valid\n(i.e., a variable with this path exists in the file). private function json_valid_path (json, p, path) result(found) Returns true if the path is present in the p JSON structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable Return Value logical(kind=LK) true if it was found private function wrap_json_valid_path (json, p, path) result(found) Alternate version of json_valid_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list character(kind=CDK, len=*), intent(in) :: path path to the variable Return Value logical(kind=LK) true if it was found procedure, public :: validate => json_value_validate Check that a json_value linked\nlist is valid (i.e., is properly\nconstructed). This may be useful\nif it has been constructed externally. private subroutine json_value_validate (json, p, is_valid, error_msg) Author Jacob Williams Date 5/2/2016 Validate a json_value linked list by checking to make sure\n all the pointers are properly associated, arrays and objects\n have the correct number of children, and the correct data is\n allocated for the variable types. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p logical(kind=LK), intent(out) :: is_valid True if the structure is valid. character(kind=CK, len=:), intent(out), allocatable :: error_msg if not valid, this will contain\na description of the problem procedure, private :: wrap_json_add_integer_by_path private subroutine wrap_json_add_integer_by_path (json, me, path, value, found, was_created) Wrapper to json_add_integer_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: wrap_json_add_integer_vec_by_path private subroutine wrap_json_add_integer_vec_by_path (json, me, path, value, found, was_created) Wrapper for json_add_integer_vec_by_path where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: wrap_json_add_logical_by_path private subroutine wrap_json_add_logical_by_path (json, me, path, value, found, was_created) Wrapper to json_add_logical_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: wrap_json_add_logical_vec_by_path private subroutine wrap_json_add_logical_vec_by_path (json, me, path, value, found, was_created) Wrapper for json_add_logical_vec_by_path where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: wrap_json_add_member_by_path private subroutine wrap_json_add_member_by_path (json, me, path, p, found, was_created) Wrapper to json_add_member_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(in), pointer :: p the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: wrap_json_add_real32_by_path private subroutine wrap_json_add_real32_by_path (json, me, path, value, found, was_created) Wrapper to json_add_real32_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: wrap_json_add_real32_vec_by_path private subroutine wrap_json_add_real32_vec_by_path (json, me, path, value, found, was_created) Wrapper for json_add_real32_vec_by_path where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: wrap_json_add_real_by_path private subroutine wrap_json_add_real_by_path (json, me, path, value, found, was_created) Wrapper to json_add_real_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: wrap_json_add_real_vec_by_path private subroutine wrap_json_add_real_vec_by_path (json, me, path, value, found, was_created) Wrapper for json_add_real_vec_by_path where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created procedure, private :: wrap_json_add_string_by_path private subroutine wrap_json_add_string_by_path (json, me, path, value, found, was_created, trim_str, adjustl_str) Wrapper to json_add_string_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element procedure, private :: wrap_json_add_string_vec_by_path private subroutine wrap_json_add_string_vec_by_path (json, me, path, value, found, was_created, ilen, trim_str, adjustl_str) Wrapper for json_add_string_vec_by_path where “path” and “value” are kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element procedure, private :: wrap_json_create_by_path private subroutine wrap_json_create_by_path (json, me, path, p, found, was_created) Alternate version of json_create_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CDK, len=*), intent(in) :: path path to the variable type( json_value ), intent(out), optional, pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if there were no errors\n(variable found or created) logical(kind=LK), intent(out), optional :: was_created true if it was actually created\n(as opposed to already being there) procedure, private :: wrap_json_get_alloc_string_vec_by_path private subroutine wrap_json_get_alloc_string_vec_by_path (json, me, path, vec, ilen, found, default, default_ilen) Alternate version of json_get_alloc_string_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default integer(kind=IK), intent(in), optional, dimension(:) :: default_ilen the actual\nlength of default procedure, private :: wrap_json_get_array_by_path private recursive subroutine wrap_json_get_array_by_path (json, me, path, array_callback, found) Alternate version of json_get_array_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path procedure( json_array_callback_func ) :: array_callback logical(kind=LK), intent(out), optional :: found procedure, private :: wrap_json_get_by_path private subroutine wrap_json_get_by_path (json, me, path, p, found) Alternate version of json_get_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path type( json_value ), intent(out), pointer :: p logical(kind=LK), intent(out), optional :: found procedure, private :: wrap_json_get_integer_by_path private subroutine wrap_json_get_integer_by_path (json, me, path, value, found, default) Alternate version of json_get_integer_by_path , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path integer(kind=IK), intent(out) :: value logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(in), optional :: default default value if not found procedure, private :: wrap_json_get_integer_vec_by_path private subroutine wrap_json_get_integer_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_integer_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path integer(kind=IK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(in), optional, dimension(:) :: default default value if not found procedure, private :: wrap_json_get_logical_by_path private subroutine wrap_json_get_logical_by_path (json, me, path, value, found, default) Alternate version of json_get_logical_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path logical(kind=LK), intent(out) :: value logical(kind=LK), intent(out), optional :: found logical(kind=LK), intent(in), optional :: default default value if not found procedure, private :: wrap_json_get_logical_vec_by_path private subroutine wrap_json_get_logical_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_logical_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path logical(kind=LK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found logical(kind=LK), intent(in), optional, dimension(:) :: default procedure, private :: wrap_json_get_path private subroutine wrap_json_get_path (json, p, path, found, use_alt_array_tokens, path_sep) Wrapper for json_get_path where “path” and “path_sep” are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list object character(kind=CDK, len=:), intent(out), allocatable :: path path to the variable logical(kind=LK), intent(out), optional :: found true if there were no problems logical(kind=LK), intent(in), optional :: use_alt_array_tokens if true, then ‘()’ are used\nfor array elements otherwise,\n‘[]’ are used [default] character(kind=CDK, len=1), intent(in), optional :: path_sep character to use for path\nseparator (default is ‘.’) procedure, private :: wrap_json_get_real32_by_path private subroutine wrap_json_get_real32_by_path (json, me, path, value, found, default) Alternate version of json_get_real32_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path real(kind=real32), intent(out) :: value logical(kind=LK), intent(out), optional :: found real(kind=real32), intent(in), optional :: default default value if not found procedure, private :: wrap_json_get_real32_vec_by_path private subroutine wrap_json_get_real32_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_real32_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path real(kind=real32), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found real(kind=real32), intent(in), optional, dimension(:) :: default default value if not found procedure, private :: wrap_json_get_real_by_path private subroutine wrap_json_get_real_by_path (json, me, path, value, found, default) Alternate version of json_get_real_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path real(kind=RK), intent(out) :: value logical(kind=LK), intent(out), optional :: found real(kind=RK), intent(in), optional :: default default value if not found procedure, private :: wrap_json_get_real_vec_by_path private subroutine wrap_json_get_real_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_real_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path real(kind=RK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found real(kind=RK), intent(in), optional, dimension(:) :: default default value if not found procedure, private :: wrap_json_get_string_by_path private subroutine wrap_json_get_string_by_path (json, me, path, value, found, default) Alternate version of json_get_string_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=:), intent(out), allocatable :: value logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional :: default procedure, private :: wrap_json_get_string_vec_by_path private subroutine wrap_json_get_string_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_string_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default procedure, private :: wrap_json_info_by_path private subroutine wrap_json_info_by_path (json, p, path, found, var_type, n_children, name) Alternate version of json_info_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list character(kind=CDK, len=*), intent(in) :: path path to the variable logical(kind=LK), intent(out), optional :: found true if it was found integer(kind=IK), intent(out), optional :: var_type variable type integer(kind=IK), intent(out), optional :: n_children number of children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name procedure, private :: wrap_json_matrix_info_by_path private subroutine wrap_json_matrix_info_by_path (json, p, path, is_matrix, found, var_type, n_sets, set_size, name) Alternate version of json_matrix_info_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a JSON linked list 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\nthe matrix (if all elements have\nthe same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name procedure, private :: wrap_json_parse_string private subroutine wrap_json_parse_string (json, p, str) Alternate version of json_parse_string , where str is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p output structure character(kind=CDK, len=*), intent(in) :: str string with JSON data procedure, private :: wrap_json_rename_by_path private subroutine wrap_json_rename_by_path (json, me, path, name, found) Alternate version of json_rename_by_path , where “path” and “name” are kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CDK, len=*), intent(in) :: name logical(kind=LK), intent(out), optional :: found procedure, private :: wrap_json_throw_exception private subroutine wrap_json_throw_exception (json, msg, found) Alternate version of json_throw_exception , where msg is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CDK, len=*), intent(in) :: msg the error message logical(kind=LK), intent(inout), optional :: found if the caller is handling the\nexception with an optimal return\nargument. If so, json%stop_on_error is ignored. procedure, private :: wrap_json_update_integer private subroutine wrap_json_update_integer (json, p, path, val, found) Alternate version of json_update_integer , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure integer(kind=IK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. procedure, private :: wrap_json_update_logical private subroutine wrap_json_update_logical (json, p, path, val, found) Alternate version of json_update_logical , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure logical(kind=LK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. procedure, private :: wrap_json_update_real private subroutine wrap_json_update_real (json, p, path, val, found) Alternate version of json_update_real , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure real(kind=RK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. procedure, private :: wrap_json_update_real32 private subroutine wrap_json_update_real32 (json, p, path, val, found) Alternate version of json_update_real32 , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure real(kind=real32), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. procedure, private :: wrap_json_update_string private subroutine wrap_json_update_string (json, p, path, val, found, trim_str, adjustl_str) Alternate version of json_update_string , where path and value are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure character(kind=CDK, len=*), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) procedure, private :: wrap_json_valid_path private function wrap_json_valid_path (json, p, path) result(found) Alternate version of json_valid_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list character(kind=CDK, len=*), intent(in) :: path path to the variable Return Value logical(kind=LK) true if it was found procedure, private :: wrap_json_value_add_integer private subroutine wrap_json_value_add_integer (json, p, name, val) Alternate version of json_value_add_integer where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable integer(kind=IK), intent(in) :: val value procedure, private :: wrap_json_value_add_integer_vec private subroutine wrap_json_value_add_integer_vec (json, p, name, val) Alternate version of json_value_add_integer_vec where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable integer(kind=IK), intent(in), dimension(:) :: val value procedure, private :: wrap_json_value_add_logical private subroutine wrap_json_value_add_logical (json, p, name, val) Alternate version of json_value_add_logical where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable logical(kind=LK), intent(in) :: val value procedure, private :: wrap_json_value_add_logical_vec private subroutine wrap_json_value_add_logical_vec (json, p, name, val) Alternate version of json_value_add_logical_vec where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable logical(kind=LK), intent(in), dimension(:) :: val value procedure, private :: wrap_json_value_add_null private subroutine wrap_json_value_add_null (json, p, name) Alternate version of json_value_add_null where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable procedure, private :: wrap_json_value_add_real private subroutine wrap_json_value_add_real (json, p, name, val) Alternate version of json_value_add_real where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name variable name real(kind=RK), intent(in) :: val real value procedure, private :: wrap_json_value_add_real32 private subroutine wrap_json_value_add_real32 (json, p, name, val) Alternate version of json_value_add_real32 where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name variable name real(kind=real32), intent(in) :: val real value procedure, private :: wrap_json_value_add_real32_vec private subroutine wrap_json_value_add_real32_vec (json, p, name, val) Alternate version of json_value_add_real32_vec where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name real(kind=real32), intent(in), dimension(:) :: val procedure, private :: wrap_json_value_add_real_vec private subroutine wrap_json_value_add_real_vec (json, p, name, val) Alternate version of json_value_add_real_vec where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name real(kind=RK), intent(in), dimension(:) :: val procedure, private :: wrap_json_value_add_string private subroutine wrap_json_value_add_string (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string where name and val are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable character(kind=CDK, len=*), intent(in) :: val value logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val procedure, private :: wrap_json_value_add_string_vec private subroutine wrap_json_value_add_string_vec (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string_vec where name and val are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name character(kind=CDK, len=*), intent(in), dimension(:) :: val logical(kind=LK), intent(in), optional :: trim_str logical(kind=LK), intent(in), optional :: adjustl_str procedure, private :: wrap_json_value_create_array private subroutine wrap_json_value_create_array (json, p, name) Author Izaak Beekman A wrapper for json_value_create_array so that create_array method may be\ncalled with an actual argument, corresponding to the dummy argument name ,\nthat is either of ‘DEFAULT’ or ‘ISO_10646’ character kind. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name procedure, private :: wrap_json_value_create_integer private subroutine wrap_json_value_create_integer (json, p, val, name) Author Izaak Beekman A wrapper procedure for json_value_create_integer so that create_integer method may be called with either a ‘DEFAULT’ or ‘ISO_10646’ character kind name actual argument. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name procedure, private :: wrap_json_value_create_logical private subroutine wrap_json_value_create_logical (json, p, val, name) Author Izaak Beekman Wrapper for json_value_create_logical so create_logical method can\nbe called with name of character kind ‘DEFAULT’ or ‘ISO_10646’ Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p logical(kind=LK), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name procedure, private :: wrap_json_value_create_null private subroutine wrap_json_value_create_null (json, p, name) Author Izaak Beekman Wrap json_value_create_null so that create_null method may be called with\nan actual argument corresponding to the dummy argument name that is either\nof ‘DEFAULT’ or ‘ISO_10646’ character kind. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name procedure, private :: wrap_json_value_create_object private subroutine wrap_json_value_create_object (json, p, name) Author Izaak Beekman Wrap json_value_create_object so that create_object method may be called\nwith an actual argument corresponding to the dummy argument name that is of\neither ‘DEFAULT’ or ‘ISO_10646’ character kind. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name procedure, private :: wrap_json_value_create_real private subroutine wrap_json_value_create_real (json, p, val, name) Author Izaak Beekman A wrapper for json_value_create_real so that create_real method\nmay be called with an actual argument corresponding to the dummy argument, name that may be of ‘DEFAULT’ or ‘ISO_10646’ character kind. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=RK), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name procedure, private :: wrap_json_value_create_real32 private subroutine wrap_json_value_create_real32 (json, p, val, name) Alternate version of json_value_create_real32 where “name” is kind(CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=real32), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name procedure, private :: wrap_json_value_create_string private subroutine wrap_json_value_create_string (json, p, val, name, trim_str, adjustl_str) Author Izaak Beekman Wrap json_value_create_string so that create_string method may be called\nwith actual character string arguments for name and val that are BOTH of\n‘DEFAULT’ or ‘ISO_10646’ character kind. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val procedure, private :: wrap_json_value_get_child_by_name private subroutine wrap_json_value_get_child_by_name (json, p, name, child, found) Alternate version of json_value_get_child_by_name where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CDK, len=*), intent(in) :: name type( json_value ), pointer :: child logical(kind=LK), intent(out), optional :: found procedure, private :: wrap_json_value_remove_if_present private subroutine wrap_json_value_remove_if_present (json, p, path) Alternate version of json_value_remove_if_present , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path procedure, private :: wrap_json_value_rename private subroutine wrap_json_value_rename (json, p, name) Author Jacob Williams Date 4/29/2016 Alternate version of json_value_rename , where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CDK, len=*), intent(in) :: name new variable name Source Code type , public :: json_core private integer ( IK ) :: spaces_per_tab = 2 !! number of spaces for indenting logical ( LK ) :: compact_real = . true . !! to use the \"compact\" form of real !! numbers for output character ( kind = CDK , len = :), allocatable :: real_fmt !! the format string to use !! for converting real numbers to strings. !! It can be set in [[json_initialize]], !! and used in [[json_value_print]] !! If not set, then `default_real_fmt` !! is used instead. logical ( LK ) :: is_verbose = . false . !! if true, all exceptions are !! immediately printed to console. logical ( LK ) :: stop_on_error = . false . !! if true, then the program is !! stopped immediately when an !! exception is raised. logical ( LK ) :: exception_thrown = . false . !! The error flag. Will be set to true !! when an error is thrown in the class. !! Many of the methods will check this !! and return immediately if it is true. character ( kind = CK , len = :), allocatable :: err_message !! the error message. !! if `exception_thrown=False` then !! this variable is not allocated. integer ( IK ) :: char_count = 0 !! character position in the current line integer ( IK ) :: line_count = 1 !! lines read counter integer ( IK ) :: pushed_index = 0 !! used when parsing lines in file character ( kind = CK , len = pushed_char_size ) :: pushed_char = CK_ '' !! used when parsing !! lines in file integer ( IK ) :: ipos = 1 !! for allocatable strings: next character to read logical ( LK ) :: strict_type_checking = . false . !! if true, then no type conversions are done !! in the `get` routines if the actual variable !! type is different from the return type (for !! example, integer to real). logical ( LK ) :: trailing_spaces_significant = . false . !! for name and path comparisons, if trailing !! space is to be considered significant. logical ( LK ) :: case_sensitive_keys = . true . !! if name and path comparisons !! are case sensitive. logical ( LK ) :: no_whitespace = . false . !! when printing a JSON string, don't include !! non-significant spaces or line breaks. !! If true, the entire structure will be !! printed on one line. logical ( LK ) :: unescaped_strings = . true . !! If false, then the escaped !! string is returned from [[json_get_string]] !! and similar routines. If true [default], !! then the string is returned unescaped. logical ( LK ) :: allow_comments = . true . !! if true, any comments will be ignored when !! parsing a file. The comment tokens are defined !! by the `comment_char` character variable. character ( kind = CK , len = :), allocatable :: comment_char !! comment tokens when !! `allow_comments` is true. !! Examples: '`!`' or '`#`'. !! Default is `CK_'/!#'`. integer ( IK ) :: path_mode = 1_IK !! How the path strings are interpreted in the !! `get_by_path` routines: !! !! * 1 -- Default mode (see [[json_get_by_path_default]]) !! * 2 -- as RFC 6901 \"JSON Pointer\" paths !! (see [[json_get_by_path_rfc6901]]) !! * 3 -- JSONPath \"bracket-notation\" !! see [[json_get_by_path_jsonpath_bracket]]) character ( kind = CK , len = 1 ) :: path_separator = dot !! The `path` separator to use !! in the \"default\" mode for !! the paths in the various !! `get_by_path` routines. !! Note: if `path_mode/=1` !! then this is ignored. logical ( LK ) :: compress_vectors = . false . !! If true, then arrays of integers, !! nulls, reals, & logicals are !! printed all on one line. !! [Note: `no_whitespace` will !! override this option if necessary] logical ( LK ) :: allow_duplicate_keys = . true . !! If False, then after parsing, if any !! duplicate keys are found, an error is !! thrown. A call to [[json_value_validate]] !! will also check for duplicates. If True !! [default] then no special checks are done logical ( LK ) :: escape_solidus = . false . !! If True then the solidus \"`/`\" is always escaped !! (\"`\\/`\") when serializing JSON. !! If False [default], then it is not escaped. !! Note that this option does not affect parsing !! (both escaped and unescaped versions are still !! valid in all cases). integer ( IK ) :: null_to_real_mode = 2_IK !! if `strict_type_checking=false`: !! !! * 1 : an exception will be raised if !! try to retrieve a `null` as a real. !! * 2 : a `null` retrieved as a real !! will return NaN. [default] !! * 3 : a `null` retrieved as a real !! will return 0.0. logical ( LK ) :: non_normals_to_null = . false . !! How to serialize NaN, Infinity, !! and -Infinity real values: !! !! * If true : as JSON `null` values !! * If false : as strings (e.g., \"NaN\", !! \"Infinity\", \"-Infinity\") [default] logical ( LK ) :: use_quiet_nan = . true . !! if true [default], `null_to_real_mode=2` !! and [[string_to_real]] will use !! `ieee_quiet_nan` for NaN values. If false, !! `ieee_signaling_nan` will be used. logical ( LK ) :: strict_integer_type_checking = . true . !! * If false, when parsing JSON, if an integer numeric value !! cannot be converted to an integer (`integer(IK)`), !! then an attempt is then make to convert it !! to a real (`real(RK)`). !! * If true [default], an exception will be raised if an integer !! value cannot be read when parsing JSON. logical ( LK ) :: allow_trailing_comma = . true . !! Allow a single trailing comma in arrays and objects. integer :: ichunk = 0 !! index in `chunk` for [[pop_char]] !! when `use_unformatted_stream=True` integer :: filesize = 0 !! the file size when when `use_unformatted_stream=True` character ( kind = CK , len = :), allocatable :: chunk !! a chunk read from a stream file !! when `use_unformatted_stream=True` contains private !> ! Return a child of a [[json_value]] structure. generic , public :: get_child => json_value_get_child_by_index , & json_value_get_child ,& MAYBEWRAP ( json_value_get_child_by_name ) procedure , private :: json_value_get_child_by_index procedure , private :: MAYBEWRAP ( json_value_get_child_by_name ) procedure , private :: json_value_get_child !> ! Add objects to a linked list of [[json_value]]s. ! !@note It might make more sense to call this `add_child`. generic , public :: add => json_value_add_member , & MAYBEWRAP ( json_value_add_null ), & MAYBEWRAP ( json_value_add_integer ), & MAYBEWRAP ( json_value_add_integer_vec ), & #ifndef REAL32 MAYBEWRAP ( json_value_add_real32 ), & MAYBEWRAP ( json_value_add_real32_vec ), & #endif MAYBEWRAP ( json_value_add_real ), & MAYBEWRAP ( json_value_add_real_vec ), & #ifdef REAL128 MAYBEWRAP ( json_value_add_real64 ), & MAYBEWRAP ( json_value_add_real64_vec ), & #endif MAYBEWRAP ( json_value_add_logical ), & MAYBEWRAP ( json_value_add_logical_vec ), & MAYBEWRAP ( json_value_add_string ), & MAYBEWRAP ( json_value_add_string_vec ) #ifdef USE_UCS4 generic , public :: add => json_value_add_string_name_ascii , & json_value_add_string_val_ascii , & json_value_add_string_vec_name_ascii , & json_value_add_string_vec_val_ascii #endif procedure , private :: json_value_add_member procedure , private :: MAYBEWRAP ( json_value_add_integer ) procedure , private :: MAYBEWRAP ( json_value_add_null ) procedure , private :: MAYBEWRAP ( json_value_add_integer_vec ) #ifndef REAL32 procedure , private :: MAYBEWRAP ( json_value_add_real32 ) procedure , private :: MAYBEWRAP ( json_value_add_real32_vec ) #endif procedure , private :: MAYBEWRAP ( json_value_add_real ) procedure , private :: MAYBEWRAP ( json_value_add_real_vec ) #ifdef REAL128 procedure , private :: MAYBEWRAP ( json_value_add_real64 ) procedure , private :: MAYBEWRAP ( json_value_add_real64_vec ) #endif procedure , private :: MAYBEWRAP ( json_value_add_logical ) procedure , private :: MAYBEWRAP ( json_value_add_logical_vec ) procedure , private :: MAYBEWRAP ( json_value_add_string ) procedure , private :: MAYBEWRAP ( json_value_add_string_vec ) #ifdef USE_UCS4 procedure , private :: json_value_add_string_name_ascii procedure , private :: json_value_add_string_val_ascii procedure , private :: json_value_add_string_vec_name_ascii procedure , private :: json_value_add_string_vec_val_ascii #endif !> ! These are like the `add` methods, except if a variable with the ! same path is already present, then its value is simply updated. ! Note that currently, these only work for scalar variables. ! These routines can also change the variable's type (but an error will be ! thrown if the existing variable is not a scalar). ! !### See also ! * [[json_core(type):add_by_path]] - this one can be used to change ! arrays and objects to scalars if so desired. ! !@note Unlike some routines, the `found` output is not optional, ! so it doesn't present exceptions from being thrown. ! !@note These have been mostly supplanted by the [[json_core(type):add_by_path]] ! methods, which do a similar thing (and can be used for ! scalars and vectors, etc.) generic , public :: update => MAYBEWRAP ( json_update_logical ),& #ifndef REAL32 MAYBEWRAP ( json_update_real32 ),& #endif MAYBEWRAP ( json_update_real ),& #ifdef REAL128 MAYBEWRAP ( json_update_real64 ),& #endif MAYBEWRAP ( json_update_integer ),& MAYBEWRAP ( json_update_string ) #ifdef USE_UCS4 generic , public :: update => json_update_string_name_ascii ,& json_update_string_val_ascii #endif procedure , private :: MAYBEWRAP ( json_update_logical ) #ifndef REAL32 procedure , private :: MAYBEWRAP ( json_update_real32 ) #endif procedure , private :: MAYBEWRAP ( json_update_real ) #ifdef REAL128 procedure , private :: MAYBEWRAP ( json_update_real64 ) #endif procedure , private :: MAYBEWRAP ( json_update_integer ) procedure , private :: MAYBEWRAP ( json_update_string ) #ifdef USE_UCS4 procedure , private :: json_update_string_name_ascii procedure , private :: json_update_string_val_ascii #endif !> ! Add variables to a [[json_value]] linked list ! by specifying their paths. ! !### Example ! !````fortran ! use, intrinsic :: iso_fortran_env, only: output_unit ! use json_module, wp=>json_RK ! type(json_core) :: json ! type(json_value) :: p ! call json%create_object(p,'root') ! create the root ! ! now add some variables using the paths: ! call json%add_by_path(p,'inputs.t', 0.0_wp ) ! call json%add_by_path(p,'inputs.x(1)', 100.0_wp) ! call json%add_by_path(p,'inputs.x(2)', 200.0_wp) ! call json%print(p) ! now print to console !```` ! !### Notes ! * This uses [[json_create_by_path]] ! !### See also ! * The `json_core%update` methods. ! * [[json_create_by_path]] generic , public :: add_by_path => MAYBEWRAP ( json_add_member_by_path ),& MAYBEWRAP ( json_add_integer_by_path ),& #ifndef REAL32 MAYBEWRAP ( json_add_real32_by_path ),& #endif MAYBEWRAP ( json_add_real_by_path ),& #ifdef REAL128 MAYBEWRAP ( json_add_real64_by_path ),& #endif MAYBEWRAP ( json_add_logical_by_path ),& MAYBEWRAP ( json_add_string_by_path ),& MAYBEWRAP ( json_add_integer_vec_by_path ),& #ifndef REAL32 MAYBEWRAP ( json_add_real32_vec_by_path ),& #endif MAYBEWRAP ( json_add_real_vec_by_path ),& #ifdef REAL128 MAYBEWRAP ( json_add_real64_vec_by_path ),& #endif MAYBEWRAP ( json_add_logical_vec_by_path ),& MAYBEWRAP ( json_add_string_vec_by_path ) #ifdef USE_UCS4 generic , public :: add_by_path => json_add_string_by_path_value_ascii ,& json_add_string_by_path_path_ascii ,& json_add_string_vec_by_path_value_ascii ,& json_add_string_vec_by_path_path_ascii #endif procedure :: MAYBEWRAP ( json_add_member_by_path ) procedure :: MAYBEWRAP ( json_add_integer_by_path ) #ifndef REAL32 procedure :: MAYBEWRAP ( json_add_real32_by_path ) #endif procedure :: MAYBEWRAP ( json_add_real_by_path ) #ifdef REAL128 procedure :: MAYBEWRAP ( json_add_real64_by_path ) #endif procedure :: MAYBEWRAP ( json_add_logical_by_path ) procedure :: MAYBEWRAP ( json_add_string_by_path ) procedure :: MAYBEWRAP ( json_add_integer_vec_by_path ) #ifndef REAL32 procedure :: MAYBEWRAP ( json_add_real32_vec_by_path ) #endif procedure :: MAYBEWRAP ( json_add_real_vec_by_path ) #ifdef REAL128 procedure :: MAYBEWRAP ( json_add_real64_vec_by_path ) #endif procedure :: MAYBEWRAP ( json_add_logical_vec_by_path ) procedure :: MAYBEWRAP ( json_add_string_vec_by_path ) #ifdef USE_UCS4 procedure :: json_add_string_by_path_value_ascii procedure :: json_add_string_by_path_path_ascii procedure :: json_add_string_vec_by_path_value_ascii procedure :: json_add_string_vec_by_path_path_ascii #endif !> ! Create a [[json_value]] linked list using the ! path to the variables. Optionally return a ! pointer to the variable. ! ! (This will create a `null` variable) ! !### See also ! * [[json_core(type):add_by_path]] generic , public :: create => MAYBEWRAP ( json_create_by_path ) procedure :: MAYBEWRAP ( json_create_by_path ) !> ! Get data from a [[json_value]] linked list. ! !@note There are two versions (e.g. [[json_get_integer]] and [[json_get_integer_by_path]]). ! The first one gets the value from the [[json_value]] passed into the routine, ! while the second one gets the value from the [[json_value]] found by parsing the ! path. The path version is split up into unicode and non-unicode versions. generic , public :: get => & MAYBEWRAP ( json_get_by_path ), & json_get_integer , MAYBEWRAP ( json_get_integer_by_path ), & json_get_integer_vec , MAYBEWRAP ( json_get_integer_vec_by_path ), & #ifndef REAL32 json_get_real32 , MAYBEWRAP ( json_get_real32_by_path ), & json_get_real32_vec , MAYBEWRAP ( json_get_real32_vec_by_path ), & #endif json_get_real , MAYBEWRAP ( json_get_real_by_path ), & json_get_real_vec , MAYBEWRAP ( json_get_real_vec_by_path ), & #ifdef REAL128 json_get_real64 , MAYBEWRAP ( json_get_real64_by_path ), & json_get_real64_vec , MAYBEWRAP ( json_get_real64_vec_by_path ), & #endif json_get_logical , MAYBEWRAP ( json_get_logical_by_path ), & json_get_logical_vec , MAYBEWRAP ( json_get_logical_vec_by_path ), & json_get_string , MAYBEWRAP ( json_get_string_by_path ), & json_get_string_vec , MAYBEWRAP ( json_get_string_vec_by_path ), & json_get_alloc_string_vec , MAYBEWRAP ( json_get_alloc_string_vec_by_path ),& json_get_array , MAYBEWRAP ( json_get_array_by_path ) procedure , private :: json_get_integer procedure , private :: json_get_integer_vec #ifndef REAL32 procedure , private :: json_get_real32 procedure , private :: json_get_real32_vec #endif procedure , private :: json_get_real procedure , private :: json_get_real_vec #ifdef REAL128 procedure , private :: json_get_real64 procedure , private :: json_get_real64_vec #endif procedure , private :: json_get_logical procedure , private :: json_get_logical_vec procedure , private :: json_get_string procedure , private :: json_get_string_vec procedure , private :: json_get_alloc_string_vec procedure , private :: json_get_array procedure , private :: MAYBEWRAP ( json_get_by_path ) procedure , private :: MAYBEWRAP ( json_get_integer_by_path ) procedure , private :: MAYBEWRAP ( json_get_integer_vec_by_path ) #ifndef REAL32 procedure , private :: MAYBEWRAP ( json_get_real32_by_path ) procedure , private :: MAYBEWRAP ( json_get_real32_vec_by_path ) #endif procedure , private :: MAYBEWRAP ( json_get_real_by_path ) procedure , private :: MAYBEWRAP ( json_get_real_vec_by_path ) #ifdef REAL128 procedure , private :: MAYBEWRAP ( json_get_real64_by_path ) procedure , private :: MAYBEWRAP ( json_get_real64_vec_by_path ) #endif procedure , private :: MAYBEWRAP ( json_get_logical_by_path ) procedure , private :: MAYBEWRAP ( json_get_logical_vec_by_path ) procedure , private :: MAYBEWRAP ( json_get_string_by_path ) procedure , private :: MAYBEWRAP ( json_get_string_vec_by_path ) procedure , private :: MAYBEWRAP ( json_get_array_by_path ) procedure , private :: MAYBEWRAP ( json_get_alloc_string_vec_by_path ) procedure , private :: json_get_by_path_default procedure , private :: json_get_by_path_rfc6901 procedure , private :: json_get_by_path_jsonpath_bracket !> ! Print the [[json_value]] to an output unit or file. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value) :: p ! !... ! call json%print(p,'test.json') !this is [[json_print_to_filename]] !```` generic , public :: print => json_print_to_console ,& json_print_to_unit ,& json_print_to_filename procedure :: json_print_to_console procedure :: json_print_to_unit procedure :: json_print_to_filename !> ! Destructor routine for a [[json_value]] pointer. ! This must be called explicitly if it is no longer needed, ! before it goes out of scope. Otherwise, a memory leak will result. ! !### Example ! ! Destroy the [[json_value]] pointer before the variable goes out of scope: !````fortran ! subroutine example1() ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_object(p,'') ! call json%add(p,'year',2015) ! call json%print(p) ! call json%destroy(p) ! end subroutine example1 !```` ! ! Note: it should NOT be called for a [[json_value]] pointer than has already been ! added to another [[json_value]] structure, since doing so may render the ! other structure invalid. Consider the following example: !````fortran ! subroutine example2(p) ! type(json_core) :: json ! type(json_value),pointer,intent(out) :: p ! type(json_value),pointer :: q ! call json%create_object(p,'') ! call json%add(p,'year',2015) ! call json%create_object(q,'q') ! call json%add(q,'val',1) ! call json%add(p, q) !add q to p structure ! ! do NOT call json%destroy(q) here, because q is ! ! now part of the output structure p. p should be destroyed ! ! somewhere upstream by the caller of this routine. ! nullify(q) !OK, but not strictly necessary ! end subroutine example2 !```` generic , public :: destroy => json_value_destroy , destroy_json_core procedure :: json_value_destroy procedure :: destroy_json_core !> ! If the child variable is present, then remove it. generic , public :: remove_if_present => MAYBEWRAP ( json_value_remove_if_present ) procedure :: MAYBEWRAP ( json_value_remove_if_present ) !> ! Allocate a [[json_value]] pointer and make it a real variable. ! The pointer should not already be allocated. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_real(p,'value',1.0_RK) !```` ! !### Note ! * [[json_core(type):create_real]] is just an alias ! to this one for backward compatibility. generic , public :: create_real => MAYBEWRAP ( json_value_create_real ) procedure :: MAYBEWRAP ( json_value_create_real ) #ifndef REAL32 generic , public :: create_real => MAYBEWRAP ( json_value_create_real32 ) procedure :: MAYBEWRAP ( json_value_create_real32 ) #endif #ifdef REAL128 generic , public :: create_real => MAYBEWRAP ( json_value_create_real64 ) procedure :: MAYBEWRAP ( json_value_create_real64 ) #endif !> ! This is equivalent to [[json_core(type):create_real]], ! and is here only for backward compatibility. generic , public :: create_double => MAYBEWRAP ( json_value_create_real ) #ifndef REAL32 generic , public :: create_double => MAYBEWRAP ( json_value_create_real32 ) #endif #ifdef REAL128 generic , public :: create_double => MAYBEWRAP ( json_value_create_real64 ) #endif !> ! Allocate a [[json_value]] pointer and make it an array variable. ! The pointer should not already be allocated. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_array(p,'arrayname') !```` generic , public :: create_array => MAYBEWRAP ( json_value_create_array ) procedure :: MAYBEWRAP ( json_value_create_array ) !> ! Allocate a [[json_value]] pointer and make it an object variable. ! The pointer should not already be allocated. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_object(p,'objectname') !```` ! !@note The name is not significant for the root structure or an array element. ! In those cases, an empty string can be used. generic , public :: create_object => MAYBEWRAP ( json_value_create_object ) procedure :: MAYBEWRAP ( json_value_create_object ) !> ! Allocate a json_value pointer and make it a null variable. ! The pointer should not already be allocated. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_null(p,'value') !```` generic , public :: create_null => MAYBEWRAP ( json_value_create_null ) procedure :: MAYBEWRAP ( json_value_create_null ) !> ! Allocate a json_value pointer and make it a string variable. ! The pointer should not already be allocated. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_string(p,'value','foobar') !```` generic , public :: create_string => MAYBEWRAP ( json_value_create_string ) procedure :: MAYBEWRAP ( json_value_create_string ) !> ! Allocate a json_value pointer and make it an integer variable. ! The pointer should not already be allocated. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_integer(p,42,'value') !```` generic , public :: create_integer => MAYBEWRAP ( json_value_create_integer ) procedure :: MAYBEWRAP ( json_value_create_integer ) !> ! Allocate a json_value pointer and make it a logical variable. ! The pointer should not already be allocated. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_logical(p,'value',.true.) !```` generic , public :: create_logical => MAYBEWRAP ( json_value_create_logical ) procedure :: MAYBEWRAP ( json_value_create_logical ) !> ! Parse the JSON file and populate the [[json_value]] tree. generic , public :: load => json_parse_file procedure :: json_parse_file !> ! Print the [[json_value]] structure to an allocatable string procedure , public :: serialize => json_value_to_string !> ! The same as `serialize`, but only here for backward compatibility procedure , public :: print_to_string => json_value_to_string !> ! Parse the JSON string and populate the [[json_value]] tree. generic , public :: deserialize => MAYBEWRAP ( json_parse_string ) procedure :: MAYBEWRAP ( json_parse_string ) !> ! Same as `load` and `deserialize` but only here for backward compatibility. generic , public :: parse => json_parse_file , & MAYBEWRAP ( json_parse_string ) !> ! Throw an exception. generic , public :: throw_exception => MAYBEWRAP ( json_throw_exception ) procedure :: MAYBEWRAP ( json_throw_exception ) !> ! Rename a [[json_value]] variable. generic , public :: rename => MAYBEWRAP ( json_value_rename ),& MAYBEWRAP ( json_rename_by_path ) procedure :: MAYBEWRAP ( json_value_rename ) procedure :: MAYBEWRAP ( json_rename_by_path ) #ifdef USE_UCS4 generic , public :: rename => json_rename_by_path_name_ascii ,& json_rename_by_path_path_ascii procedure :: json_rename_by_path_name_ascii procedure :: json_rename_by_path_path_ascii #endif !> ! get info about a [[json_value]] generic , public :: info => json_info , MAYBEWRAP ( json_info_by_path ) procedure :: json_info procedure :: MAYBEWRAP ( json_info_by_path ) !> ! get string info about a [[json_value]] generic , public :: string_info => json_string_info procedure :: json_string_info !> ! get matrix info about a [[json_value]] generic , public :: matrix_info => json_matrix_info , MAYBEWRAP ( json_matrix_info_by_path ) procedure :: json_matrix_info procedure :: MAYBEWRAP ( json_matrix_info_by_path ) !> ! insert a new element after an existing one, ! updating the JSON structure accordingly generic , public :: insert_after => json_value_insert_after , & json_value_insert_after_child_by_index procedure :: json_value_insert_after procedure :: json_value_insert_after_child_by_index !> ! get the path to a JSON variable in a structure: generic , public :: get_path => MAYBEWRAP ( json_get_path ) procedure :: MAYBEWRAP ( json_get_path ) !> ! verify if a path is valid ! (i.e., a variable with this path exists in the file). generic , public :: valid_path => MAYBEWRAP ( json_valid_path ) procedure :: MAYBEWRAP ( json_valid_path ) procedure , public :: remove => json_value_remove !! Remove a [[json_value]] from a !! linked-list structure. procedure , public :: replace => json_value_replace !! Replace a [[json_value]] in a !! linked-list structure. procedure , public :: reverse => json_value_reverse !! Reverse the order of the children !! of an array of object. procedure , public :: check_for_errors => json_check_for_errors !! check for error and get error message procedure , public :: clear_exceptions => json_clear_exceptions !! clear exceptions procedure , public :: count => json_count !! count the number of children procedure , public :: clone => json_clone !! clone a JSON structure (deep copy) procedure , public :: failed => json_failed !! check for error procedure , public :: get_parent => json_get_parent !! get pointer to json_value parent procedure , public :: get_next => json_get_next !! get pointer to json_value next procedure , public :: get_previous => json_get_previous !! get pointer to json_value previous procedure , public :: get_tail => json_get_tail !! get pointer to json_value tail procedure , public :: initialize => json_initialize !! to initialize some parsing parameters procedure , public :: traverse => json_traverse !! to traverse all elements of a JSON !! structure procedure , public :: print_error_message => json_print_error_message !! simply routine to print error !! messages procedure , public :: swap => json_value_swap !! Swap two [[json_value]] pointers !! in a structure (or two different !! structures). procedure , public :: is_child_of => json_value_is_child_of !! Check if a [[json_value]] is a !! descendant of another. procedure , public :: validate => json_value_validate !! Check that a [[json_value]] linked !! list is valid (i.e., is properly !! constructed). This may be useful !! if it has been constructed externally. procedure , public :: check_for_duplicate_keys & => json_check_all_for_duplicate_keys !! Check entire JSON structure !! for duplicate keys (recursively) procedure , public :: check_children_for_duplicate_keys & => json_check_children_for_duplicate_keys !! Check a `json_value` object's !! children for duplicate keys !other private routines: procedure :: name_equal procedure :: name_strings_equal procedure :: json_value_print procedure :: string_to_int procedure :: string_to_dble procedure :: prepare_parser => json_prepare_parser procedure :: parse_end => json_parse_end procedure :: parse_value procedure :: parse_number procedure :: parse_string procedure :: parse_for_chars procedure :: parse_object procedure :: parse_array procedure :: annotate_invalid_json procedure :: pop_char procedure :: push_char procedure :: get_current_line_from_file_stream procedure , nopass :: get_current_line_from_file_sequential procedure :: convert procedure :: to_string procedure :: to_logical procedure :: to_integer procedure :: to_real procedure :: to_null procedure :: to_object procedure :: to_array procedure , nopass :: json_value_clone_func procedure :: is_vector => json_is_vector end type json_core","tags":"","loc":"type/json_core.html"},{"title":"json_value – JSON-Fortran ","text":"type, public :: json_value sequence Type used to construct the linked-list JSON structure.\n Normally, this should always be a pointer variable.\n This type should only be used by an instance of json_core . Example The following test program: program test use json_module implicit none type ( json_core ) :: json type ( json_value ), pointer :: p call json % create_object ( p , '' ) !create the root call json % add ( p , 'year' , 1805 ) !add some data call json % add ( p , 'value' , 1.0_RK ) !add some data call json % print ( p , 'test.json' ) !write it to a file call json % destroy ( p ) !cleanup end program test Produces the JSON file test.json : { \"year\" : 1805 , \"value\" : 0.1E+1 } Warning Pointers of this type should only be allocated\n using the methods from json_core . Inherited by type~~json_value~~InheritedByGraph type~json_value json_value type~json_value->type~json_value previous, next, parent, children, tail type~json_file json_file type~json_file->type~json_value p Help Graph Key Nodes of different colours represent the following: Graph Key Type Type This Page's Entity This Page's Entity Solid arrows point from a derived type to the parent type which it\nextends. Dashed arrows point from a derived type to the other\ntypes it contains as a components, with a label listing the name(s) of\nsaid component(s). Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Components Type Visibility Attributes Name Initial type( json_value ), private, pointer :: children => null() first child item of this real(kind=RK), private, allocatable :: dbl_value real data for this variable integer(kind=IK), private, allocatable :: int_value integer data for this variable logical(kind=LK), private, allocatable :: log_value logical data for this variable integer(kind=IK), private :: n_children = 0 number of children character(kind=CK, len=:), private, allocatable :: name variable name (unescaped) type( json_value ), private, pointer :: next => null() next item in the list type( json_value ), private, pointer :: parent => null() parent item of this type( json_value ), private, pointer :: previous => null() previous item in the list character(kind=CK, len=:), private, allocatable :: str_value string data for this variable\n(unescaped) type( json_value ), private, pointer :: tail => null() last child item of this integer(kind=IK), private :: var_type = json_unknown variable type Source Code type , public :: json_value !force the constituents to be stored contiguously ![note: on Intel, the order of the variables below ! is significant to avoid the misaligned field warnings] sequence private !for the linked list: type ( json_value ), pointer :: previous => null () !! previous item in the list type ( json_value ), pointer :: next => null () !! next item in the list type ( json_value ), pointer :: parent => null () !! parent item of this type ( json_value ), pointer :: children => null () !! first child item of this type ( json_value ), pointer :: tail => null () !! last child item of this character ( kind = CK , len = :), allocatable :: name !! variable name (unescaped) real ( RK ), allocatable :: dbl_value !! real data for this variable logical ( LK ), allocatable :: log_value !! logical data for this variable character ( kind = CK , len = :), allocatable :: str_value !! string data for this variable !! (unescaped) integer ( IK ), allocatable :: int_value !! integer data for this variable integer ( IK ) :: var_type = json_unknown !! variable type integer ( IK ), private :: n_children = 0 !! number of children end type json_value","tags":"","loc":"type/json_value.html"},{"title":"json_array_callback_func – JSON-Fortran","text":"interface public subroutine json_array_callback_func(json, element, i, count) Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: element integer(kind=IK), intent(in) :: i index integer(kind=IK), intent(in) :: count size of array Description Array element callback function. Used by json_get_array","tags":"","loc":"interface/json_array_callback_func.html"},{"title":"json_traverse_callback_func – JSON-Fortran","text":"interface public subroutine json_traverse_callback_func(json, p, finished) Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p logical(kind=LK), intent(out) :: finished set true to stop traversing Description Callback function used by json_traverse","tags":"","loc":"interface/json_traverse_callback_func.html"},{"title":"json_fortran_version – JSON-Fortran","text":"public function json_fortran_version() result(ver) Returns the JSON -Fortran version string. Arguments None Return Value character(len=:), allocatable JSON -Fortran version string Source Code function json_fortran_version () result ( ver ) implicit none character ( len = :), allocatable :: ver !! JSON-Fortran version string ver = version end function json_fortran_version","tags":"","loc":"proc/json_fortran_version.html"},{"title":"initialize_json_file – JSON-Fortran","text":"private function initialize_json_file(p, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma, nullify_pointer) result(file_object) Cast a json_value object as a json_file object.\n It also calls the initialize() method. Note initialize_json_core , json_initialize , initialize_json_core_in_file , initialize_json_file , initialize_json_file_v2 , initialize_json_file_from_string ,\n and initialize_json_file_from_string_v2 all have a similar interface. Arguments Type Intent Optional Attributes Name type( json_value ), optional, pointer :: p json_value object to cast\nas a json_file object. This\nwill be nullified. logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: 1 : Default mode (see json_get_by_path_default ) 2 : as RFC 6901 “ JSON Pointer” paths\n (see json_get_by_path_rfc6901 ) 3 : JSONPath “bracket-notation”\n see json_get_by_path_jsonpath_bracket ) character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys If True [default] then no special checks\n are done to check for duplicate keys. If False, then after parsing, if any duplicate\n keys are found, an error is thrown. A call to json_value_validate will also check for\n duplicates. logical(kind=LK), intent(in), optional :: escape_solidus If True then the solidus “ / ” is always escaped\n “ \\/ ” when serializing JSON If False [default], then it is not escaped. Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : 1 : an exception will be raised if\n try to retrieve a null as a real. 2 : a null retrieved as a real\n will return a NaN. [default] 3 : a null retrieved as a real\n will return 0.0. integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: 1 : as strings (e.g., “NaN”,\n “Infinity”, “-Infinity”) [default] 2 : as JSON null values logical(kind=LK), intent(in), optional :: use_quiet_nan If true [default], null_to_real_mode=2 and string_to_real will use ieee_quiet_nan for NaN values. If false, ieee_signaling_nan will be used. logical(kind=LK), intent(in), optional :: strict_integer_type_checking If false, when parsing JSON , if an integer numeric value\n cannot be converted to an integer ( integer(IK) ),\n then an attempt is then make to convert it\n to a real ( real(RK) ). If true, an exception will be raised if the integer\n value cannot be read. (default is true) logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) logical(kind=LK), intent(in), optional :: nullify_pointer if True, then p will be nullified\nif present. (default is True). Normally,\nthis should be done, because the json_file will destroy\nthe pointer when the class goes out of scope (causing p to be\na dangling pointer). However, if the intent is to use p in\na json_file and then call nullify and continue\nto use p , then this should be set to False. Return Value type( json_file ) Calls proc~~initialize_json_file~~CallsGraph proc~initialize_json_file initialize_json_file none~initialize json_file%initialize proc~initialize_json_file->none~initialize proc~initialize_json_core_in_file json_file%initialize_json_core_in_file none~initialize->proc~initialize_json_core_in_file proc~set_json_core_in_file json_file%set_json_core_in_file none~initialize->proc~set_json_core_in_file proc~json_initialize json_core%json_initialize proc~initialize_json_core_in_file->proc~json_initialize none~throw_exception json_core%throw_exception proc~json_initialize->none~throw_exception proc~integer_to_string integer_to_string proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~initialize_json_file~~CalledByGraph proc~initialize_json_file initialize_json_file interface~json_file json_file interface~json_file->proc~initialize_json_file Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function initialize_json_file ( p ,& #include \"json_initialize_dummy_arguments.inc\" , nullify_pointer & ) result ( file_object ) implicit none type ( json_file ) :: file_object type ( json_value ), pointer , optional :: p !! `json_value` object to cast !! as a `json_file` object. This !! will be nullified. #include \"json_initialize_arguments.inc\" logical ( LK ), intent ( in ), optional :: nullify_pointer !! if True, then `p` will be nullified !! if present. (default is True). Normally, !! this should be done, because the [[json_file]] will destroy !! the pointer when the class goes out of scope (causing `p` to be !! a dangling pointer). However, if the intent is to use `p` in !! a [[json_file]] and then call [[json_file:nullify]] and continue !! to use `p`, then this should be set to False. call file_object % initialize (& #include \"json_initialize_dummy_arguments.inc\" ) if ( present ( p )) then file_object % p => p ! we have to nullify it to avoid ! a dangling pointer when the file ! goes out of scope if ( present ( nullify_pointer )) then if ( nullify_pointer ) nullify ( p ) else nullify ( p ) end if end if end function initialize_json_file","tags":"","loc":"proc/initialize_json_file.html"},{"title":"initialize_json_file_from_string – JSON-Fortran","text":"private function initialize_json_file_from_string(str, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) result(file_object) Cast a JSON string as a json_file object.\n It also calls the initialize() method. Example type ( json_file ) :: f f = json_file ( '{\"key \": 1}' , trailing_spaces_significant = . true .) Note initialize_json_core , json_initialize , initialize_json_core_in_file , initialize_json_file , initialize_json_file_v2 , initialize_json_file_from_string ,\n and initialize_json_file_from_string_v2 all have a similar interface. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str string to load JSON data from logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: 1 : Default mode (see json_get_by_path_default ) 2 : as RFC 6901 “ JSON Pointer” paths\n (see json_get_by_path_rfc6901 ) 3 : JSONPath “bracket-notation”\n see json_get_by_path_jsonpath_bracket ) character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys If True [default] then no special checks\n are done to check for duplicate keys. If False, then after parsing, if any duplicate\n keys are found, an error is thrown. A call to json_value_validate will also check for\n duplicates. logical(kind=LK), intent(in), optional :: escape_solidus If True then the solidus “ / ” is always escaped\n “ \\/ ” when serializing JSON If False [default], then it is not escaped. Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : 1 : an exception will be raised if\n try to retrieve a null as a real. 2 : a null retrieved as a real\n will return a NaN. [default] 3 : a null retrieved as a real\n will return 0.0. integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: 1 : as strings (e.g., “NaN”,\n “Infinity”, “-Infinity”) [default] 2 : as JSON null values logical(kind=LK), intent(in), optional :: use_quiet_nan If true [default], null_to_real_mode=2 and string_to_real will use ieee_quiet_nan for NaN values. If false, ieee_signaling_nan will be used. logical(kind=LK), intent(in), optional :: strict_integer_type_checking If false, when parsing JSON , if an integer numeric value\n cannot be converted to an integer ( integer(IK) ),\n then an attempt is then make to convert it\n to a real ( real(RK) ). If true, an exception will be raised if the integer\n value cannot be read. (default is true) logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Return Value type( json_file ) Calls proc~~initialize_json_file_from_string~~CallsGraph proc~initialize_json_file_from_string initialize_json_file_from_string none~deserialize json_file%deserialize proc~initialize_json_file_from_string->none~deserialize none~initialize json_file%initialize proc~initialize_json_file_from_string->none~initialize proc~json_file_load_from_string json_file%json_file_load_from_string none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~initialize_json_core_in_file json_file%initialize_json_core_in_file none~initialize->proc~initialize_json_core_in_file proc~set_json_core_in_file json_file%set_json_core_in_file none~initialize->proc~set_json_core_in_file proc~json_initialize json_core%json_initialize proc~initialize_json_core_in_file->proc~json_initialize none~deserialize~2 json_core%deserialize proc~json_file_load_from_string->none~deserialize~2 proc~json_file_destroy json_file%json_file_destroy proc~json_file_load_from_string->proc~json_file_destroy proc~wrap_json_file_load_from_string->none~deserialize interface~to_unicode to_unicode proc~wrap_json_file_load_from_string->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_parse_string json_core%json_parse_string none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~destroy~3 json_core%destroy proc~json_file_destroy->none~destroy~3 none~throw_exception json_core%throw_exception proc~json_initialize->none~throw_exception proc~integer_to_string integer_to_string proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_parse_string->proc~json_initialize proc~json_parse_string->none~throw_exception proc~annotate_invalid_json json_core%annotate_invalid_json proc~json_parse_string->proc~annotate_invalid_json proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_parse_end json_core%json_parse_end proc~json_parse_string->proc~json_parse_end proc~json_prepare_parser json_core%json_prepare_parser proc~json_parse_string->proc~json_prepare_parser proc~json_value_create json_value_create proc~json_parse_string->proc~json_value_create proc~parse_value json_core%parse_value proc~json_parse_string->proc~parse_value proc~wrap_json_parse_string->interface~to_unicode proc~wrap_json_parse_string->none~deserialize~2 proc~annotate_invalid_json->proc~integer_to_string proc~get_current_line_from_file_sequential json_core%get_current_line_from_file_sequential proc~annotate_invalid_json->proc~get_current_line_from_file_sequential proc~get_current_line_from_file_stream json_core%get_current_line_from_file_stream proc~annotate_invalid_json->proc~get_current_line_from_file_stream proc~json_traverse json_core%json_traverse proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_parse_end->none~throw_exception proc~pop_char json_core%pop_char proc~json_parse_end->proc~pop_char proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~parse_value->none~throw_exception proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_for_chars json_core%parse_for_chars proc~parse_value->proc~parse_for_chars proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~parse_string json_core%parse_string proc~parse_value->proc~parse_string proc~parse_value->proc~pop_char proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~to_array json_core%to_array proc~parse_value->proc~to_array proc~to_logical json_core%to_logical proc~parse_value->proc~to_logical proc~to_null json_core%to_null proc~parse_value->proc~to_null proc~to_object json_core%to_object proc~parse_value->proc~to_object proc~to_string json_core%to_string proc~parse_value->proc~to_string proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_traverse->none~throw_exception proc~parse_array->none~destroy~3 proc~parse_array->none~throw_exception proc~parse_array->proc~json_value_create proc~parse_array->proc~parse_value proc~parse_array->proc~pop_char none~add~4 json_core%add proc~parse_array->none~add~4 proc~parse_for_chars->none~throw_exception proc~parse_for_chars->proc~pop_char proc~parse_number->proc~json_clear_exceptions proc~parse_number->proc~pop_char proc~parse_number->proc~push_char proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real proc~parse_object->none~destroy~3 proc~parse_object->none~throw_exception proc~parse_object->proc~json_value_create proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~pop_char proc~parse_object->none~add~4 proc~parse_string->none~throw_exception proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~push_char->none~throw_exception proc~push_char->proc~integer_to_string proc~to_array->proc~destroy_json_data proc~to_logical->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~initialize_json_file_from_string~~CalledByGraph proc~initialize_json_file_from_string initialize_json_file_from_string interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function initialize_json_file_from_string ( str ,& #include \"json_initialize_dummy_arguments.inc\" ) result ( file_object ) implicit none type ( json_file ) :: file_object character ( kind = CK , len =* ), intent ( in ) :: str !! string to load JSON data from #include \"json_initialize_arguments.inc\" call file_object % initialize (& #include \"json_initialize_dummy_arguments.inc\" ) call file_object % deserialize ( str ) end function initialize_json_file_from_string","tags":"","loc":"proc/initialize_json_file_from_string.html"},{"title":"initialize_json_file_from_string_v2 – JSON-Fortran","text":"private function initialize_json_file_from_string_v2(str, json_core_object) result(file_object) Cast a JSON string and a json_core object\nas a json_file object. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str string to load JSON data from type( json_core ), intent(in) :: json_core_object Return Value type( json_file ) Calls proc~~initialize_json_file_from_string_v2~~CallsGraph proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 none~deserialize json_file%deserialize proc~initialize_json_file_from_string_v2->none~deserialize proc~json_file_load_from_string json_file%json_file_load_from_string none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string none~deserialize~2 json_core%deserialize proc~json_file_load_from_string->none~deserialize~2 proc~json_file_destroy json_file%json_file_destroy proc~json_file_load_from_string->proc~json_file_destroy proc~wrap_json_file_load_from_string->none~deserialize interface~to_unicode to_unicode proc~wrap_json_file_load_from_string->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_parse_string json_core%json_parse_string none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~destroy~3 json_core%destroy proc~json_file_destroy->none~destroy~3 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy none~throw_exception json_core%throw_exception proc~json_parse_string->none~throw_exception proc~annotate_invalid_json json_core%annotate_invalid_json proc~json_parse_string->proc~annotate_invalid_json proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_initialize json_core%json_initialize proc~json_parse_string->proc~json_initialize proc~json_parse_end json_core%json_parse_end proc~json_parse_string->proc~json_parse_end proc~json_prepare_parser json_core%json_prepare_parser proc~json_parse_string->proc~json_prepare_parser proc~json_value_create json_value_create proc~json_parse_string->proc~json_value_create proc~parse_value json_core%parse_value proc~json_parse_string->proc~parse_value proc~wrap_json_parse_string->interface~to_unicode proc~wrap_json_parse_string->none~deserialize~2 proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~get_current_line_from_file_sequential json_core%get_current_line_from_file_sequential proc~annotate_invalid_json->proc~get_current_line_from_file_sequential proc~get_current_line_from_file_stream json_core%get_current_line_from_file_stream proc~annotate_invalid_json->proc~get_current_line_from_file_stream proc~integer_to_string integer_to_string proc~annotate_invalid_json->proc~integer_to_string proc~json_traverse json_core%json_traverse proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_initialize->none~throw_exception proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions proc~json_parse_end->none~throw_exception proc~pop_char json_core%pop_char proc~json_parse_end->proc~pop_char proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~parse_value->none~throw_exception proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_for_chars json_core%parse_for_chars proc~parse_value->proc~parse_for_chars proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~parse_string json_core%parse_string proc~parse_value->proc~parse_string proc~parse_value->proc~pop_char proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~to_array json_core%to_array proc~parse_value->proc~to_array proc~to_logical json_core%to_logical proc~parse_value->proc~to_logical proc~to_null json_core%to_null proc~parse_value->proc~to_null proc~to_object json_core%to_object proc~parse_value->proc~to_object proc~to_string json_core%to_string proc~parse_value->proc~to_string proc~json_traverse->none~throw_exception proc~parse_array->none~destroy~3 proc~parse_array->none~throw_exception proc~parse_array->proc~json_value_create proc~parse_array->proc~parse_value proc~parse_array->proc~pop_char none~add~4 json_core%add proc~parse_array->none~add~4 proc~parse_for_chars->none~throw_exception proc~parse_for_chars->proc~pop_char proc~parse_number->proc~json_clear_exceptions proc~parse_number->proc~pop_char proc~parse_number->proc~push_char proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real proc~parse_object->none~destroy~3 proc~parse_object->none~throw_exception proc~parse_object->proc~json_value_create proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~pop_char proc~parse_object->none~add~4 proc~parse_string->none~throw_exception proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~push_char->none~throw_exception proc~push_char->proc~integer_to_string proc~to_array->proc~destroy_json_data proc~to_logical->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~initialize_json_file_from_string_v2~~CalledByGraph proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function initialize_json_file_from_string_v2 ( str , json_core_object ) & result ( file_object ) implicit none type ( json_file ) :: file_object character ( kind = CK , len =* ), intent ( in ) :: str !! string to load JSON data from type ( json_core ), intent ( in ) :: json_core_object file_object % core = json_core_object call file_object % deserialize ( str ) end function initialize_json_file_from_string_v2","tags":"","loc":"proc/initialize_json_file_from_string_v2.html"},{"title":"initialize_json_file_v2 – JSON-Fortran","text":"private function initialize_json_file_v2(json_value_object, json_core_object) result(file_object) Cast a json_value pointer and a json_core object\nas a json_file object. Arguments Type Intent Optional Attributes Name type( json_value ), intent(in), pointer :: json_value_object type( json_core ), intent(in) :: json_core_object Return Value type( json_file ) Called by proc~~initialize_json_file_v2~~CalledByGraph proc~initialize_json_file_v2 initialize_json_file_v2 interface~json_file json_file interface~json_file->proc~initialize_json_file_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function initialize_json_file_v2 ( json_value_object , json_core_object ) & result ( file_object ) implicit none type ( json_file ) :: file_object type ( json_value ), pointer , intent ( in ) :: json_value_object type ( json_core ), intent ( in ) :: json_core_object file_object % p => json_value_object file_object % core = json_core_object end function initialize_json_file_v2","tags":"","loc":"proc/initialize_json_file_v2.html"},{"title":"json_file_failed – JSON-Fortran","text":"private pure function json_file_failed(me) result(failed) Check error status in the file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(in) :: me Return Value logical(kind=LK) will be true if there has been an error. Calls proc~~json_file_failed~~CallsGraph proc~json_file_failed json_file%json_file_failed proc~json_failed json_core%json_failed proc~json_file_failed->proc~json_failed Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_failed~~CalledByGraph proc~json_file_failed json_file%json_file_failed proc~json_file_move_pointer json_file%json_file_move_pointer proc~json_file_move_pointer->proc~json_file_failed Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure function json_file_failed ( me ) result ( failed ) implicit none class ( json_file ), intent ( in ) :: me logical ( LK ) :: failed !! will be true if there has been an error. failed = me % core % failed () end function json_file_failed","tags":"","loc":"proc/json_file_failed.html"},{"title":"json_file_valid_path – JSON-Fortran","text":"private function json_file_valid_path(me, path) result(found) Returns true if the path is present in the JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable Return Value logical(kind=LK) if the variable was found Calls proc~~json_file_valid_path~~CallsGraph proc~json_file_valid_path json_file%json_file_valid_path none~valid_path~2 json_core%valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_valid_path json_core%json_valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path none~get~2 json_core%get proc~json_valid_path->none~get~2 proc~wrap_json_valid_path->none~valid_path~2 interface~to_unicode to_unicode proc~wrap_json_valid_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_valid_path~~CalledByGraph proc~json_file_valid_path json_file%json_file_valid_path none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~wrap_json_file_valid_path->none~valid_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function json_file_valid_path ( me , path ) result ( found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ) :: found !! if the variable was found found = me % core % valid_path ( me % p , path ) end function json_file_valid_path","tags":"","loc":"proc/json_file_valid_path.html"},{"title":"json_file_valid_path_op – JSON-Fortran","text":"private function json_file_valid_path_op(path, me) result(found) A wrapper for json_file_valid_path for the .in. operator Type Bound json_file Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: path the path to the variable class( json_file ), intent(in) :: me the JSON file Return Value logical(kind=LK) if the variable was found Calls proc~~json_file_valid_path_op~~CallsGraph proc~json_file_valid_path_op json_file%json_file_valid_path_op none~destroy~3 json_core%destroy proc~json_file_valid_path_op->none~destroy~3 none~valid_path~2 json_core%valid_path proc~json_file_valid_path_op->none~valid_path~2 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_valid_path json_core%json_valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path none~get~2 json_core%get proc~json_valid_path->none~get~2 proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~wrap_json_valid_path->none~valid_path~2 interface~to_unicode to_unicode proc~wrap_json_valid_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function json_file_valid_path_op ( path , me ) result ( found ) implicit none character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable class ( json_file ), intent ( in ) :: me !! the JSON file logical ( LK ) :: found !! if the variable was found type ( json_core ) :: core_copy !! a copy of `core` from `me` ! This is sort of a hack. Since `me` has to have `intent(in)` ! for the operator to work, we need to make a copy of `me%core` ! so we can call the low level routine (since it needs it to ! be `intent(inout)`) because it's technically possible for this ! function to raise an exception. This normally should never ! happen here unless the JSON structure is malformed. core_copy = me % core ! copy the settings (need them to know ! how to interpret the path) found = core_copy % valid_path ( me % p , path ) ! call the low-level routine call core_copy % destroy () ! just in case (but not really necessary) end function json_file_valid_path_op","tags":"","loc":"proc/json_file_valid_path_op.html"},{"title":"wrap_initialize_json_file_from_string – JSON-Fortran","text":"private function wrap_initialize_json_file_from_string(str, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) result(file_object) Alternate version of initialize_json_file_from_string , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: str string to load JSON data from logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: 1 : Default mode (see json_get_by_path_default ) 2 : as RFC 6901 “ JSON Pointer” paths\n (see json_get_by_path_rfc6901 ) 3 : JSONPath “bracket-notation”\n see json_get_by_path_jsonpath_bracket ) character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys If True [default] then no special checks\n are done to check for duplicate keys. If False, then after parsing, if any duplicate\n keys are found, an error is thrown. A call to json_value_validate will also check for\n duplicates. logical(kind=LK), intent(in), optional :: escape_solidus If True then the solidus “ / ” is always escaped\n “ \\/ ” when serializing JSON If False [default], then it is not escaped. Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : 1 : an exception will be raised if\n try to retrieve a null as a real. 2 : a null retrieved as a real\n will return a NaN. [default] 3 : a null retrieved as a real\n will return 0.0. integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: 1 : as strings (e.g., “NaN”,\n “Infinity”, “-Infinity”) [default] 2 : as JSON null values logical(kind=LK), intent(in), optional :: use_quiet_nan If true [default], null_to_real_mode=2 and string_to_real will use ieee_quiet_nan for NaN values. If false, ieee_signaling_nan will be used. logical(kind=LK), intent(in), optional :: strict_integer_type_checking If false, when parsing JSON , if an integer numeric value\n cannot be converted to an integer ( integer(IK) ),\n then an attempt is then make to convert it\n to a real ( real(RK) ). If true, an exception will be raised if the integer\n value cannot be read. (default is true) logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Return Value type( json_file ) Calls proc~~wrap_initialize_json_file_from_string~~CallsGraph proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~to_unicode to_unicode proc~wrap_initialize_json_file_from_string->interface~to_unicode proc~initialize_json_file_from_string initialize_json_file_from_string proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~deserialize json_file%deserialize proc~initialize_json_file_from_string->none~deserialize none~initialize json_file%initialize proc~initialize_json_file_from_string->none~initialize proc~json_file_load_from_string json_file%json_file_load_from_string none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~initialize_json_core_in_file json_file%initialize_json_core_in_file none~initialize->proc~initialize_json_core_in_file proc~set_json_core_in_file json_file%set_json_core_in_file none~initialize->proc~set_json_core_in_file proc~json_initialize json_core%json_initialize proc~initialize_json_core_in_file->proc~json_initialize none~deserialize~2 json_core%deserialize proc~json_file_load_from_string->none~deserialize~2 proc~json_file_destroy json_file%json_file_destroy proc~json_file_load_from_string->proc~json_file_destroy proc~wrap_json_file_load_from_string->interface~to_unicode proc~wrap_json_file_load_from_string->none~deserialize proc~json_parse_string json_core%json_parse_string none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~destroy~3 json_core%destroy proc~json_file_destroy->none~destroy~3 none~throw_exception json_core%throw_exception proc~json_initialize->none~throw_exception proc~integer_to_string integer_to_string proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_parse_string->proc~json_initialize proc~json_parse_string->none~throw_exception proc~annotate_invalid_json json_core%annotate_invalid_json proc~json_parse_string->proc~annotate_invalid_json proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_parse_end json_core%json_parse_end proc~json_parse_string->proc~json_parse_end proc~json_prepare_parser json_core%json_prepare_parser proc~json_parse_string->proc~json_prepare_parser proc~json_value_create json_value_create proc~json_parse_string->proc~json_value_create proc~parse_value json_core%parse_value proc~json_parse_string->proc~parse_value proc~wrap_json_parse_string->interface~to_unicode proc~wrap_json_parse_string->none~deserialize~2 proc~annotate_invalid_json->proc~integer_to_string proc~get_current_line_from_file_sequential json_core%get_current_line_from_file_sequential proc~annotate_invalid_json->proc~get_current_line_from_file_sequential proc~get_current_line_from_file_stream json_core%get_current_line_from_file_stream proc~annotate_invalid_json->proc~get_current_line_from_file_stream proc~json_traverse json_core%json_traverse proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_parse_end->none~throw_exception proc~pop_char json_core%pop_char proc~json_parse_end->proc~pop_char proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~parse_value->none~throw_exception proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_for_chars json_core%parse_for_chars proc~parse_value->proc~parse_for_chars proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~parse_string json_core%parse_string proc~parse_value->proc~parse_string proc~parse_value->proc~pop_char proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~to_array json_core%to_array proc~parse_value->proc~to_array proc~to_logical json_core%to_logical proc~parse_value->proc~to_logical proc~to_null json_core%to_null proc~parse_value->proc~to_null proc~to_object json_core%to_object proc~parse_value->proc~to_object proc~to_string json_core%to_string proc~parse_value->proc~to_string proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_traverse->none~throw_exception proc~parse_array->none~destroy~3 proc~parse_array->none~throw_exception proc~parse_array->proc~json_value_create proc~parse_array->proc~parse_value proc~parse_array->proc~pop_char none~add~4 json_core%add proc~parse_array->none~add~4 proc~parse_for_chars->none~throw_exception proc~parse_for_chars->proc~pop_char proc~parse_number->proc~json_clear_exceptions proc~parse_number->proc~pop_char proc~parse_number->proc~push_char proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real proc~parse_object->none~destroy~3 proc~parse_object->none~throw_exception proc~parse_object->proc~json_value_create proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~pop_char proc~parse_object->none~add~4 proc~parse_string->none~throw_exception proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~push_char->none~throw_exception proc~push_char->proc~integer_to_string proc~to_array->proc~destroy_json_data proc~to_logical->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_initialize_json_file_from_string~~CalledByGraph proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file json_file interface~json_file->proc~wrap_initialize_json_file_from_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function wrap_initialize_json_file_from_string ( str ,& #include \"json_initialize_dummy_arguments.inc\" ) result ( file_object ) implicit none type ( json_file ) :: file_object character ( kind = CDK , len =* ), intent ( in ) :: str !! string to load JSON data from #include \"json_initialize_arguments.inc\" file_object = initialize_json_file_from_string (& to_unicode ( str ),& #include \"json_initialize_dummy_arguments.inc\" ) end function wrap_initialize_json_file_from_string","tags":"","loc":"proc/wrap_initialize_json_file_from_string.html"},{"title":"wrap_initialize_json_file_from_string_v2 – JSON-Fortran","text":"private function wrap_initialize_json_file_from_string_v2(str, json_core_object) result(file_object) Alternate version of initialize_json_file_from_string_v2 , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: str string to load JSON data from type( json_core ), intent(in) :: json_core_object Return Value type( json_file ) Calls proc~~wrap_initialize_json_file_from_string_v2~~CallsGraph proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~to_unicode to_unicode proc~wrap_initialize_json_file_from_string_v2->interface~to_unicode proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~deserialize json_file%deserialize proc~initialize_json_file_from_string_v2->none~deserialize proc~json_file_load_from_string json_file%json_file_load_from_string none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string none~deserialize~2 json_core%deserialize proc~json_file_load_from_string->none~deserialize~2 proc~json_file_destroy json_file%json_file_destroy proc~json_file_load_from_string->proc~json_file_destroy proc~wrap_json_file_load_from_string->interface~to_unicode proc~wrap_json_file_load_from_string->none~deserialize proc~json_parse_string json_core%json_parse_string none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~destroy~3 json_core%destroy proc~json_file_destroy->none~destroy~3 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy none~throw_exception json_core%throw_exception proc~json_parse_string->none~throw_exception proc~annotate_invalid_json json_core%annotate_invalid_json proc~json_parse_string->proc~annotate_invalid_json proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_initialize json_core%json_initialize proc~json_parse_string->proc~json_initialize proc~json_parse_end json_core%json_parse_end proc~json_parse_string->proc~json_parse_end proc~json_prepare_parser json_core%json_prepare_parser proc~json_parse_string->proc~json_prepare_parser proc~json_value_create json_value_create proc~json_parse_string->proc~json_value_create proc~parse_value json_core%parse_value proc~json_parse_string->proc~parse_value proc~wrap_json_parse_string->interface~to_unicode proc~wrap_json_parse_string->none~deserialize~2 proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~get_current_line_from_file_sequential json_core%get_current_line_from_file_sequential proc~annotate_invalid_json->proc~get_current_line_from_file_sequential proc~get_current_line_from_file_stream json_core%get_current_line_from_file_stream proc~annotate_invalid_json->proc~get_current_line_from_file_stream proc~integer_to_string integer_to_string proc~annotate_invalid_json->proc~integer_to_string proc~json_traverse json_core%json_traverse proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_initialize->none~throw_exception proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions proc~json_parse_end->none~throw_exception proc~pop_char json_core%pop_char proc~json_parse_end->proc~pop_char proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~parse_value->none~throw_exception proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_for_chars json_core%parse_for_chars proc~parse_value->proc~parse_for_chars proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~parse_string json_core%parse_string proc~parse_value->proc~parse_string proc~parse_value->proc~pop_char proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~to_array json_core%to_array proc~parse_value->proc~to_array proc~to_logical json_core%to_logical proc~parse_value->proc~to_logical proc~to_null json_core%to_null proc~parse_value->proc~to_null proc~to_object json_core%to_object proc~parse_value->proc~to_object proc~to_string json_core%to_string proc~parse_value->proc~to_string proc~json_traverse->none~throw_exception proc~parse_array->none~destroy~3 proc~parse_array->none~throw_exception proc~parse_array->proc~json_value_create proc~parse_array->proc~parse_value proc~parse_array->proc~pop_char none~add~4 json_core%add proc~parse_array->none~add~4 proc~parse_for_chars->none~throw_exception proc~parse_for_chars->proc~pop_char proc~parse_number->proc~json_clear_exceptions proc~parse_number->proc~pop_char proc~parse_number->proc~push_char proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real proc~parse_object->none~destroy~3 proc~parse_object->none~throw_exception proc~parse_object->proc~json_value_create proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~pop_char proc~parse_object->none~add~4 proc~parse_string->none~throw_exception proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~push_char->none~throw_exception proc~push_char->proc~integer_to_string proc~to_array->proc~destroy_json_data proc~to_logical->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_initialize_json_file_from_string_v2~~CalledByGraph proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file json_file interface~json_file->proc~wrap_initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function wrap_initialize_json_file_from_string_v2 ( str , json_core_object ) & result ( file_object ) implicit none type ( json_file ) :: file_object character ( kind = CDK , len =* ), intent ( in ) :: str !! string to load JSON data from type ( json_core ), intent ( in ) :: json_core_object file_object = initialize_json_file_from_string_v2 ( to_unicode ( str ), json_core_object ) end function wrap_initialize_json_file_from_string_v2","tags":"","loc":"proc/wrap_initialize_json_file_from_string_v2.html"},{"title":"wrap_json_file_valid_path – JSON-Fortran","text":"private function wrap_json_file_valid_path(me, path) result(found) Alternate version of json_file_valid_path , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable Return Value logical(kind=LK) if the variable was found Calls proc~~wrap_json_file_valid_path~~CallsGraph proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path interface~to_unicode to_unicode proc~wrap_json_file_valid_path->interface~to_unicode none~valid_path json_file%valid_path proc~wrap_json_file_valid_path->none~valid_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~valid_path->proc~wrap_json_file_valid_path proc~json_file_valid_path json_file%json_file_valid_path none~valid_path->proc~json_file_valid_path none~valid_path~2 json_core%valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_valid_path json_core%json_valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path none~get~2 json_core%get proc~json_valid_path->none~get~2 proc~wrap_json_valid_path->interface~to_unicode proc~wrap_json_valid_path->none~valid_path~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_valid_path~~CalledByGraph proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path json_file%valid_path proc~wrap_json_file_valid_path->none~valid_path none~valid_path->proc~wrap_json_file_valid_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function wrap_json_file_valid_path ( me , path ) result ( found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ) :: found !! if the variable was found found = me % valid_path ( to_unicode ( path )) end function wrap_json_file_valid_path","tags":"","loc":"proc/wrap_json_file_valid_path.html"},{"title":"wrap_json_file_valid_path_op – JSON-Fortran","text":"private function wrap_json_file_valid_path_op(path, me) result(found) Alternate version of json_file_valid_path_op , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: path the path to the variable class( json_file ), intent(in) :: me the JSON file Return Value logical(kind=LK) if the variable was found Calls proc~~wrap_json_file_valid_path_op~~CallsGraph proc~wrap_json_file_valid_path_op json_file%wrap_json_file_valid_path_op interface~to_unicode to_unicode proc~wrap_json_file_valid_path_op->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function wrap_json_file_valid_path_op ( path , me ) result ( found ) implicit none character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable class ( json_file ), intent ( in ) :: me !! the JSON file logical ( LK ) :: found !! if the variable was found found = to_unicode ( path ) . in . me end function wrap_json_file_valid_path_op","tags":"","loc":"proc/wrap_json_file_valid_path_op.html"},{"title":"assign_json_file – JSON-Fortran","text":"private subroutine assign_json_file(me, f) Assignment operator for json_core = json_core .\nThis will duplicate the json_core and also\nperform a deep copy of the json_value data structure. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(out) :: me type( json_file ), intent(in) :: f Calls proc~~assign_json_file~~CallsGraph proc~assign_json_file json_file%assign_json_file proc~json_clone json_core%json_clone proc~assign_json_file->proc~json_clone proc~json_value_clone_func json_core%json_value_clone_func proc~json_clone->proc~json_value_clone_func proc~json_value_clone_func->proc~json_value_clone_func Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine assign_json_file ( me , f ) implicit none class ( json_file ), intent ( out ) :: me type ( json_file ), intent ( in ) :: f me % core = f % core ! no pointers here so OK to copy call me % core % clone ( f % p , me % p ) end subroutine assign_json_file","tags":"","loc":"proc/assign_json_file.html"},{"title":"assign_json_file_to_string – JSON-Fortran","text":"private subroutine assign_json_file_to_string(str, me) Assignment operator for character = json_core .\n This is just a wrapper for the json_value_to_string routine. Note If an exception is raised or the file contains no data,\n this will return an empty string. Type Bound json_file Arguments Type Intent Optional Attributes Name character(kind=CK, len=:), intent(out), allocatable :: str class( json_file ), intent(in) :: me Calls proc~~assign_json_file_to_string~~CallsGraph proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~json_failed json_core%json_failed proc~assign_json_file_to_string->proc~json_failed proc~json_value_to_string json_core%json_value_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_value_print json_core%json_value_print proc~json_value_to_string->proc~json_value_print proc~json_value_print->proc~json_failed proc~json_value_print->proc~json_value_print none~throw_exception json_core%throw_exception proc~json_value_print->none~throw_exception proc~escape_string escape_string proc~json_value_print->proc~escape_string proc~integer_to_string integer_to_string proc~json_value_print->proc~integer_to_string proc~json_is_vector json_core%json_is_vector proc~json_value_print->proc~json_is_vector proc~real_to_string real_to_string proc~json_value_print->proc~real_to_string proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_is_vector->none~throw_exception none~info~2 json_core%info proc~json_is_vector->none~info~2 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception proc~convert->none~info~2 none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~throw_exception proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_string_info->proc~json_clear_exceptions proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine assign_json_file_to_string ( str , me ) implicit none character ( kind = CK , len = :), allocatable , intent ( out ) :: str class ( json_file ), intent ( in ) :: me type ( json_core ) :: core_copy !! a copy of `core` from `me` if ( me % core % failed () . or . . not . associated ( me % p )) then str = CK_ '' else ! This is sort of a hack. Since `me` has to have `intent(in)` ! for the assignment to work, we need to make a copy of `me%core` ! so we can call the low level routine (since it needs it to ! be `intent(inout)`) because it's possible for this ! function to raise an exception. core_copy = me % core ! copy the parser settings call core_copy % serialize ( me % p , str ) if ( me % core % failed ()) str = CK_ '' end if end subroutine assign_json_file_to_string","tags":"","loc":"proc/assign_json_file_to_string.html"},{"title":"assign_string_to_json_file – JSON-Fortran","text":"private subroutine assign_string_to_json_file(me, str) Assignment operator for json_core = character.\nThis is just a wrapper for the json_file_load_from_string routine. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: str Calls proc~~assign_string_to_json_file~~CallsGraph proc~assign_string_to_json_file json_file%assign_string_to_json_file none~deserialize json_file%deserialize proc~assign_string_to_json_file->none~deserialize proc~json_clear_exceptions json_core%json_clear_exceptions proc~assign_string_to_json_file->proc~json_clear_exceptions proc~json_failed json_core%json_failed proc~assign_string_to_json_file->proc~json_failed proc~json_file_destroy json_file%json_file_destroy proc~assign_string_to_json_file->proc~json_file_destroy proc~json_file_load_from_string json_file%json_file_load_from_string none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string none~destroy~3 json_core%destroy proc~json_file_destroy->none~destroy~3 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_file_load_from_string->proc~json_file_destroy none~deserialize~2 json_core%deserialize proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_file_load_from_string->none~deserialize interface~to_unicode to_unicode proc~wrap_json_file_load_from_string->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_parse_string json_core%json_parse_string none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data none~throw_exception json_core%throw_exception proc~json_parse_string->none~throw_exception proc~annotate_invalid_json json_core%annotate_invalid_json proc~json_parse_string->proc~annotate_invalid_json proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_initialize json_core%json_initialize proc~json_parse_string->proc~json_initialize proc~json_parse_end json_core%json_parse_end proc~json_parse_string->proc~json_parse_end proc~json_prepare_parser json_core%json_prepare_parser proc~json_parse_string->proc~json_prepare_parser proc~json_value_create json_value_create proc~json_parse_string->proc~json_value_create proc~parse_value json_core%parse_value proc~json_parse_string->proc~parse_value proc~wrap_json_parse_string->interface~to_unicode proc~wrap_json_parse_string->none~deserialize~2 proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~get_current_line_from_file_sequential json_core%get_current_line_from_file_sequential proc~annotate_invalid_json->proc~get_current_line_from_file_sequential proc~get_current_line_from_file_stream json_core%get_current_line_from_file_stream proc~annotate_invalid_json->proc~get_current_line_from_file_stream proc~integer_to_string integer_to_string proc~annotate_invalid_json->proc~integer_to_string proc~json_traverse json_core%json_traverse proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_initialize->proc~json_clear_exceptions proc~json_initialize->none~throw_exception proc~json_initialize->proc~integer_to_string proc~json_parse_end->none~throw_exception proc~pop_char json_core%pop_char proc~json_parse_end->proc~pop_char proc~parse_value->none~throw_exception proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_for_chars json_core%parse_for_chars proc~parse_value->proc~parse_for_chars proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~parse_string json_core%parse_string proc~parse_value->proc~parse_string proc~parse_value->proc~pop_char proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~to_array json_core%to_array proc~parse_value->proc~to_array proc~to_logical json_core%to_logical proc~parse_value->proc~to_logical proc~to_null json_core%to_null proc~parse_value->proc~to_null proc~to_object json_core%to_object proc~parse_value->proc~to_object proc~to_string json_core%to_string proc~parse_value->proc~to_string proc~json_traverse->none~throw_exception proc~parse_array->none~destroy~3 proc~parse_array->none~throw_exception proc~parse_array->proc~json_value_create proc~parse_array->proc~parse_value proc~parse_array->proc~pop_char none~add~4 json_core%add proc~parse_array->none~add~4 proc~parse_for_chars->none~throw_exception proc~parse_for_chars->proc~pop_char proc~parse_number->proc~json_clear_exceptions proc~parse_number->proc~pop_char proc~parse_number->proc~push_char proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real proc~parse_object->none~destroy~3 proc~parse_object->none~throw_exception proc~parse_object->proc~json_value_create proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~pop_char proc~parse_object->none~add~4 proc~parse_string->none~throw_exception proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~push_char->none~throw_exception proc~push_char->proc~integer_to_string proc~to_array->proc~destroy_json_data proc~to_logical->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~assign_string_to_json_file~~CalledByGraph proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine assign_string_to_json_file ( me , str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: str if ( associated ( me % p )) call me % destroy () if ( me % core % failed ()) call me % core % clear_exceptions () call me % deserialize ( str ) end subroutine assign_string_to_json_file","tags":"","loc":"proc/assign_string_to_json_file.html"},{"title":"finalize_json_file – JSON-Fortran","text":"private subroutine finalize_json_file(me) Finalizer for json_file class. Just a wrapper for json_file_destroy . Arguments Type Intent Optional Attributes Name type( json_file ), intent(inout) :: me Calls proc~~finalize_json_file~~CallsGraph proc~finalize_json_file finalize_json_file proc~json_file_destroy json_file%json_file_destroy proc~finalize_json_file->proc~json_file_destroy none~destroy~3 json_core%destroy proc~json_file_destroy->none~destroy~3 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine finalize_json_file ( me ) implicit none type ( json_file ), intent ( inout ) :: me call me % destroy ( destroy_core = . true .) end subroutine finalize_json_file","tags":"","loc":"proc/finalize_json_file.html"},{"title":"get_json_core_in_file – JSON-Fortran","text":"private subroutine get_json_core_in_file(me, core) Get a copy of the json_core in this json_file . Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(in) :: me type( json_core ), intent(out) :: core Source Code subroutine get_json_core_in_file ( me , core ) implicit none class ( json_file ), intent ( in ) :: me type ( json_core ), intent ( out ) :: core core = me % core end subroutine get_json_core_in_file","tags":"","loc":"proc/get_json_core_in_file.html"},{"title":"initialize_json_core_in_file – JSON-Fortran","text":"private subroutine initialize_json_core_in_file(me, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) Initialize the json_core for this json_file .\n This is just a wrapper for json_initialize . Note This does not destroy the data in the file. Note initialize_json_core , json_initialize , initialize_json_core_in_file , initialize_json_file , initialize_json_file_v2 , initialize_json_file_from_string ,\n and initialize_json_file_from_string_v2 all have a similar interface. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: 1 : Default mode (see json_get_by_path_default ) 2 : as RFC 6901 “ JSON Pointer” paths\n (see json_get_by_path_rfc6901 ) 3 : JSONPath “bracket-notation”\n see json_get_by_path_jsonpath_bracket ) character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys If True [default] then no special checks\n are done to check for duplicate keys. If False, then after parsing, if any duplicate\n keys are found, an error is thrown. A call to json_value_validate will also check for\n duplicates. logical(kind=LK), intent(in), optional :: escape_solidus If True then the solidus “ / ” is always escaped\n “ \\/ ” when serializing JSON If False [default], then it is not escaped. Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : 1 : an exception will be raised if\n try to retrieve a null as a real. 2 : a null retrieved as a real\n will return a NaN. [default] 3 : a null retrieved as a real\n will return 0.0. integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: 1 : as strings (e.g., “NaN”,\n “Infinity”, “-Infinity”) [default] 2 : as JSON null values logical(kind=LK), intent(in), optional :: use_quiet_nan If true [default], null_to_real_mode=2 and string_to_real will use ieee_quiet_nan for NaN values. If false, ieee_signaling_nan will be used. logical(kind=LK), intent(in), optional :: strict_integer_type_checking If false, when parsing JSON , if an integer numeric value\n cannot be converted to an integer ( integer(IK) ),\n then an attempt is then make to convert it\n to a real ( real(RK) ). If true, an exception will be raised if the integer\n value cannot be read. (default is true) logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Calls proc~~initialize_json_core_in_file~~CallsGraph proc~initialize_json_core_in_file json_file%initialize_json_core_in_file proc~json_initialize json_core%json_initialize proc~initialize_json_core_in_file->proc~json_initialize none~throw_exception json_core%throw_exception proc~json_initialize->none~throw_exception proc~integer_to_string integer_to_string proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~initialize_json_core_in_file~~CalledByGraph proc~initialize_json_core_in_file json_file%initialize_json_core_in_file none~initialize json_file%initialize none~initialize->proc~initialize_json_core_in_file proc~initialize_json_file initialize_json_file proc~initialize_json_file->none~initialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~initialize proc~json_file_move_pointer json_file%json_file_move_pointer proc~json_file_move_pointer->none~initialize interface~json_file json_file interface~json_file->proc~initialize_json_file interface~json_file->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine initialize_json_core_in_file ( me ,& #include \"json_initialize_dummy_arguments.inc\" ) implicit none class ( json_file ), intent ( inout ) :: me #include \"json_initialize_arguments.inc\" call me % core % initialize (& #include \"json_initialize_dummy_arguments.inc\" ) end subroutine initialize_json_core_in_file","tags":"","loc":"proc/initialize_json_core_in_file.html"},{"title":"json_file_add – JSON-Fortran","text":"private subroutine json_file_add(me, p, destroy_original) Add a json_value pointer as the root object to a JSON file. Note This is mostly equivalent to: f = [[ json_file ]]( p ) But without the finalization calls. And: if ( destroy_original ) call [[ json_file ]]% destroy () call [[ json_file ]]% add ( '$' , p ) Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me type( json_value ), intent(in), pointer :: p pointer to the variable to add logical(kind=LK), intent(in), optional :: destroy_original if the file currently contains\nan associated pointer, it is\ndestroyed. [Default is True] Calls proc~~json_file_add~~CallsGraph proc~json_file_add json_file%json_file_add proc~json_file_destroy json_file%json_file_destroy proc~json_file_add->proc~json_file_destroy none~destroy~3 json_core%destroy proc~json_file_destroy->none~destroy~3 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_add ( me , p , destroy_original ) implicit none class ( json_file ), intent ( inout ) :: me type ( json_value ), pointer , intent ( in ) :: p !! pointer to the variable to add logical ( LK ), intent ( in ), optional :: destroy_original !! if the file currently contains !! an associated pointer, it is !! destroyed. [Default is True] logical ( LK ) :: destroy !! if `me%p` is to be destroyed if ( present ( destroy_original )) then destroy = destroy_original else destroy = . true . ! default end if if ( destroy ) call me % destroy () me % p => p end subroutine json_file_add","tags":"","loc":"proc/json_file_add.html"},{"title":"json_file_add_integer – JSON-Fortran","text":"private subroutine json_file_add_integer(me, path, val, found, was_created) Add an integer value to a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_file_add_integer~~CallsGraph proc~json_file_add_integer json_file%json_file_add_integer none~add_by_path~2 json_core%add_by_path proc~json_file_add_integer->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_integer->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->none~create_object proc~wrap_json_value_create_object->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_add_integer~~CalledByGraph proc~json_file_add_integer json_file%json_file_add_integer proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_add_integer ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , val , found , was_created ) end subroutine json_file_add_integer","tags":"","loc":"proc/json_file_add_integer.html"},{"title":"json_file_add_integer_vec – JSON-Fortran","text":"private subroutine json_file_add_integer_vec(me, path, vec, found, was_created) Add an integer vector to a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_file_add_integer_vec~~CallsGraph proc~json_file_add_integer_vec json_file%json_file_add_integer_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_integer_vec->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_integer_vec->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->none~create_object proc~wrap_json_value_create_object->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_add_integer_vec~~CalledByGraph proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_add_integer_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , vec , found , was_created ) end subroutine json_file_add_integer_vec","tags":"","loc":"proc/json_file_add_integer_vec.html"},{"title":"json_file_add_logical – JSON-Fortran","text":"private subroutine json_file_add_logical(me, path, val, found, was_created) Add a logical(LK) value to a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_file_add_logical~~CallsGraph proc~json_file_add_logical json_file%json_file_add_logical none~add_by_path~2 json_core%add_by_path proc~json_file_add_logical->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_logical->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->none~create_object proc~wrap_json_value_create_object->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_add_logical~~CalledByGraph proc~json_file_add_logical json_file%json_file_add_logical proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_add_logical ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , val , found , was_created ) end subroutine json_file_add_logical","tags":"","loc":"proc/json_file_add_logical.html"},{"title":"json_file_add_logical_vec – JSON-Fortran","text":"private subroutine json_file_add_logical_vec(me, path, vec, found, was_created) Add a logical(LK) vector to a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_file_add_logical_vec~~CallsGraph proc~json_file_add_logical_vec json_file%json_file_add_logical_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_logical_vec->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_logical_vec->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->none~create_object proc~wrap_json_value_create_object->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_add_logical_vec~~CalledByGraph proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_add_logical_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , vec , found , was_created ) end subroutine json_file_add_logical_vec","tags":"","loc":"proc/json_file_add_logical_vec.html"},{"title":"json_file_add_object – JSON-Fortran","text":"private subroutine json_file_add_object(me, path, p, found, was_created) Add a json_value pointer to an object to a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(in), pointer :: p pointer to the variable to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_file_add_object~~CallsGraph proc~json_file_add_object json_file%json_file_add_object none~add_by_path~2 json_core%add_by_path proc~json_file_add_object->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_object->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->none~create_object proc~wrap_json_value_create_object->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_add_object~~CalledByGraph proc~json_file_add_object json_file%json_file_add_object proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_add_object ( me , path , p , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable type ( json_value ), pointer , intent ( in ) :: p !! pointer to the variable to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , p , found , was_created ) end subroutine json_file_add_object","tags":"","loc":"proc/json_file_add_object.html"},{"title":"json_file_add_real – JSON-Fortran","text":"private subroutine json_file_add_real(me, path, val, found, was_created) Add a real(RK) variable value to a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_file_add_real~~CallsGraph proc~json_file_add_real json_file%json_file_add_real none~add_by_path~2 json_core%add_by_path proc~json_file_add_real->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_real->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->none~create_object proc~wrap_json_value_create_object->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_add_real~~CalledByGraph proc~json_file_add_real json_file%json_file_add_real proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_add_real ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , val , found , was_created ) end subroutine json_file_add_real","tags":"","loc":"proc/json_file_add_real.html"},{"title":"json_file_add_real32 – JSON-Fortran","text":"private subroutine json_file_add_real32(me, path, val, found, was_created) Alternate version of json_file_add_real where val is real32 . Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_file_add_real32~~CallsGraph proc~json_file_add_real32 json_file%json_file_add_real32 none~add_by_path~2 json_core%add_by_path proc~json_file_add_real32->none~add_by_path~2 proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_add_real32~~CalledByGraph proc~json_file_add_real32 json_file%json_file_add_real32 proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_add_real32 ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % core % add_by_path ( me % p , path , val , found , was_created ) end subroutine json_file_add_real32","tags":"","loc":"proc/json_file_add_real32.html"},{"title":"json_file_add_real32_vec – JSON-Fortran","text":"private subroutine json_file_add_real32_vec(me, path, vec, found, was_created) Alternate version of json_file_add_real_vec where vec is real32 . Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_file_add_real32_vec~~CallsGraph proc~json_file_add_real32_vec json_file%json_file_add_real32_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_add_real32_vec~~CalledByGraph proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_add_real32_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % core % add_by_path ( me % p , path , vec , found , was_created ) end subroutine json_file_add_real32_vec","tags":"","loc":"proc/json_file_add_real32_vec.html"},{"title":"json_file_add_real_vec – JSON-Fortran","text":"private subroutine json_file_add_real_vec(me, path, vec, found, was_created) Add a real(RK) vector to a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_file_add_real_vec~~CallsGraph proc~json_file_add_real_vec json_file%json_file_add_real_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_real_vec->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_real_vec->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->none~create_object proc~wrap_json_value_create_object->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_add_real_vec~~CalledByGraph proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_add_real_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , vec , found , was_created ) end subroutine json_file_add_real_vec","tags":"","loc":"proc/json_file_add_real_vec.html"},{"title":"json_file_add_string – JSON-Fortran","text":"private subroutine json_file_add_string(me, path, val, found, was_created, trim_str, adjustl_str) Add a character string to a json file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) Calls proc~~json_file_add_string~~CallsGraph proc~json_file_add_string json_file%json_file_add_string none~add_by_path~2 json_core%add_by_path proc~json_file_add_string->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_string->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->none~create_object proc~wrap_json_value_create_object->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_add_string~~CalledByGraph proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_add_string ( me , path , val , found , was_created , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (note that ADJUSTL is done before TRIM) if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , val , found , was_created , trim_str , adjustl_str ) end subroutine json_file_add_string","tags":"","loc":"proc/json_file_add_string.html"},{"title":"json_file_add_string_path_ascii – JSON-Fortran","text":"private subroutine json_file_add_string_path_ascii(me, path, val, found, was_created, trim_str, adjustl_str) Wrapper for json_file_add_string where “path” is kind=CDK). Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) Calls proc~~json_file_add_string_path_ascii~~CallsGraph proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii interface~to_unicode to_unicode proc~json_file_add_string_path_ascii->interface~to_unicode none~create_object json_core%create_object proc~json_file_add_string_path_ascii->none~create_object proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_file_add_string->none~create_object none~add_by_path~2 json_core%add_by_path proc~json_file_add_string->none~add_by_path~2 proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_add_string_path_ascii ( me , path , val , found ,& was_created , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (note that ADJUSTL is done before TRIM) if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % json_file_add_string ( to_unicode ( path ), val , found ,& was_created , trim_str , adjustl_str ) end subroutine json_file_add_string_path_ascii","tags":"","loc":"proc/json_file_add_string_path_ascii.html"},{"title":"json_file_add_string_value_ascii – JSON-Fortran","text":"private subroutine json_file_add_string_value_ascii(me, path, val, found, was_created, trim_str, adjustl_str) Wrapper for json_file_add_string where “val” is kind=CDK). Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) Calls proc~~json_file_add_string_value_ascii~~CallsGraph proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii interface~to_unicode to_unicode proc~json_file_add_string_value_ascii->interface~to_unicode none~create_object json_core%create_object proc~json_file_add_string_value_ascii->none~create_object proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_file_add_string->none~create_object none~add_by_path~2 json_core%add_by_path proc~json_file_add_string->none~add_by_path~2 proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_add_string_value_ascii ( me , path , val , found ,& was_created , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (note that ADJUSTL is done before TRIM) if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % json_file_add_string ( path , to_unicode ( val ), found ,& was_created , trim_str , adjustl_str ) end subroutine json_file_add_string_value_ascii","tags":"","loc":"proc/json_file_add_string_value_ascii.html"},{"title":"json_file_add_string_vec – JSON-Fortran","text":"private subroutine json_file_add_string_vec(me, path, vec, found, was_created, ilen, trim_str, adjustl_str) Add a string vector to a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element\n(note that ADJUSTL is done before TRIM) Calls proc~~json_file_add_string_vec~~CallsGraph proc~json_file_add_string_vec json_file%json_file_add_string_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_string_vec->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_string_vec->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->none~create_object proc~wrap_json_value_create_object->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_add_string_vec~~CalledByGraph proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_add_string_vec ( me , path , vec , found ,& was_created , ilen , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created integer ( IK ), dimension (:), intent ( in ), optional :: ilen !! the string lengths of each !! element in `value`. If not present, !! the full `len(value)` string is added !! for each element. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element !! (note that ADJUSTL is done before TRIM) if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , vec , found , was_created , ilen , trim_str , adjustl_str ) end subroutine json_file_add_string_vec","tags":"","loc":"proc/json_file_add_string_vec.html"},{"title":"json_file_add_string_vec_path_ascii – JSON-Fortran","text":"private subroutine json_file_add_string_vec_path_ascii(me, path, vec, found, was_created, ilen, trim_str, adjustl_str) Alternate version of json_file_add_string_vec , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element\n(note that ADJUSTL is done before TRIM) Calls proc~~json_file_add_string_vec_path_ascii~~CallsGraph proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii interface~to_unicode to_unicode proc~json_file_add_string_vec_path_ascii->interface~to_unicode proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_string_vec->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_string_vec->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_add_string_vec_path_ascii ( me , path , vec , found ,& was_created , ilen , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created integer ( IK ), dimension (:), intent ( in ), optional :: ilen !! the string lengths of each !! element in `value`. If not present, !! the full `len(value)` string is added !! for each element. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element !! (note that ADJUSTL is done before TRIM) call me % json_file_add_string_vec ( to_unicode ( path ), vec , found ,& was_created , ilen , trim_str , adjustl_str ) end subroutine json_file_add_string_vec_path_ascii","tags":"","loc":"proc/json_file_add_string_vec_path_ascii.html"},{"title":"json_file_add_string_vec_vec_ascii – JSON-Fortran","text":"private subroutine json_file_add_string_vec_vec_ascii(me, path, vec, found, was_created, ilen, trim_str, adjustl_str) Alternate version of json_file_add_string_vec , where “vec” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element\n(note that ADJUSTL is done before TRIM) Calls proc~~json_file_add_string_vec_vec_ascii~~CallsGraph proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii interface~to_unicode to_unicode proc~json_file_add_string_vec_vec_ascii->interface~to_unicode proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_string_vec->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_string_vec->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_add_string_vec_vec_ascii ( me , path , vec , found ,& was_created , ilen , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created integer ( IK ), dimension (:), intent ( in ), optional :: ilen !! the string lengths of each !! element in `value`. If not present, !! the full `len(value)` string is added !! for each element. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element !! (note that ADJUSTL is done before TRIM) call me % json_file_add_string_vec ( path , to_unicode ( vec ), found ,& was_created , ilen , trim_str , adjustl_str ) end subroutine json_file_add_string_vec_vec_ascii","tags":"","loc":"proc/json_file_add_string_vec_vec_ascii.html"},{"title":"json_file_check_for_errors – JSON-Fortran","text":"private subroutine json_file_check_for_errors(me, status_ok, error_msg) Retrieve error status and message from the class. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me logical(kind=LK), intent(out), optional :: status_ok true if there were no errors character(kind=CK, len=:), intent(out), optional, allocatable :: error_msg the error message\n(if there were errors) Calls proc~~json_file_check_for_errors~~CallsGraph proc~json_file_check_for_errors json_file%json_file_check_for_errors proc~json_check_for_errors json_core%json_check_for_errors proc~json_file_check_for_errors->proc~json_check_for_errors Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_check_for_errors ( me , status_ok , error_msg ) implicit none class ( json_file ), intent ( inout ) :: me logical ( LK ), intent ( out ), optional :: status_ok !! true if there were no errors character ( kind = CK , len = :), allocatable , intent ( out ), optional :: error_msg !! the error message !! (if there were errors) #if defined __GFORTRAN__ character ( kind = CK , len = :), allocatable :: tmp !! workaround for gfortran bugs call me % core % check_for_errors ( status_ok , tmp ) if ( present ( error_msg )) error_msg = tmp #else call me % core % check_for_errors ( status_ok , error_msg ) #endif end subroutine json_file_check_for_errors","tags":"","loc":"proc/json_file_check_for_errors.html"},{"title":"json_file_clear_exceptions – JSON-Fortran","text":"private pure subroutine json_file_clear_exceptions(me) Clear exceptions in the class. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me Calls proc~~json_file_clear_exceptions~~CallsGraph proc~json_file_clear_exceptions json_file%json_file_clear_exceptions proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_file_clear_exceptions->proc~json_clear_exceptions Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure subroutine json_file_clear_exceptions ( me ) implicit none class ( json_file ), intent ( inout ) :: me call me % core % clear_exceptions () end subroutine json_file_clear_exceptions","tags":"","loc":"proc/json_file_clear_exceptions.html"},{"title":"json_file_destroy – JSON-Fortran","text":"private subroutine json_file_destroy(me, destroy_core) Destroy the json_value data in a json_file .\n This may be done when the variable is no longer needed,\n or will be reused to open a different file.\n Otherwise a memory leak will occur. Optionally, also destroy the json_core instance (this\n is not necessary to prevent memory leaks, since a json_core does not use pointers). See also json_file_nullify History 12/9/2013 : Created 4/26/2016 : Added optional destroy_core argument Note This routine will be called automatically when the variable\n goes out of scope. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me logical, intent(in), optional :: destroy_core to also destroy the json_core .\ndefault is to leave it as is. Calls proc~~json_file_destroy~~CallsGraph proc~json_file_destroy json_file%json_file_destroy none~destroy~3 json_core%destroy proc~json_file_destroy->none~destroy~3 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_destroy~~CalledByGraph proc~json_file_destroy json_file%json_file_destroy proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->proc~json_file_destroy none~deserialize json_file%deserialize proc~assign_string_to_json_file->none~deserialize proc~finalize_json_file finalize_json_file proc~finalize_json_file->proc~json_file_destroy proc~json_file_add json_file%json_file_add proc~json_file_add->proc~json_file_destroy proc~json_file_load json_file%json_file_load proc~json_file_load->proc~json_file_destroy proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->proc~json_file_destroy none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_destroy ( me , destroy_core ) implicit none class ( json_file ), intent ( inout ) :: me logical , intent ( in ), optional :: destroy_core !! to also destroy the [[json_core(type)]]. !! default is to leave it as is. if ( associated ( me % p )) call me % core % destroy ( me % p ) if ( present ( destroy_core )) then if ( destroy_core ) call me % core % destroy () end if end subroutine json_file_destroy","tags":"","loc":"proc/json_file_destroy.html"},{"title":"json_file_get_alloc_string_vec – JSON-Fortran","text":"private subroutine json_file_get_alloc_string_vec(me, path, vec, ilen, found, default, default_ilen) Get an (allocatable length) string vector from a JSON file.\nThis is just a wrapper for json_get_alloc_string_vec_by_path . Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec value vector integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default integer(kind=IK), intent(in), optional, dimension(:) :: default_ilen the actual\nlength of default Calls proc~~json_file_get_alloc_string_vec~~CallsGraph proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get~2 json_core%get proc~json_file_get_alloc_string_vec->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_get_alloc_string_vec~~CalledByGraph proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get json_file%get none~get->proc~json_file_get_alloc_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_get_alloc_string_vec ( me , path , vec , ilen , found , default , default_ilen ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len = :), dimension (:), allocatable , intent ( out ) :: vec !! value vector integer ( IK ), dimension (:), allocatable , intent ( out ) :: ilen !! the actual length !! of each character !! string in the array logical ( LK ), intent ( out ), optional :: found character ( kind = CK , len =* ), dimension (:), intent ( in ), optional :: default integer ( IK ), dimension (:), intent ( in ), optional :: default_ilen !! the actual !! length of `default` call me % core % get ( me % p , path , vec , ilen , found , default , default_ilen ) end subroutine json_file_get_alloc_string_vec","tags":"","loc":"proc/json_file_get_alloc_string_vec.html"},{"title":"json_file_get_integer – JSON-Fortran","text":"private subroutine json_file_get_integer(me, path, val, found, default) Get an integer value from a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found integer(kind=IK), intent(in), optional :: default Calls proc~~json_file_get_integer~~CallsGraph proc~json_file_get_integer json_file%json_file_get_integer none~get~2 json_core%get proc~json_file_get_integer->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_get_integer~~CalledByGraph proc~json_file_get_integer json_file%json_file_get_integer none~get json_file%get none~get->proc~json_file_get_integer proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_get_integer ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found integer ( IK ), intent ( in ), optional :: default call me % core % get ( me % p , path , val , found , default ) end subroutine json_file_get_integer","tags":"","loc":"proc/json_file_get_integer.html"},{"title":"json_file_get_integer_vec – JSON-Fortran","text":"private subroutine json_file_get_integer_vec(me, path, vec, found, default) Get an integer vector from a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found integer(kind=IK), intent(in), optional, dimension(:) :: default Calls proc~~json_file_get_integer_vec~~CallsGraph proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get~2 json_core%get proc~json_file_get_integer_vec->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_get_integer_vec~~CalledByGraph proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get json_file%get none~get->proc~json_file_get_integer_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_get_integer_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found integer ( IK ), dimension (:), intent ( in ), optional :: default call me % core % get ( me % p , path , vec , found , default ) end subroutine json_file_get_integer_vec","tags":"","loc":"proc/json_file_get_integer_vec.html"},{"title":"json_file_get_logical – JSON-Fortran","text":"private subroutine json_file_get_logical(me, path, val, found, default) Get a logical(LK) value from a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found logical(kind=LK), intent(in), optional :: default Calls proc~~json_file_get_logical~~CallsGraph proc~json_file_get_logical json_file%json_file_get_logical none~get~2 json_core%get proc~json_file_get_logical->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_get_logical~~CalledByGraph proc~json_file_get_logical json_file%json_file_get_logical none~get json_file%get none~get->proc~json_file_get_logical proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_get_logical ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found logical ( LK ), intent ( in ), optional :: default call me % core % get ( me % p , path , val , found , default ) end subroutine json_file_get_logical","tags":"","loc":"proc/json_file_get_logical.html"},{"title":"json_file_get_logical_vec – JSON-Fortran","text":"private subroutine json_file_get_logical_vec(me, path, vec, found, default) Get a logical(LK) vector from a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found logical(kind=LK), intent(in), optional, dimension(:) :: default Calls proc~~json_file_get_logical_vec~~CallsGraph proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get~2 json_core%get proc~json_file_get_logical_vec->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_get_logical_vec~~CalledByGraph proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get json_file%get none~get->proc~json_file_get_logical_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_get_logical_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found logical ( LK ), dimension (:), intent ( in ), optional :: default call me % core % get ( me % p , path , vec , found , default ) end subroutine json_file_get_logical_vec","tags":"","loc":"proc/json_file_get_logical_vec.html"},{"title":"json_file_get_object – JSON-Fortran","text":"private subroutine json_file_get_object(me, path, p, found) Get a json_value pointer to an object from a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(out), pointer :: p pointer to the variable logical(kind=LK), intent(out), optional :: found if it was really found Calls proc~~json_file_get_object~~CallsGraph proc~json_file_get_object json_file%json_file_get_object none~get~2 json_core%get proc~json_file_get_object->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_get_object~~CalledByGraph proc~json_file_get_object json_file%json_file_get_object none~get json_file%get none~get->proc~json_file_get_object proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_get_object ( me , path , p , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable type ( json_value ), pointer , intent ( out ) :: p !! pointer to the variable logical ( LK ), intent ( out ), optional :: found !! if it was really found call me % core % get ( me % p , path , p , found ) end subroutine json_file_get_object","tags":"","loc":"proc/json_file_get_object.html"},{"title":"json_file_get_real – JSON-Fortran","text":"private subroutine json_file_get_real(me, path, val, found, default) Get a real(RK) variable value from a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found real(kind=RK), intent(in), optional :: default Calls proc~~json_file_get_real~~CallsGraph proc~json_file_get_real json_file%json_file_get_real none~get~2 json_core%get proc~json_file_get_real->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_get_real~~CalledByGraph proc~json_file_get_real json_file%json_file_get_real none~get json_file%get none~get->proc~json_file_get_real proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_get_real ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( RK ), intent ( in ), optional :: default call me % core % get ( me % p , path , val , found , default ) end subroutine json_file_get_real","tags":"","loc":"proc/json_file_get_real.html"},{"title":"json_file_get_real32 – JSON-Fortran","text":"private subroutine json_file_get_real32(me, path, val, found, default) Alternate version of json_file_get_real where val is real32 . Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found real(kind=real32), intent(in), optional :: default Calls proc~~json_file_get_real32~~CallsGraph proc~json_file_get_real32 json_file%json_file_get_real32 none~get~2 json_core%get proc~json_file_get_real32->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_get_real32~~CalledByGraph proc~json_file_get_real32 json_file%json_file_get_real32 none~get json_file%get none~get->proc~json_file_get_real32 proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_get_real32 ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( real32 ), intent ( in ), optional :: default call me % core % get ( me % p , path , val , found , default ) end subroutine json_file_get_real32","tags":"","loc":"proc/json_file_get_real32.html"},{"title":"json_file_get_real32_vec – JSON-Fortran","text":"private subroutine json_file_get_real32_vec(me, path, vec, found, default) Alternate version of json_file_get_real_vec where vec is real32 . Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found real(kind=real32), intent(in), optional, dimension(:) :: default Calls proc~~json_file_get_real32_vec~~CallsGraph proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get~2 json_core%get proc~json_file_get_real32_vec->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_get_real32_vec~~CalledByGraph proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get json_file%get none~get->proc~json_file_get_real32_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_get_real32_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( real32 ), dimension (:), intent ( in ), optional :: default call me % core % get ( me % p , path , vec , found , default ) end subroutine json_file_get_real32_vec","tags":"","loc":"proc/json_file_get_real32_vec.html"},{"title":"json_file_get_real_vec – JSON-Fortran","text":"private subroutine json_file_get_real_vec(me, path, vec, found, default) Get a real(RK) vector from a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found real(kind=RK), intent(in), optional, dimension(:) :: default Calls proc~~json_file_get_real_vec~~CallsGraph proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get~2 json_core%get proc~json_file_get_real_vec->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_get_real_vec~~CalledByGraph proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get json_file%get none~get->proc~json_file_get_real_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_get_real_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( RK ), dimension (:), intent ( in ), optional :: default call me % core % get ( me % p , path , vec , found , default ) end subroutine json_file_get_real_vec","tags":"","loc":"proc/json_file_get_real_vec.html"},{"title":"json_file_get_root – JSON-Fortran","text":"private subroutine json_file_get_root(me, p) Get a json_value pointer to the JSON file root. Note This is equivalent to calling [[json_file]]%get('$',p) Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me type( json_value ), intent(out), pointer :: p pointer to the variable Called by proc~~json_file_get_root~~CalledByGraph proc~json_file_get_root json_file%json_file_get_root none~get json_file%get none~get->proc~json_file_get_root proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_get_root ( me , p ) implicit none class ( json_file ), intent ( inout ) :: me type ( json_value ), pointer , intent ( out ) :: p !! pointer to the variable p => me % p end subroutine json_file_get_root","tags":"","loc":"proc/json_file_get_root.html"},{"title":"json_file_get_string – JSON-Fortran","text":"private subroutine json_file_get_string(me, path, val, found, default) Get a character string from a json file.\nThe output val is an allocatable character string. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=:), intent(out), allocatable :: val value logical(kind=LK), intent(out), optional :: found if it was really found character(kind=CK, len=*), intent(in), optional :: default Calls proc~~json_file_get_string~~CallsGraph proc~json_file_get_string json_file%json_file_get_string none~get~2 json_core%get proc~json_file_get_string->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_get_string~~CalledByGraph proc~json_file_get_string json_file%json_file_get_string none~get json_file%get none~get->proc~json_file_get_string proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_get_string ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len = :), allocatable , intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found character ( kind = CK , len =* ), intent ( in ), optional :: default call me % core % get ( me % p , path , val , found , default ) end subroutine json_file_get_string","tags":"","loc":"proc/json_file_get_string.html"},{"title":"json_file_get_string_vec – JSON-Fortran","text":"private subroutine json_file_get_string_vec(me, path, vec, found, default) Get a string vector from a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec value vector logical(kind=LK), intent(out), optional :: found if it was really found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default Calls proc~~json_file_get_string_vec~~CallsGraph proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get~2 json_core%get proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_get_string_vec~~CalledByGraph proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get json_file%get none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_get_string_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), dimension (:), allocatable , intent ( out ) :: vec !! value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found character ( kind = CK , len =* ), dimension (:), intent ( in ), optional :: default call me % core % get ( me % p , path , vec , found , default ) end subroutine json_file_get_string_vec","tags":"","loc":"proc/json_file_get_string_vec.html"},{"title":"json_file_load – JSON-Fortran","text":"private subroutine json_file_load(me, filename, unit, destroy_pointer) Load the JSON data from a file. Example program main use json_module implicit none type ( json_file ) :: f call f % load ( 'my_file.json' ) !... call f % destroy () end program main Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: filename the filename to open integer(kind=IK), intent(in), optional :: unit the unit number to use\n(if not present, a newunit\nis used) logical(kind=LK), intent(in), optional :: destroy_pointer destroy the pointer before\nloading (default is True) Calls proc~~json_file_load~~CallsGraph proc~json_file_load json_file%json_file_load none~load~2 json_core%load proc~json_file_load->none~load~2 proc~json_file_destroy json_file%json_file_destroy proc~json_file_load->proc~json_file_destroy proc~json_parse_file json_core%json_parse_file none~load~2->proc~json_parse_file none~destroy~3 json_core%destroy proc~json_file_destroy->none~destroy~3 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy none~throw_exception json_core%throw_exception proc~json_parse_file->none~throw_exception proc~annotate_invalid_json json_core%annotate_invalid_json proc~json_parse_file->proc~annotate_invalid_json proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_file->proc~json_check_all_for_duplicate_keys proc~json_initialize json_core%json_initialize proc~json_parse_file->proc~json_initialize proc~json_parse_end json_core%json_parse_end proc~json_parse_file->proc~json_parse_end proc~json_prepare_parser json_core%json_prepare_parser proc~json_parse_file->proc~json_prepare_parser proc~json_value_create json_value_create proc~json_parse_file->proc~json_value_create proc~parse_value json_core%parse_value proc~json_parse_file->proc~parse_value proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~get_current_line_from_file_sequential json_core%get_current_line_from_file_sequential proc~annotate_invalid_json->proc~get_current_line_from_file_sequential proc~get_current_line_from_file_stream json_core%get_current_line_from_file_stream proc~annotate_invalid_json->proc~get_current_line_from_file_stream proc~integer_to_string integer_to_string proc~annotate_invalid_json->proc~integer_to_string proc~json_traverse json_core%json_traverse proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_initialize->none~throw_exception proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions proc~json_parse_end->none~throw_exception proc~pop_char json_core%pop_char proc~json_parse_end->proc~pop_char proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~parse_value->none~throw_exception proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_for_chars json_core%parse_for_chars proc~parse_value->proc~parse_for_chars proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~parse_string json_core%parse_string proc~parse_value->proc~parse_string proc~parse_value->proc~pop_char proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~to_array json_core%to_array proc~parse_value->proc~to_array proc~to_logical json_core%to_logical proc~parse_value->proc~to_logical proc~to_null json_core%to_null proc~parse_value->proc~to_null proc~to_object json_core%to_object proc~parse_value->proc~to_object proc~to_string json_core%to_string proc~parse_value->proc~to_string proc~json_traverse->none~throw_exception proc~parse_array->none~destroy~3 proc~parse_array->none~throw_exception proc~parse_array->proc~json_value_create proc~parse_array->proc~parse_value proc~parse_array->proc~pop_char none~add~4 json_core%add proc~parse_array->none~add~4 proc~parse_for_chars->none~throw_exception proc~parse_for_chars->proc~pop_char proc~parse_number->proc~json_clear_exceptions proc~parse_number->proc~pop_char proc~parse_number->proc~push_char proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real proc~parse_object->none~destroy~3 proc~parse_object->none~throw_exception proc~parse_object->proc~json_value_create proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~pop_char proc~parse_object->none~add~4 proc~parse_string->none~throw_exception proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~push_char->none~throw_exception proc~push_char->proc~integer_to_string proc~to_array->proc~destroy_json_data proc~to_logical->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_load ( me , filename , unit , destroy_pointer ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: filename !! the filename to open integer ( IK ), intent ( in ), optional :: unit !! the unit number to use !! (if not present, a newunit !! is used) logical ( LK ), intent ( in ), optional :: destroy_pointer !! destroy the pointer before !! loading (default is True) if ( present ( destroy_pointer )) then if ( destroy_pointer ) call me % destroy () else ! by default it is destroyed call me % destroy () end if call me % core % load ( file = filename , p = me % p , unit = unit ) end subroutine json_file_load","tags":"","loc":"proc/json_file_load.html"},{"title":"json_file_load_from_string – JSON-Fortran","text":"private subroutine json_file_load_from_string(me, str, destroy_pointer) Load the JSON data from a string. Example Load JSON from a string: type ( json_file ) :: f call f % deserialize ( '{ \"name\": \"Leonidas\" }' ) Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: str string to load JSON data from logical(kind=LK), intent(in), optional :: destroy_pointer destroy the pointer before\nloading (default is True) Calls proc~~json_file_load_from_string~~CallsGraph proc~json_file_load_from_string json_file%json_file_load_from_string none~deserialize~2 json_core%deserialize proc~json_file_load_from_string->none~deserialize~2 proc~json_file_destroy json_file%json_file_destroy proc~json_file_load_from_string->proc~json_file_destroy proc~json_parse_string json_core%json_parse_string none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~destroy~3 json_core%destroy proc~json_file_destroy->none~destroy~3 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy none~throw_exception json_core%throw_exception proc~json_parse_string->none~throw_exception proc~annotate_invalid_json json_core%annotate_invalid_json proc~json_parse_string->proc~annotate_invalid_json proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_initialize json_core%json_initialize proc~json_parse_string->proc~json_initialize proc~json_parse_end json_core%json_parse_end proc~json_parse_string->proc~json_parse_end proc~json_prepare_parser json_core%json_prepare_parser proc~json_parse_string->proc~json_prepare_parser proc~json_value_create json_value_create proc~json_parse_string->proc~json_value_create proc~parse_value json_core%parse_value proc~json_parse_string->proc~parse_value proc~wrap_json_parse_string->none~deserialize~2 interface~to_unicode to_unicode proc~wrap_json_parse_string->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~get_current_line_from_file_sequential json_core%get_current_line_from_file_sequential proc~annotate_invalid_json->proc~get_current_line_from_file_sequential proc~get_current_line_from_file_stream json_core%get_current_line_from_file_stream proc~annotate_invalid_json->proc~get_current_line_from_file_stream proc~integer_to_string integer_to_string proc~annotate_invalid_json->proc~integer_to_string proc~json_traverse json_core%json_traverse proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_initialize->none~throw_exception proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions proc~json_parse_end->none~throw_exception proc~pop_char json_core%pop_char proc~json_parse_end->proc~pop_char proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~parse_value->none~throw_exception proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_for_chars json_core%parse_for_chars proc~parse_value->proc~parse_for_chars proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~parse_string json_core%parse_string proc~parse_value->proc~parse_string proc~parse_value->proc~pop_char proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~to_array json_core%to_array proc~parse_value->proc~to_array proc~to_logical json_core%to_logical proc~parse_value->proc~to_logical proc~to_null json_core%to_null proc~parse_value->proc~to_null proc~to_object json_core%to_object proc~parse_value->proc~to_object proc~to_string json_core%to_string proc~parse_value->proc~to_string proc~json_traverse->none~throw_exception proc~parse_array->none~destroy~3 proc~parse_array->none~throw_exception proc~parse_array->proc~json_value_create proc~parse_array->proc~parse_value proc~parse_array->proc~pop_char none~add~4 json_core%add proc~parse_array->none~add~4 proc~parse_for_chars->none~throw_exception proc~parse_for_chars->proc~pop_char proc~parse_number->proc~json_clear_exceptions proc~parse_number->proc~pop_char proc~parse_number->proc~push_char proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real proc~parse_object->none~destroy~3 proc~parse_object->none~throw_exception proc~parse_object->proc~json_value_create proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~pop_char proc~parse_object->none~add~4 proc~parse_string->none~throw_exception proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~push_char->none~throw_exception proc~push_char->proc~integer_to_string proc~to_array->proc~destroy_json_data proc~to_logical->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_load_from_string~~CalledByGraph proc~json_file_load_from_string json_file%json_file_load_from_string none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_load_from_string ( me , str , destroy_pointer ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: str !! string to load JSON data from logical ( LK ), intent ( in ), optional :: destroy_pointer !! destroy the pointer before !! loading (default is True) if ( present ( destroy_pointer )) then if ( destroy_pointer ) call me % destroy () else ! by default it is destroyed call me % destroy () end if call me % core % deserialize ( me % p , str ) end subroutine json_file_load_from_string","tags":"","loc":"proc/json_file_load_from_string.html"},{"title":"json_file_move_pointer – JSON-Fortran","text":"private subroutine json_file_move_pointer(to, from) Move the json_value pointer from one json_file to another.\n The “from” pointer is then nullified, but not destroyed. Note If “from%p” is not associated, then an error is thrown. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: to class( json_file ), intent(inout) :: from Calls proc~~json_file_move_pointer~~CallsGraph proc~json_file_move_pointer json_file%json_file_move_pointer none~initialize json_file%initialize proc~json_file_move_pointer->none~initialize none~throw_exception json_core%throw_exception proc~json_file_move_pointer->none~throw_exception proc~json_file_failed json_file%json_file_failed proc~json_file_move_pointer->proc~json_file_failed proc~initialize_json_core_in_file json_file%initialize_json_core_in_file none~initialize->proc~initialize_json_core_in_file proc~set_json_core_in_file json_file%set_json_core_in_file none~initialize->proc~set_json_core_in_file proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_failed json_core%json_failed proc~json_file_failed->proc~json_failed proc~json_initialize json_core%json_initialize proc~initialize_json_core_in_file->proc~json_initialize proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_initialize->none~throw_exception proc~integer_to_string integer_to_string proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_move_pointer ( to , from ) implicit none class ( json_file ), intent ( inout ) :: to class ( json_file ), intent ( inout ) :: from if ( associated ( from % p )) then if ( from % failed ()) then !Don't get the data if the FROM file has an !active exception, since it may not be valid. call to % core % throw_exception ( 'Error in json_file_move_pointer: ' // & 'error exception in FROM file.' ) else call to % initialize () !initialize and clear any exceptions that may be present to % p => from % p nullify ( from % p ) end if else call to % core % throw_exception ( 'Error in json_file_move_pointer: ' // & 'pointer is not associated.' ) end if end subroutine json_file_move_pointer","tags":"","loc":"proc/json_file_move_pointer.html"},{"title":"json_file_nullify – JSON-Fortran","text":"private subroutine json_file_nullify(me) Nullify the json_value pointer in a json_file ,\n but do not destroy it. This should normally only be done if the pointer is the target of\n another pointer outside the class that is still intended to be in\n scope after the json_file has gone out of scope.\n Otherwise, this would result in a memory leak. See also json_file_destroy History 6/30/2019 : Created Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me Source Code subroutine json_file_nullify ( me ) implicit none class ( json_file ), intent ( inout ) :: me nullify ( me % p ) end subroutine json_file_nullify","tags":"","loc":"proc/json_file_nullify.html"},{"title":"json_file_print_error_message – JSON-Fortran","text":"private subroutine json_file_print_error_message(me, io_unit) This is a wrapper for json_print_error_message . Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me integer, intent(in), optional :: io_unit Calls proc~~json_file_print_error_message~~CallsGraph proc~json_file_print_error_message json_file%json_file_print_error_message proc~json_print_error_message json_core%json_print_error_message proc~json_file_print_error_message->proc~json_print_error_message proc~json_check_for_errors json_core%json_check_for_errors proc~json_print_error_message->proc~json_check_for_errors proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_print_error_message->proc~json_clear_exceptions Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_print_error_message ( me , io_unit ) implicit none class ( json_file ), intent ( inout ) :: me integer , intent ( in ), optional :: io_unit call me % core % print_error_message ( io_unit ) end subroutine json_file_print_error_message","tags":"","loc":"proc/json_file_print_error_message.html"},{"title":"json_file_print_to_console – JSON-Fortran","text":"private subroutine json_file_print_to_console(me) Print the JSON file to the console. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me Source Code subroutine json_file_print_to_console ( me ) implicit none class ( json_file ), intent ( inout ) :: me call me % core % print ( me % p , iunit = int ( output_unit , IK )) end subroutine json_file_print_to_console","tags":"","loc":"proc/json_file_print_to_console.html"},{"title":"json_file_print_to_filename – JSON-Fortran","text":"private subroutine json_file_print_to_filename(me, filename) Print the JSON structure to the specified filename.\n The file is opened, printed, and then closed. Example Example loading a JSON file, changing a value, and then printing\n result to a new file: type ( json_file ) :: f logical :: found call f % load ( 'my_file.json' ) !open the original file call f % update ( 'version' , 4 , found ) !change the value of a variable call f % print ( 'my_file_2.json' ) !save file as new name Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: filename filename to print to Source Code subroutine json_file_print_to_filename ( me , filename ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: filename !! filename to print to call me % core % print ( me % p , filename ) end subroutine json_file_print_to_filename","tags":"","loc":"proc/json_file_print_to_filename.html"},{"title":"json_file_print_to_string – JSON-Fortran","text":"private subroutine json_file_print_to_string(me, str) Print the JSON file to a string. Example Open a JSON file, and then print the contents to a string: type ( json_file ) :: f character ( kind = CK , len = :), allocatable :: str call f % load ( 'my_file.json' ) call f % serialize ( str ) Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=:), intent(out), allocatable :: str string to print JSON data to Calls proc~~json_file_print_to_string~~CallsGraph proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_value_to_string json_core%json_value_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~json_value_print json_core%json_value_print proc~json_value_to_string->proc~json_value_print proc~json_value_print->proc~json_value_print none~throw_exception json_core%throw_exception proc~json_value_print->none~throw_exception proc~escape_string escape_string proc~json_value_print->proc~escape_string proc~integer_to_string integer_to_string proc~json_value_print->proc~integer_to_string proc~json_failed json_core%json_failed proc~json_value_print->proc~json_failed proc~json_is_vector json_core%json_is_vector proc~json_value_print->proc~json_is_vector proc~real_to_string real_to_string proc~json_value_print->proc~real_to_string proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_is_vector->none~throw_exception none~info~2 json_core%info proc~json_is_vector->none~info~2 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception proc~convert->none~info~2 none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~throw_exception proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_string_info->proc~json_clear_exceptions proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_print_to_string ( me , str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len = :), allocatable , intent ( out ) :: str !! string to print JSON data to call me % core % serialize ( me % p , str ) end subroutine json_file_print_to_string","tags":"","loc":"proc/json_file_print_to_string.html"},{"title":"json_file_print_to_unit – JSON-Fortran","text":"private subroutine json_file_print_to_unit(me, iunit) Prints the JSON file to the specified file unit number. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me integer(kind=IK), intent(in) :: iunit file unit number (must not be -1) Calls proc~~json_file_print_to_unit~~CallsGraph proc~json_file_print_to_unit json_file%json_file_print_to_unit none~throw_exception json_core%throw_exception proc~json_file_print_to_unit->none~throw_exception proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_print_to_unit ( me , iunit ) implicit none class ( json_file ), intent ( inout ) :: me integer ( IK ), intent ( in ) :: iunit !! file unit number (must not be -1) if ( iunit /= unit2str ) then call me % core % print ( me % p , iunit = iunit ) else call me % core % throw_exception ( 'Error in json_file_print_to_unit: iunit must not be -1.' ) end if end subroutine json_file_print_to_unit","tags":"","loc":"proc/json_file_print_to_unit.html"},{"title":"json_file_remove – JSON-Fortran","text":"private subroutine json_file_remove(me, path) Remove a variable from a JSON file. Note This is just a wrapper to remove_if_present . Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable Calls proc~~json_file_remove~~CallsGraph proc~json_file_remove json_file%json_file_remove none~remove_if_present json_core%remove_if_present proc~json_file_remove->none~remove_if_present proc~json_value_remove_if_present json_core%json_value_remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~get~2 json_core%get proc~json_value_remove_if_present->none~get~2 proc~json_value_remove json_core%json_value_remove proc~json_value_remove_if_present->proc~json_value_remove proc~wrap_json_value_remove_if_present->none~remove_if_present interface~to_unicode to_unicode proc~wrap_json_value_remove_if_present->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~json_value_replace->proc~json_value_remove none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_remove~~CalledByGraph proc~json_file_remove json_file%json_file_remove none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove proc~wrap_json_file_remove->none~remove Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_remove ( me , path ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable call me % core % remove_if_present ( me % p , path ) end subroutine json_file_remove","tags":"","loc":"proc/json_file_remove.html"},{"title":"json_file_rename – JSON-Fortran","text":"private subroutine json_file_rename(me, path, name, found) Rename a variable in a JSON file. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if the variable was found Called by proc~~json_file_rename~~CalledByGraph proc~json_file_rename json_file%json_file_rename proc~json_file_rename_name_ascii json_file%json_file_rename_name_ascii proc~json_file_rename_name_ascii->proc~json_file_rename proc~json_file_rename_path_ascii json_file%json_file_rename_path_ascii proc~json_file_rename_path_ascii->proc~json_file_rename proc~wrap_json_file_rename json_file%wrap_json_file_rename proc~wrap_json_file_rename->proc~json_file_rename Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_rename ( me , path , name , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), intent ( in ) :: name !! the new name logical ( LK ), intent ( out ), optional :: found !! if the variable was found call me % core % rename ( me % p , path , name , found ) end subroutine json_file_rename","tags":"","loc":"proc/json_file_rename.html"},{"title":"json_file_rename_name_ascii – JSON-Fortran","text":"private subroutine json_file_rename_name_ascii(me, path, name, found) Wrapper for json_file_rename where “name” is kind=CDK). Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if the variable was found Calls proc~~json_file_rename_name_ascii~~CallsGraph proc~json_file_rename_name_ascii json_file%json_file_rename_name_ascii interface~to_unicode to_unicode proc~json_file_rename_name_ascii->interface~to_unicode proc~json_file_rename json_file%json_file_rename proc~json_file_rename_name_ascii->proc~json_file_rename proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_rename_name_ascii ( me , path , name , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), intent ( in ) :: name !! the new name logical ( LK ), intent ( out ), optional :: found !! if the variable was found call me % json_file_rename ( path , to_unicode ( name ), found ) end subroutine json_file_rename_name_ascii","tags":"","loc":"proc/json_file_rename_name_ascii.html"},{"title":"json_file_rename_path_ascii – JSON-Fortran","text":"private subroutine json_file_rename_path_ascii(me, path, name, found) Wrapper for json_file_rename where “path” is kind=CDK). Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if the variable was found Calls proc~~json_file_rename_path_ascii~~CallsGraph proc~json_file_rename_path_ascii json_file%json_file_rename_path_ascii interface~to_unicode to_unicode proc~json_file_rename_path_ascii->interface~to_unicode proc~json_file_rename json_file%json_file_rename proc~json_file_rename_path_ascii->proc~json_file_rename proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_rename_path_ascii ( me , path , name , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), intent ( in ) :: name !! the new name logical ( LK ), intent ( out ), optional :: found !! if the variable was found call me % json_file_rename ( to_unicode ( path ), name , found ) end subroutine json_file_rename_path_ascii","tags":"","loc":"proc/json_file_rename_path_ascii.html"},{"title":"json_file_traverse – JSON-Fortran","text":"private subroutine json_file_traverse(me, traverse_callback) Traverse the JSON structure in the file.\nThis routine calls the user-specified json_traverse_callback_func for each element of the structure. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me procedure( json_traverse_callback_func ) :: traverse_callback Calls proc~~json_file_traverse~~CallsGraph proc~json_file_traverse json_file%json_file_traverse proc~json_traverse json_core%json_traverse proc~json_file_traverse->proc~json_traverse none~throw_exception json_core%throw_exception proc~json_traverse->none~throw_exception proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_traverse ( me , traverse_callback ) implicit none class ( json_file ), intent ( inout ) :: me procedure ( json_traverse_callback_func ) :: traverse_callback call me % core % traverse ( me % p , traverse_callback ) end subroutine json_file_traverse","tags":"","loc":"proc/json_file_traverse.html"},{"title":"json_file_update_integer – JSON-Fortran","text":"private subroutine json_file_update_integer(me, path, val, found) Given the path string, if the variable is present in the file,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. See also json_update_integer Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path integer(kind=IK), intent(in) :: val logical(kind=LK), intent(out) :: found Calls proc~~json_file_update_integer~~CallsGraph proc~json_file_update_integer json_file%json_file_update_integer none~update~4 json_core%update proc~json_file_update_integer->none~update~4 proc~json_failed json_core%json_failed proc~json_file_update_integer->proc~json_failed proc~json_update_string_name_ascii json_core%json_update_string_name_ascii none~update~4->proc~json_update_string_name_ascii proc~json_update_string_val_ascii json_core%json_update_string_val_ascii none~update~4->proc~json_update_string_val_ascii proc~json_update_string_name_ascii->none~update~4 interface~to_unicode to_unicode proc~json_update_string_name_ascii->interface~to_unicode proc~json_update_string_val_ascii->none~update~4 proc~json_update_string_val_ascii->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_update_integer ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path integer ( IK ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found if (. not . me % core % failed ()) call me % core % update ( me % p , path , val , found ) end subroutine json_file_update_integer","tags":"","loc":"proc/json_file_update_integer.html"},{"title":"json_file_update_logical – JSON-Fortran","text":"private subroutine json_file_update_logical(me, path, val, found) Given the path string, if the variable is present in the file,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. See also json_update_logical Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path logical(kind=LK), intent(in) :: val logical(kind=LK), intent(out) :: found Calls proc~~json_file_update_logical~~CallsGraph proc~json_file_update_logical json_file%json_file_update_logical none~update~4 json_core%update proc~json_file_update_logical->none~update~4 proc~json_failed json_core%json_failed proc~json_file_update_logical->proc~json_failed proc~json_update_string_name_ascii json_core%json_update_string_name_ascii none~update~4->proc~json_update_string_name_ascii proc~json_update_string_val_ascii json_core%json_update_string_val_ascii none~update~4->proc~json_update_string_val_ascii proc~json_update_string_name_ascii->none~update~4 interface~to_unicode to_unicode proc~json_update_string_name_ascii->interface~to_unicode proc~json_update_string_val_ascii->none~update~4 proc~json_update_string_val_ascii->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_update_logical ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path logical ( LK ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found if (. not . me % core % failed ()) call me % core % update ( me % p , path , val , found ) end subroutine json_file_update_logical","tags":"","loc":"proc/json_file_update_logical.html"},{"title":"json_file_update_real – JSON-Fortran","text":"private subroutine json_file_update_real(me, path, val, found) Given the path string, if the variable is present in the file,\nand is a scalar, then update its value.\nIf it is not present, then create it and set its value. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path real(kind=RK), intent(in) :: val logical(kind=LK), intent(out) :: found Calls proc~~json_file_update_real~~CallsGraph proc~json_file_update_real json_file%json_file_update_real none~update~4 json_core%update proc~json_file_update_real->none~update~4 proc~json_failed json_core%json_failed proc~json_file_update_real->proc~json_failed proc~json_update_string_name_ascii json_core%json_update_string_name_ascii none~update~4->proc~json_update_string_name_ascii proc~json_update_string_val_ascii json_core%json_update_string_val_ascii none~update~4->proc~json_update_string_val_ascii proc~json_update_string_name_ascii->none~update~4 interface~to_unicode to_unicode proc~json_update_string_name_ascii->interface~to_unicode proc~json_update_string_val_ascii->none~update~4 proc~json_update_string_val_ascii->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_update_real ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path real ( RK ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found if (. not . me % core % failed ()) call me % core % update ( me % p , path , val , found ) end subroutine json_file_update_real","tags":"","loc":"proc/json_file_update_real.html"},{"title":"json_file_update_real32 – JSON-Fortran","text":"private subroutine json_file_update_real32(me, path, val, found) Alternate version of json_file_update_real where val is real32 . Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path real(kind=real32), intent(in) :: val logical(kind=LK), intent(out) :: found Calls proc~~json_file_update_real32~~CallsGraph proc~json_file_update_real32 json_file%json_file_update_real32 none~update~2 json_file%update proc~json_file_update_real32->none~update~2 proc~json_file_update_string_name_ascii json_file%json_file_update_string_name_ascii none~update~2->proc~json_file_update_string_name_ascii proc~json_file_update_string_val_ascii json_file%json_file_update_string_val_ascii none~update~2->proc~json_file_update_string_val_ascii proc~json_file_update_string_name_ascii->none~update~2 interface~to_unicode to_unicode proc~json_file_update_string_name_ascii->interface~to_unicode proc~json_file_update_string_val_ascii->none~update~2 proc~json_file_update_string_val_ascii->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_update_real32 ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path real ( real32 ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found call me % update ( path , real ( val , RK ), found ) end subroutine json_file_update_real32","tags":"","loc":"proc/json_file_update_real32.html"},{"title":"json_file_update_string – JSON-Fortran","text":"private subroutine json_file_update_string(me, path, val, found, trim_str, adjustl_str) Given the path string, if the variable is present in the file,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. See also json_update_string Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path character(kind=CK, len=*), intent(in) :: val logical(kind=LK), intent(out) :: found logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) Calls proc~~json_file_update_string~~CallsGraph proc~json_file_update_string json_file%json_file_update_string none~update~4 json_core%update proc~json_file_update_string->none~update~4 proc~json_failed json_core%json_failed proc~json_file_update_string->proc~json_failed proc~json_update_string_name_ascii json_core%json_update_string_name_ascii none~update~4->proc~json_update_string_name_ascii proc~json_update_string_val_ascii json_core%json_update_string_val_ascii none~update~4->proc~json_update_string_val_ascii proc~json_update_string_name_ascii->none~update~4 interface~to_unicode to_unicode proc~json_update_string_name_ascii->interface~to_unicode proc~json_update_string_val_ascii->none~update~4 proc~json_update_string_val_ascii->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_update_string ( me , path , val , found , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path character ( kind = CK , len =* ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (note that ADJUSTL is done before TRIM) if (. not . me % core % failed ()) call me % core % update ( me % p , path , val , found , trim_str , adjustl_str ) end subroutine json_file_update_string","tags":"","loc":"proc/json_file_update_string.html"},{"title":"json_file_update_string_name_ascii – JSON-Fortran","text":"private subroutine json_file_update_string_name_ascii(me, path, val, found, trim_str, adjustl_str) Alternate version of json_file_update_string , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=*), intent(in) :: val logical(kind=LK), intent(out) :: found logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) Calls proc~~json_file_update_string_name_ascii~~CallsGraph proc~json_file_update_string_name_ascii json_file%json_file_update_string_name_ascii interface~to_unicode to_unicode proc~json_file_update_string_name_ascii->interface~to_unicode none~update~2 json_file%update proc~json_file_update_string_name_ascii->none~update~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~update~2->proc~json_file_update_string_name_ascii proc~json_file_update_string_val_ascii json_file%json_file_update_string_val_ascii none~update~2->proc~json_file_update_string_val_ascii proc~json_file_update_string_val_ascii->interface~to_unicode proc~json_file_update_string_val_ascii->none~update~2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_update_string_name_ascii~~CalledByGraph proc~json_file_update_string_name_ascii json_file%json_file_update_string_name_ascii none~update~2 json_file%update proc~json_file_update_string_name_ascii->none~update~2 none~update~2->proc~json_file_update_string_name_ascii proc~json_file_update_string_val_ascii json_file%json_file_update_string_val_ascii none~update~2->proc~json_file_update_string_val_ascii proc~json_file_update_real32 json_file%json_file_update_real32 proc~json_file_update_real32->none~update~2 proc~json_file_update_string_val_ascii->none~update~2 proc~wrap_json_file_update_integer json_file%wrap_json_file_update_integer proc~wrap_json_file_update_integer->none~update~2 proc~wrap_json_file_update_logical json_file%wrap_json_file_update_logical proc~wrap_json_file_update_logical->none~update~2 proc~wrap_json_file_update_real json_file%wrap_json_file_update_real proc~wrap_json_file_update_real->none~update~2 proc~wrap_json_file_update_real32 json_file%wrap_json_file_update_real32 proc~wrap_json_file_update_real32->none~update~2 proc~wrap_json_file_update_string json_file%wrap_json_file_update_string proc~wrap_json_file_update_string->none~update~2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_update_string_name_ascii ( me , path , val , found , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path character ( kind = CK , len =* ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (note that ADJUSTL is done before TRIM) call me % update ( to_unicode ( path ), val , found , trim_str , adjustl_str ) end subroutine json_file_update_string_name_ascii","tags":"","loc":"proc/json_file_update_string_name_ascii.html"},{"title":"json_file_update_string_val_ascii – JSON-Fortran","text":"private subroutine json_file_update_string_val_ascii(me, path, val, found, trim_str, adjustl_str) Alternate version of json_file_update_string , where “val” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path character(kind=CDK, len=*), intent(in) :: val logical(kind=LK), intent(out) :: found logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) Calls proc~~json_file_update_string_val_ascii~~CallsGraph proc~json_file_update_string_val_ascii json_file%json_file_update_string_val_ascii interface~to_unicode to_unicode proc~json_file_update_string_val_ascii->interface~to_unicode none~update~2 json_file%update proc~json_file_update_string_val_ascii->none~update~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~update~2->proc~json_file_update_string_val_ascii proc~json_file_update_string_name_ascii json_file%json_file_update_string_name_ascii none~update~2->proc~json_file_update_string_name_ascii proc~json_file_update_string_name_ascii->interface~to_unicode proc~json_file_update_string_name_ascii->none~update~2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_update_string_val_ascii~~CalledByGraph proc~json_file_update_string_val_ascii json_file%json_file_update_string_val_ascii none~update~2 json_file%update proc~json_file_update_string_val_ascii->none~update~2 none~update~2->proc~json_file_update_string_val_ascii proc~json_file_update_string_name_ascii json_file%json_file_update_string_name_ascii none~update~2->proc~json_file_update_string_name_ascii proc~json_file_update_real32 json_file%json_file_update_real32 proc~json_file_update_real32->none~update~2 proc~json_file_update_string_name_ascii->none~update~2 proc~wrap_json_file_update_integer json_file%wrap_json_file_update_integer proc~wrap_json_file_update_integer->none~update~2 proc~wrap_json_file_update_logical json_file%wrap_json_file_update_logical proc~wrap_json_file_update_logical->none~update~2 proc~wrap_json_file_update_real json_file%wrap_json_file_update_real proc~wrap_json_file_update_real->none~update~2 proc~wrap_json_file_update_real32 json_file%wrap_json_file_update_real32 proc~wrap_json_file_update_real32->none~update~2 proc~wrap_json_file_update_string json_file%wrap_json_file_update_string proc~wrap_json_file_update_string->none~update~2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_update_string_val_ascii ( me , path , val , found , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path character ( kind = CDK , len =* ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (note that ADJUSTL is done before TRIM) call me % update ( path , to_unicode ( val ), found , trim_str , adjustl_str ) end subroutine json_file_update_string_val_ascii","tags":"","loc":"proc/json_file_update_string_val_ascii.html"},{"title":"json_file_variable_info – JSON-Fortran","text":"private subroutine json_file_variable_info(me, path, found, var_type, n_children, name) Returns information about a variable in a json_file . Note If found is present, no exceptions will be thrown if an\n error occurs. Otherwise, an exception will be thrown if the\n variable is not found. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path path to the variable logical(kind=LK), intent(out), optional :: found the variable exists in the structure integer(kind=IK), intent(out), optional :: var_type variable type integer(kind=IK), intent(out), optional :: n_children number of children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name Calls proc~~json_file_variable_info~~CallsGraph proc~json_file_variable_info json_file%json_file_variable_info none~info~2 json_core%info proc~json_file_variable_info->none~info~2 proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~throw_exception json_core%throw_exception proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~wrap_json_info_by_path->none~info~2 interface~to_unicode to_unicode proc~wrap_json_info_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_variable_info~~CalledByGraph proc~json_file_variable_info json_file%json_file_variable_info none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info proc~wrap_json_file_variable_info->none~info Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_file_variable_info ( me , path , found , var_type , n_children , name ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable logical ( LK ), intent ( out ), optional :: found !! the variable exists in the structure integer ( IK ), intent ( out ), optional :: var_type !! variable type integer ( IK ), intent ( out ), optional :: n_children !! number of children character ( kind = CK , len = :), allocatable , intent ( out ), optional :: name !! variable name call me % core % info ( me % p , path , found , var_type , n_children , name ) end subroutine json_file_variable_info","tags":"","loc":"proc/json_file_variable_info.html"},{"title":"json_file_variable_matrix_info – JSON-Fortran","text":"private subroutine json_file_variable_matrix_info(me, path, is_matrix, found, var_type, n_sets, set_size, name) Returns matrix information about a variable in a json_file . Note If found is present, no exceptions will be thrown if an\n error occurs. Otherwise, an exception will be thrown if the\n variable is not found. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, 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\nthe matrix (if all elements have\nthe same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name Calls proc~~json_file_variable_matrix_info~~CallsGraph proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info none~matrix_info~2 json_core%matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~get_child json_core%get_child proc~json_matrix_info->none~get_child none~info~2 json_core%info proc~json_matrix_info->none~info~2 none~throw_exception json_core%throw_exception proc~json_matrix_info->none~throw_exception proc~json_matrix_info_by_path->none~matrix_info~2 none~get~2 json_core%get proc~json_matrix_info_by_path->none~get~2 proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_matrix_info_by_path->proc~json_clear_exceptions proc~wrap_json_matrix_info_by_path->none~matrix_info~2 interface~to_unicode to_unicode proc~wrap_json_matrix_info_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~get_child proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~convert->none~info~2 proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_file_variable_matrix_info~~CalledByGraph proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info->none~matrix_info Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine 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 = CK , 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 % core % matrix_info ( me % p , path , is_matrix , found , var_type , n_sets , set_size , name ) end subroutine json_file_variable_matrix_info","tags":"","loc":"proc/json_file_variable_matrix_info.html"},{"title":"set_json_core_in_file – JSON-Fortran","text":"private subroutine set_json_core_in_file(me, core) Set the json_core for this json_file . Note This does not destroy the data in the file. Note This one is used if you want to initialize the file with\n an already-existing json_core (presumably, this was already\n initialized by a call to initialize_json_core or similar). Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me type( json_core ), intent(in) :: core Called by proc~~set_json_core_in_file~~CalledByGraph proc~set_json_core_in_file json_file%set_json_core_in_file none~initialize json_file%initialize none~initialize->proc~set_json_core_in_file proc~initialize_json_file initialize_json_file proc~initialize_json_file->none~initialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~initialize proc~json_file_move_pointer json_file%json_file_move_pointer proc~json_file_move_pointer->none~initialize interface~json_file json_file interface~json_file->proc~initialize_json_file interface~json_file->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine set_json_core_in_file ( me , core ) implicit none class ( json_file ), intent ( inout ) :: me type ( json_core ), intent ( in ) :: core me % core = core end subroutine set_json_core_in_file","tags":"","loc":"proc/set_json_core_in_file.html"},{"title":"wrap_assign_string_to_json_file – JSON-Fortran","text":"private subroutine wrap_assign_string_to_json_file(me, str) Alternate version of assign_string_to_json_file , where “str” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: str Calls proc~~wrap_assign_string_to_json_file~~CallsGraph proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file interface~to_unicode to_unicode proc~wrap_assign_string_to_json_file->interface~to_unicode proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~deserialize json_file%deserialize proc~assign_string_to_json_file->none~deserialize proc~json_clear_exceptions json_core%json_clear_exceptions proc~assign_string_to_json_file->proc~json_clear_exceptions proc~json_failed json_core%json_failed proc~assign_string_to_json_file->proc~json_failed proc~json_file_destroy json_file%json_file_destroy proc~assign_string_to_json_file->proc~json_file_destroy proc~json_file_load_from_string json_file%json_file_load_from_string none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string none~destroy~3 json_core%destroy proc~json_file_destroy->none~destroy~3 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_file_load_from_string->proc~json_file_destroy none~deserialize~2 json_core%deserialize proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_file_load_from_string->interface~to_unicode proc~wrap_json_file_load_from_string->none~deserialize proc~json_parse_string json_core%json_parse_string none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data none~throw_exception json_core%throw_exception proc~json_parse_string->none~throw_exception proc~annotate_invalid_json json_core%annotate_invalid_json proc~json_parse_string->proc~annotate_invalid_json proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_initialize json_core%json_initialize proc~json_parse_string->proc~json_initialize proc~json_parse_end json_core%json_parse_end proc~json_parse_string->proc~json_parse_end proc~json_prepare_parser json_core%json_prepare_parser proc~json_parse_string->proc~json_prepare_parser proc~json_value_create json_value_create proc~json_parse_string->proc~json_value_create proc~parse_value json_core%parse_value proc~json_parse_string->proc~parse_value proc~wrap_json_parse_string->interface~to_unicode proc~wrap_json_parse_string->none~deserialize~2 proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~get_current_line_from_file_sequential json_core%get_current_line_from_file_sequential proc~annotate_invalid_json->proc~get_current_line_from_file_sequential proc~get_current_line_from_file_stream json_core%get_current_line_from_file_stream proc~annotate_invalid_json->proc~get_current_line_from_file_stream proc~integer_to_string integer_to_string proc~annotate_invalid_json->proc~integer_to_string proc~json_traverse json_core%json_traverse proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_initialize->proc~json_clear_exceptions proc~json_initialize->none~throw_exception proc~json_initialize->proc~integer_to_string proc~json_parse_end->none~throw_exception proc~pop_char json_core%pop_char proc~json_parse_end->proc~pop_char proc~parse_value->none~throw_exception proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_for_chars json_core%parse_for_chars proc~parse_value->proc~parse_for_chars proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~parse_string json_core%parse_string proc~parse_value->proc~parse_string proc~parse_value->proc~pop_char proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~to_array json_core%to_array proc~parse_value->proc~to_array proc~to_logical json_core%to_logical proc~parse_value->proc~to_logical proc~to_null json_core%to_null proc~parse_value->proc~to_null proc~to_object json_core%to_object proc~parse_value->proc~to_object proc~to_string json_core%to_string proc~parse_value->proc~to_string proc~json_traverse->none~throw_exception proc~parse_array->none~destroy~3 proc~parse_array->none~throw_exception proc~parse_array->proc~json_value_create proc~parse_array->proc~parse_value proc~parse_array->proc~pop_char none~add~4 json_core%add proc~parse_array->none~add~4 proc~parse_for_chars->none~throw_exception proc~parse_for_chars->proc~pop_char proc~parse_number->proc~json_clear_exceptions proc~parse_number->proc~pop_char proc~parse_number->proc~push_char proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real proc~parse_object->none~destroy~3 proc~parse_object->none~throw_exception proc~parse_object->proc~json_value_create proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~pop_char proc~parse_object->none~add~4 proc~parse_string->none~throw_exception proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~push_char->none~throw_exception proc~push_char->proc~integer_to_string proc~to_array->proc~destroy_json_data proc~to_logical->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_assign_string_to_json_file ( me , str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: str call me % assign_string_to_json_file ( to_unicode ( str )) end subroutine wrap_assign_string_to_json_file","tags":"","loc":"proc/wrap_assign_string_to_json_file.html"},{"title":"wrap_json_file_add_integer – JSON-Fortran","text":"private subroutine wrap_json_file_add_integer(me, path, val, found, was_created) Alternate version of json_file_add_integer , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_file_add_integer~~CallsGraph proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer interface~to_unicode to_unicode proc~wrap_json_file_add_integer->interface~to_unicode proc~json_file_add_integer json_file%json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_integer->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_integer->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_add_integer ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_integer ( to_unicode ( path ), val , found , was_created ) end subroutine wrap_json_file_add_integer","tags":"","loc":"proc/wrap_json_file_add_integer.html"},{"title":"wrap_json_file_add_integer_vec – JSON-Fortran","text":"private subroutine wrap_json_file_add_integer_vec(me, path, vec, found, was_created) Alternate version of json_file_add_integer_vec , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_file_add_integer_vec~~CallsGraph proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec interface~to_unicode to_unicode proc~wrap_json_file_add_integer_vec->interface~to_unicode proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_integer_vec->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_integer_vec->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_add_integer_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_integer_vec ( to_unicode ( path ), vec , found , was_created ) end subroutine wrap_json_file_add_integer_vec","tags":"","loc":"proc/wrap_json_file_add_integer_vec.html"},{"title":"wrap_json_file_add_logical – JSON-Fortran","text":"private subroutine wrap_json_file_add_logical(me, path, val, found, was_created) Alternate version of json_file_add_logical , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_file_add_logical~~CallsGraph proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical interface~to_unicode to_unicode proc~wrap_json_file_add_logical->interface~to_unicode proc~json_file_add_logical json_file%json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_logical->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_logical->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_add_logical ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_logical ( to_unicode ( path ), val , found , was_created ) end subroutine wrap_json_file_add_logical","tags":"","loc":"proc/wrap_json_file_add_logical.html"},{"title":"wrap_json_file_add_logical_vec – JSON-Fortran","text":"private subroutine wrap_json_file_add_logical_vec(me, path, vec, found, was_created) Alternate version of json_file_add_logical_vec , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_file_add_logical_vec~~CallsGraph proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec interface~to_unicode to_unicode proc~wrap_json_file_add_logical_vec->interface~to_unicode proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_logical_vec->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_logical_vec->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_add_logical_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_logical_vec ( to_unicode ( path ), vec , found , was_created ) end subroutine wrap_json_file_add_logical_vec","tags":"","loc":"proc/wrap_json_file_add_logical_vec.html"},{"title":"wrap_json_file_add_object – JSON-Fortran","text":"private subroutine wrap_json_file_add_object(me, path, p, found, was_created) Alternate version of json_file_add_object , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(in), pointer :: p pointer to the variable to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_file_add_object~~CallsGraph proc~wrap_json_file_add_object json_file%wrap_json_file_add_object interface~to_unicode to_unicode proc~wrap_json_file_add_object->interface~to_unicode proc~json_file_add_object json_file%json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_object->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_object->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_add_object ( me , path , p , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable type ( json_value ), pointer , intent ( in ) :: p !! pointer to the variable to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_object ( to_unicode ( path ), p , found , was_created ) end subroutine wrap_json_file_add_object","tags":"","loc":"proc/wrap_json_file_add_object.html"},{"title":"wrap_json_file_add_real – JSON-Fortran","text":"private subroutine wrap_json_file_add_real(me, path, val, found, was_created) Alternate version of json_file_add_real , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_file_add_real~~CallsGraph proc~wrap_json_file_add_real json_file%wrap_json_file_add_real interface~to_unicode to_unicode proc~wrap_json_file_add_real->interface~to_unicode proc~json_file_add_real json_file%json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_real->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_real->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_add_real ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_real ( to_unicode ( path ), val , found , was_created ) end subroutine wrap_json_file_add_real","tags":"","loc":"proc/wrap_json_file_add_real.html"},{"title":"wrap_json_file_add_real32 – JSON-Fortran","text":"private subroutine wrap_json_file_add_real32(me, path, val, found, was_created) Alternate version of json_file_add_real32 , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_file_add_real32~~CallsGraph proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 interface~to_unicode to_unicode proc~wrap_json_file_add_real32->interface~to_unicode proc~json_file_add_real32 json_file%json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_real32->none~add_by_path~2 proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_add_real32 ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_real32 ( to_unicode ( path ), val , found , was_created ) end subroutine wrap_json_file_add_real32","tags":"","loc":"proc/wrap_json_file_add_real32.html"},{"title":"wrap_json_file_add_real32_vec – JSON-Fortran","text":"private subroutine wrap_json_file_add_real32_vec(me, path, vec, found, was_created) Alternate version of json_file_add_real32_vec , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_file_add_real32_vec~~CallsGraph proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec interface~to_unicode to_unicode proc~wrap_json_file_add_real32_vec->interface~to_unicode proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_add_real32_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_real32_vec ( to_unicode ( path ), vec , found , was_created ) end subroutine wrap_json_file_add_real32_vec","tags":"","loc":"proc/wrap_json_file_add_real32_vec.html"},{"title":"wrap_json_file_add_real_vec – JSON-Fortran","text":"private subroutine wrap_json_file_add_real_vec(me, path, vec, found, was_created) Alternate version of json_file_add_real_vec , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_file_add_real_vec~~CallsGraph proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec interface~to_unicode to_unicode proc~wrap_json_file_add_real_vec->interface~to_unicode proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_real_vec->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_real_vec->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_add_real_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_real_vec ( to_unicode ( path ), vec , found , was_created ) end subroutine wrap_json_file_add_real_vec","tags":"","loc":"proc/wrap_json_file_add_real_vec.html"},{"title":"wrap_json_file_add_string – JSON-Fortran","text":"private subroutine wrap_json_file_add_string(me, path, val, found, was_created, trim_str, adjustl_str) Alternate version of json_file_add_string , where “path” and “val” are kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) Calls proc~~wrap_json_file_add_string~~CallsGraph proc~wrap_json_file_add_string json_file%wrap_json_file_add_string interface~to_unicode to_unicode proc~wrap_json_file_add_string->interface~to_unicode proc~json_file_add_string json_file%json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_string->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_string->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_add_string ( me , path , val , found , was_created , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (note that ADJUSTL is done before TRIM) call me % json_file_add_string ( to_unicode ( path ), to_unicode ( val ), found ,& was_created , trim_str , adjustl_str ) end subroutine wrap_json_file_add_string","tags":"","loc":"proc/wrap_json_file_add_string.html"},{"title":"wrap_json_file_add_string_vec – JSON-Fortran","text":"private subroutine wrap_json_file_add_string_vec(me, path, vec, found, was_created, ilen, trim_str, adjustl_str) Alternate version of json_file_add_string_vec , where “path” and “vec” are kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element\n(note that ADJUSTL is done before TRIM) Calls proc~~wrap_json_file_add_string_vec~~CallsGraph proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec interface~to_unicode to_unicode proc~wrap_json_file_add_string_vec->interface~to_unicode proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add_by_path~2 json_core%add_by_path proc~json_file_add_string_vec->none~add_by_path~2 none~create_object json_core%create_object proc~json_file_add_string_vec->none~create_object proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_object proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~to_null->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_add_string_vec ( me , path , vec , found ,& was_created , ilen , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created integer ( IK ), dimension (:), intent ( in ), optional :: ilen !! the string lengths of each !! element in `value`. If not present, !! the full `len(value)` string is added !! for each element. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element !! (note that ADJUSTL is done before TRIM) call me % json_file_add_string_vec ( to_unicode ( path ), to_unicode ( vec ), found ,& was_created , ilen , trim_str , adjustl_str ) end subroutine wrap_json_file_add_string_vec","tags":"","loc":"proc/wrap_json_file_add_string_vec.html"},{"title":"wrap_json_file_get_alloc_string_vec – JSON-Fortran","text":"private subroutine wrap_json_file_get_alloc_string_vec(me, path, vec, ilen, found, default, default_ilen) Alternate version of json_file_get_alloc_string_vec , where “path” is kind=CDK.\nThis is just a wrapper for wrap_json_get_alloc_string_vec_by_path . Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec value vector integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default integer(kind=IK), intent(in), optional, dimension(:) :: default_ilen the actual\nlength of default Calls proc~~wrap_json_file_get_alloc_string_vec~~CallsGraph proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec interface~to_unicode to_unicode proc~wrap_json_file_get_alloc_string_vec->interface~to_unicode none~get json_file%get proc~wrap_json_file_get_alloc_string_vec->none~get proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get->proc~json_file_get_alloc_string_vec proc~json_file_get_integer json_file%json_file_get_integer none~get->proc~json_file_get_integer proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get->proc~json_file_get_integer_vec proc~json_file_get_logical json_file%json_file_get_logical none~get->proc~json_file_get_logical proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get->proc~json_file_get_logical_vec proc~json_file_get_object json_file%json_file_get_object none~get->proc~json_file_get_object proc~json_file_get_real json_file%json_file_get_real none~get->proc~json_file_get_real proc~json_file_get_real32 json_file%json_file_get_real32 none~get->proc~json_file_get_real32 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get->proc~json_file_get_real32_vec proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get->proc~json_file_get_real_vec proc~json_file_get_root json_file%json_file_get_root none~get->proc~json_file_get_root proc~json_file_get_string json_file%json_file_get_string none~get->proc~json_file_get_string proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get~2 json_core%get proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object->none~get~2 proc~json_file_get_real->none~get~2 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec->none~get~2 proc~wrap_json_file_get_integer->interface~to_unicode proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->interface~to_unicode proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->interface~to_unicode proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->interface~to_unicode proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->interface~to_unicode proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->interface~to_unicode proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->interface~to_unicode proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->interface~to_unicode proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->interface~to_unicode proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->interface~to_unicode proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->interface~to_unicode proc~wrap_json_file_get_string_vec->none~get proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_get_alloc_string_vec~~CalledByGraph proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get json_file%get proc~wrap_json_file_get_alloc_string_vec->none~get none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_get_alloc_string_vec ( me , path , vec , ilen , found , default , default_ilen ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len = :), dimension (:), allocatable , intent ( out ) :: vec !! value vector integer ( IK ), dimension (:), allocatable , intent ( out ) :: ilen !! the actual length !! of each character !! string in the array logical ( LK ), intent ( out ), optional :: found character ( kind = CK , len =* ), dimension (:), intent ( in ), optional :: default integer ( IK ), dimension (:), intent ( in ), optional :: default_ilen !! the actual !! length of `default` call me % get ( to_unicode ( path ), vec , ilen , found , default , default_ilen ) end subroutine wrap_json_file_get_alloc_string_vec","tags":"","loc":"proc/wrap_json_file_get_alloc_string_vec.html"},{"title":"wrap_json_file_get_integer – JSON-Fortran","text":"private subroutine wrap_json_file_get_integer(me, path, val, found, default) Alternate version of json_file_get_integer , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found integer(kind=IK), intent(in), optional :: default Calls proc~~wrap_json_file_get_integer~~CallsGraph proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer interface~to_unicode to_unicode proc~wrap_json_file_get_integer->interface~to_unicode none~get json_file%get proc~wrap_json_file_get_integer->none~get proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get->proc~wrap_json_file_get_integer proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get->proc~json_file_get_alloc_string_vec proc~json_file_get_integer json_file%json_file_get_integer none~get->proc~json_file_get_integer proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get->proc~json_file_get_integer_vec proc~json_file_get_logical json_file%json_file_get_logical none~get->proc~json_file_get_logical proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get->proc~json_file_get_logical_vec proc~json_file_get_object json_file%json_file_get_object none~get->proc~json_file_get_object proc~json_file_get_real json_file%json_file_get_real none~get->proc~json_file_get_real proc~json_file_get_real32 json_file%json_file_get_real32 none~get->proc~json_file_get_real32 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get->proc~json_file_get_real32_vec proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get->proc~json_file_get_real_vec proc~json_file_get_root json_file%json_file_get_root none~get->proc~json_file_get_root proc~json_file_get_string json_file%json_file_get_string none~get->proc~json_file_get_string proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get~2 json_core%get proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object->none~get~2 proc~json_file_get_real->none~get~2 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec->none~get~2 proc~wrap_json_file_get_alloc_string_vec->interface~to_unicode proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer_vec->interface~to_unicode proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->interface~to_unicode proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->interface~to_unicode proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->interface~to_unicode proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->interface~to_unicode proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->interface~to_unicode proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->interface~to_unicode proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->interface~to_unicode proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->interface~to_unicode proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->interface~to_unicode proc~wrap_json_file_get_string_vec->none~get proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_get_integer~~CalledByGraph proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get json_file%get proc~wrap_json_file_get_integer->none~get none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_get_integer ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found integer ( IK ), intent ( in ), optional :: default call me % get ( to_unicode ( path ), val , found , default ) end subroutine wrap_json_file_get_integer","tags":"","loc":"proc/wrap_json_file_get_integer.html"},{"title":"wrap_json_file_get_integer_vec – JSON-Fortran","text":"private subroutine wrap_json_file_get_integer_vec(me, path, vec, found, default) Alternate version of json_file_get_integer_vec , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found integer(kind=IK), intent(in), optional, dimension(:) :: default Calls proc~~wrap_json_file_get_integer_vec~~CallsGraph proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec interface~to_unicode to_unicode proc~wrap_json_file_get_integer_vec->interface~to_unicode none~get json_file%get proc~wrap_json_file_get_integer_vec->none~get proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get->proc~wrap_json_file_get_integer_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get->proc~json_file_get_alloc_string_vec proc~json_file_get_integer json_file%json_file_get_integer none~get->proc~json_file_get_integer proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get->proc~json_file_get_integer_vec proc~json_file_get_logical json_file%json_file_get_logical none~get->proc~json_file_get_logical proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get->proc~json_file_get_logical_vec proc~json_file_get_object json_file%json_file_get_object none~get->proc~json_file_get_object proc~json_file_get_real json_file%json_file_get_real none~get->proc~json_file_get_real proc~json_file_get_real32 json_file%json_file_get_real32 none~get->proc~json_file_get_real32 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get->proc~json_file_get_real32_vec proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get->proc~json_file_get_real_vec proc~json_file_get_root json_file%json_file_get_root none~get->proc~json_file_get_root proc~json_file_get_string json_file%json_file_get_string none~get->proc~json_file_get_string proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get~2 json_core%get proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object->none~get~2 proc~json_file_get_real->none~get~2 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec->none~get~2 proc~wrap_json_file_get_alloc_string_vec->interface~to_unicode proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->interface~to_unicode proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_logical->interface~to_unicode proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->interface~to_unicode proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->interface~to_unicode proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->interface~to_unicode proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->interface~to_unicode proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->interface~to_unicode proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->interface~to_unicode proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->interface~to_unicode proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->interface~to_unicode proc~wrap_json_file_get_string_vec->none~get proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_get_integer_vec~~CalledByGraph proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get json_file%get proc~wrap_json_file_get_integer_vec->none~get none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_get_integer_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found integer ( IK ), dimension (:), intent ( in ), optional :: default call me % get ( to_unicode ( path ), vec , found , default ) end subroutine wrap_json_file_get_integer_vec","tags":"","loc":"proc/wrap_json_file_get_integer_vec.html"},{"title":"wrap_json_file_get_logical – JSON-Fortran","text":"private subroutine wrap_json_file_get_logical(me, path, val, found, default) Alternate version of json_file_get_logical , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found logical(kind=LK), intent(in), optional :: default Calls proc~~wrap_json_file_get_logical~~CallsGraph proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical interface~to_unicode to_unicode proc~wrap_json_file_get_logical->interface~to_unicode none~get json_file%get proc~wrap_json_file_get_logical->none~get proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get->proc~wrap_json_file_get_logical proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get->proc~json_file_get_alloc_string_vec proc~json_file_get_integer json_file%json_file_get_integer none~get->proc~json_file_get_integer proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get->proc~json_file_get_integer_vec proc~json_file_get_logical json_file%json_file_get_logical none~get->proc~json_file_get_logical proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get->proc~json_file_get_logical_vec proc~json_file_get_object json_file%json_file_get_object none~get->proc~json_file_get_object proc~json_file_get_real json_file%json_file_get_real none~get->proc~json_file_get_real proc~json_file_get_real32 json_file%json_file_get_real32 none~get->proc~json_file_get_real32 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get->proc~json_file_get_real32_vec proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get->proc~json_file_get_real_vec proc~json_file_get_root json_file%json_file_get_root none~get->proc~json_file_get_root proc~json_file_get_string json_file%json_file_get_string none~get->proc~json_file_get_string proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get~2 json_core%get proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object->none~get~2 proc~json_file_get_real->none~get~2 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec->none~get~2 proc~wrap_json_file_get_alloc_string_vec->interface~to_unicode proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->interface~to_unicode proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->interface~to_unicode proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical_vec->interface~to_unicode proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->interface~to_unicode proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->interface~to_unicode proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->interface~to_unicode proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->interface~to_unicode proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->interface~to_unicode proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->interface~to_unicode proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->interface~to_unicode proc~wrap_json_file_get_string_vec->none~get proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_get_logical~~CalledByGraph proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get json_file%get proc~wrap_json_file_get_logical->none~get none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_get_logical ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found logical ( LK ), intent ( in ), optional :: default call me % get ( to_unicode ( path ), val , found , default ) end subroutine wrap_json_file_get_logical","tags":"","loc":"proc/wrap_json_file_get_logical.html"},{"title":"wrap_json_file_get_logical_vec – JSON-Fortran","text":"private subroutine wrap_json_file_get_logical_vec(me, path, vec, found, default) Alternate version of json_file_get_logical_vec , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found logical(kind=LK), intent(in), optional, dimension(:) :: default Calls proc~~wrap_json_file_get_logical_vec~~CallsGraph proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec interface~to_unicode to_unicode proc~wrap_json_file_get_logical_vec->interface~to_unicode none~get json_file%get proc~wrap_json_file_get_logical_vec->none~get proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get->proc~wrap_json_file_get_logical_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get->proc~json_file_get_alloc_string_vec proc~json_file_get_integer json_file%json_file_get_integer none~get->proc~json_file_get_integer proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get->proc~json_file_get_integer_vec proc~json_file_get_logical json_file%json_file_get_logical none~get->proc~json_file_get_logical proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get->proc~json_file_get_logical_vec proc~json_file_get_object json_file%json_file_get_object none~get->proc~json_file_get_object proc~json_file_get_real json_file%json_file_get_real none~get->proc~json_file_get_real proc~json_file_get_real32 json_file%json_file_get_real32 none~get->proc~json_file_get_real32 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get->proc~json_file_get_real32_vec proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get->proc~json_file_get_real_vec proc~json_file_get_root json_file%json_file_get_root none~get->proc~json_file_get_root proc~json_file_get_string json_file%json_file_get_string none~get->proc~json_file_get_string proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get~2 json_core%get proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object->none~get~2 proc~json_file_get_real->none~get~2 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec->none~get~2 proc~wrap_json_file_get_alloc_string_vec->interface~to_unicode proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->interface~to_unicode proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->interface~to_unicode proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->interface~to_unicode proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_object->interface~to_unicode proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->interface~to_unicode proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->interface~to_unicode proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->interface~to_unicode proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->interface~to_unicode proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->interface~to_unicode proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->interface~to_unicode proc~wrap_json_file_get_string_vec->none~get proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_get_logical_vec~~CalledByGraph proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get json_file%get proc~wrap_json_file_get_logical_vec->none~get none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_get_logical_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found logical ( LK ), dimension (:), intent ( in ), optional :: default call me % get ( to_unicode ( path ), vec , found , default ) end subroutine wrap_json_file_get_logical_vec","tags":"","loc":"proc/wrap_json_file_get_logical_vec.html"},{"title":"wrap_json_file_get_object – JSON-Fortran","text":"private subroutine wrap_json_file_get_object(me, path, p, found) Alternate version of json_file_get_object , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(out), pointer :: p pointer to the variable logical(kind=LK), intent(out), optional :: found if it was really found Calls proc~~wrap_json_file_get_object~~CallsGraph proc~wrap_json_file_get_object json_file%wrap_json_file_get_object interface~to_unicode to_unicode proc~wrap_json_file_get_object->interface~to_unicode none~get json_file%get proc~wrap_json_file_get_object->none~get proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get->proc~wrap_json_file_get_object proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get->proc~json_file_get_alloc_string_vec proc~json_file_get_integer json_file%json_file_get_integer none~get->proc~json_file_get_integer proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get->proc~json_file_get_integer_vec proc~json_file_get_logical json_file%json_file_get_logical none~get->proc~json_file_get_logical proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get->proc~json_file_get_logical_vec proc~json_file_get_object json_file%json_file_get_object none~get->proc~json_file_get_object proc~json_file_get_real json_file%json_file_get_real none~get->proc~json_file_get_real proc~json_file_get_real32 json_file%json_file_get_real32 none~get->proc~json_file_get_real32 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get->proc~json_file_get_real32_vec proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get->proc~json_file_get_real_vec proc~json_file_get_root json_file%json_file_get_root none~get->proc~json_file_get_root proc~json_file_get_string json_file%json_file_get_string none~get->proc~json_file_get_string proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get~2 json_core%get proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object->none~get~2 proc~json_file_get_real->none~get~2 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec->none~get~2 proc~wrap_json_file_get_alloc_string_vec->interface~to_unicode proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->interface~to_unicode proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->interface~to_unicode proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->interface~to_unicode proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->interface~to_unicode proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_real->interface~to_unicode proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->interface~to_unicode proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->interface~to_unicode proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->interface~to_unicode proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->interface~to_unicode proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->interface~to_unicode proc~wrap_json_file_get_string_vec->none~get proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_get_object~~CalledByGraph proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get json_file%get proc~wrap_json_file_get_object->none~get none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_get_object ( me , path , p , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable type ( json_value ), pointer , intent ( out ) :: p !! pointer to the variable logical ( LK ), intent ( out ), optional :: found !! if it was really found call me % get ( to_unicode ( path ), p , found ) end subroutine wrap_json_file_get_object","tags":"","loc":"proc/wrap_json_file_get_object.html"},{"title":"wrap_json_file_get_real – JSON-Fortran","text":"private subroutine wrap_json_file_get_real(me, path, val, found, default) Alternate version of json_file_get_real , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found real(kind=RK), intent(in), optional :: default Calls proc~~wrap_json_file_get_real~~CallsGraph proc~wrap_json_file_get_real json_file%wrap_json_file_get_real interface~to_unicode to_unicode proc~wrap_json_file_get_real->interface~to_unicode none~get json_file%get proc~wrap_json_file_get_real->none~get proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get->proc~wrap_json_file_get_real proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get->proc~json_file_get_alloc_string_vec proc~json_file_get_integer json_file%json_file_get_integer none~get->proc~json_file_get_integer proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get->proc~json_file_get_integer_vec proc~json_file_get_logical json_file%json_file_get_logical none~get->proc~json_file_get_logical proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get->proc~json_file_get_logical_vec proc~json_file_get_object json_file%json_file_get_object none~get->proc~json_file_get_object proc~json_file_get_real json_file%json_file_get_real none~get->proc~json_file_get_real proc~json_file_get_real32 json_file%json_file_get_real32 none~get->proc~json_file_get_real32 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get->proc~json_file_get_real32_vec proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get->proc~json_file_get_real_vec proc~json_file_get_root json_file%json_file_get_root none~get->proc~json_file_get_root proc~json_file_get_string json_file%json_file_get_string none~get->proc~json_file_get_string proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get~2 json_core%get proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object->none~get~2 proc~json_file_get_real->none~get~2 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec->none~get~2 proc~wrap_json_file_get_alloc_string_vec->interface~to_unicode proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->interface~to_unicode proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->interface~to_unicode proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->interface~to_unicode proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->interface~to_unicode proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->interface~to_unicode proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real32->interface~to_unicode proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->interface~to_unicode proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->interface~to_unicode proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->interface~to_unicode proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->interface~to_unicode proc~wrap_json_file_get_string_vec->none~get proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_get_real~~CalledByGraph proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get json_file%get proc~wrap_json_file_get_real->none~get none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_get_real ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( RK ), intent ( in ), optional :: default call me % get ( to_unicode ( path ), val , found , default ) end subroutine wrap_json_file_get_real","tags":"","loc":"proc/wrap_json_file_get_real.html"},{"title":"wrap_json_file_get_real32 – JSON-Fortran","text":"private subroutine wrap_json_file_get_real32(me, path, val, found, default) Alternate version of json_file_get_real32 , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found real(kind=real32), intent(in), optional :: default Calls proc~~wrap_json_file_get_real32~~CallsGraph proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 interface~to_unicode to_unicode proc~wrap_json_file_get_real32->interface~to_unicode none~get json_file%get proc~wrap_json_file_get_real32->none~get proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get->proc~wrap_json_file_get_real32 proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get->proc~json_file_get_alloc_string_vec proc~json_file_get_integer json_file%json_file_get_integer none~get->proc~json_file_get_integer proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get->proc~json_file_get_integer_vec proc~json_file_get_logical json_file%json_file_get_logical none~get->proc~json_file_get_logical proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get->proc~json_file_get_logical_vec proc~json_file_get_object json_file%json_file_get_object none~get->proc~json_file_get_object proc~json_file_get_real json_file%json_file_get_real none~get->proc~json_file_get_real proc~json_file_get_real32 json_file%json_file_get_real32 none~get->proc~json_file_get_real32 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get->proc~json_file_get_real32_vec proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get->proc~json_file_get_real_vec proc~json_file_get_root json_file%json_file_get_root none~get->proc~json_file_get_root proc~json_file_get_string json_file%json_file_get_string none~get->proc~json_file_get_string proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get~2 json_core%get proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object->none~get~2 proc~json_file_get_real->none~get~2 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec->none~get~2 proc~wrap_json_file_get_alloc_string_vec->interface~to_unicode proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->interface~to_unicode proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->interface~to_unicode proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->interface~to_unicode proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->interface~to_unicode proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->interface~to_unicode proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->interface~to_unicode proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32_vec->interface~to_unicode proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->interface~to_unicode proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->interface~to_unicode proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->interface~to_unicode proc~wrap_json_file_get_string_vec->none~get proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_get_real32~~CalledByGraph proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get json_file%get proc~wrap_json_file_get_real32->none~get none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_get_real32 ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( real32 ), intent ( in ), optional :: default call me % get ( to_unicode ( path ), val , found , default ) end subroutine wrap_json_file_get_real32","tags":"","loc":"proc/wrap_json_file_get_real32.html"},{"title":"wrap_json_file_get_real32_vec – JSON-Fortran","text":"private subroutine wrap_json_file_get_real32_vec(me, path, vec, found, default) Alternate version of json_file_get_real32_vec , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found real(kind=real32), intent(in), optional, dimension(:) :: default Calls proc~~wrap_json_file_get_real32_vec~~CallsGraph proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec interface~to_unicode to_unicode proc~wrap_json_file_get_real32_vec->interface~to_unicode none~get json_file%get proc~wrap_json_file_get_real32_vec->none~get proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get->proc~wrap_json_file_get_real32_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get->proc~json_file_get_alloc_string_vec proc~json_file_get_integer json_file%json_file_get_integer none~get->proc~json_file_get_integer proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get->proc~json_file_get_integer_vec proc~json_file_get_logical json_file%json_file_get_logical none~get->proc~json_file_get_logical proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get->proc~json_file_get_logical_vec proc~json_file_get_object json_file%json_file_get_object none~get->proc~json_file_get_object proc~json_file_get_real json_file%json_file_get_real none~get->proc~json_file_get_real proc~json_file_get_real32 json_file%json_file_get_real32 none~get->proc~json_file_get_real32 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get->proc~json_file_get_real32_vec proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get->proc~json_file_get_real_vec proc~json_file_get_root json_file%json_file_get_root none~get->proc~json_file_get_root proc~json_file_get_string json_file%json_file_get_string none~get->proc~json_file_get_string proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get~2 json_core%get proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object->none~get~2 proc~json_file_get_real->none~get~2 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec->none~get~2 proc~wrap_json_file_get_alloc_string_vec->interface~to_unicode proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->interface~to_unicode proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->interface~to_unicode proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->interface~to_unicode proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->interface~to_unicode proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->interface~to_unicode proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->interface~to_unicode proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->interface~to_unicode proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real_vec->interface~to_unicode proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->interface~to_unicode proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->interface~to_unicode proc~wrap_json_file_get_string_vec->none~get proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_get_real32_vec~~CalledByGraph proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get json_file%get proc~wrap_json_file_get_real32_vec->none~get none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_get_real32_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( real32 ), dimension (:), intent ( in ), optional :: default call me % get ( to_unicode ( path ), vec , found , default ) end subroutine wrap_json_file_get_real32_vec","tags":"","loc":"proc/wrap_json_file_get_real32_vec.html"},{"title":"wrap_json_file_get_real_vec – JSON-Fortran","text":"private subroutine wrap_json_file_get_real_vec(me, path, vec, found, default) Alternate version of json_file_get_real_vec , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found real(kind=RK), intent(in), optional, dimension(:) :: default Calls proc~~wrap_json_file_get_real_vec~~CallsGraph proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec interface~to_unicode to_unicode proc~wrap_json_file_get_real_vec->interface~to_unicode none~get json_file%get proc~wrap_json_file_get_real_vec->none~get proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get->proc~wrap_json_file_get_real_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get->proc~json_file_get_alloc_string_vec proc~json_file_get_integer json_file%json_file_get_integer none~get->proc~json_file_get_integer proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get->proc~json_file_get_integer_vec proc~json_file_get_logical json_file%json_file_get_logical none~get->proc~json_file_get_logical proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get->proc~json_file_get_logical_vec proc~json_file_get_object json_file%json_file_get_object none~get->proc~json_file_get_object proc~json_file_get_real json_file%json_file_get_real none~get->proc~json_file_get_real proc~json_file_get_real32 json_file%json_file_get_real32 none~get->proc~json_file_get_real32 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get->proc~json_file_get_real32_vec proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get->proc~json_file_get_real_vec proc~json_file_get_root json_file%json_file_get_root none~get->proc~json_file_get_root proc~json_file_get_string json_file%json_file_get_string none~get->proc~json_file_get_string proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get~2 json_core%get proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object->none~get~2 proc~json_file_get_real->none~get~2 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec->none~get~2 proc~wrap_json_file_get_alloc_string_vec->interface~to_unicode proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->interface~to_unicode proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->interface~to_unicode proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->interface~to_unicode proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->interface~to_unicode proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->interface~to_unicode proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->interface~to_unicode proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->interface~to_unicode proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->interface~to_unicode proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_string->interface~to_unicode proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->interface~to_unicode proc~wrap_json_file_get_string_vec->none~get proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_get_real_vec~~CalledByGraph proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get json_file%get proc~wrap_json_file_get_real_vec->none~get none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_get_real_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( RK ), dimension (:), intent ( in ), optional :: default call me % get ( to_unicode ( path ), vec , found , default ) end subroutine wrap_json_file_get_real_vec","tags":"","loc":"proc/wrap_json_file_get_real_vec.html"},{"title":"wrap_json_file_get_string – JSON-Fortran","text":"private subroutine wrap_json_file_get_string(me, path, val, found, default) Alternate version of json_file_get_string , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=:), intent(out), allocatable :: val value logical(kind=LK), intent(out), optional :: found if it was really found character(kind=CK, len=*), intent(in), optional :: default Calls proc~~wrap_json_file_get_string~~CallsGraph proc~wrap_json_file_get_string json_file%wrap_json_file_get_string interface~to_unicode to_unicode proc~wrap_json_file_get_string->interface~to_unicode none~get json_file%get proc~wrap_json_file_get_string->none~get proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get->proc~wrap_json_file_get_string proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get->proc~json_file_get_alloc_string_vec proc~json_file_get_integer json_file%json_file_get_integer none~get->proc~json_file_get_integer proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get->proc~json_file_get_integer_vec proc~json_file_get_logical json_file%json_file_get_logical none~get->proc~json_file_get_logical proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get->proc~json_file_get_logical_vec proc~json_file_get_object json_file%json_file_get_object none~get->proc~json_file_get_object proc~json_file_get_real json_file%json_file_get_real none~get->proc~json_file_get_real proc~json_file_get_real32 json_file%json_file_get_real32 none~get->proc~json_file_get_real32 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get->proc~json_file_get_real32_vec proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get->proc~json_file_get_real_vec proc~json_file_get_root json_file%json_file_get_root none~get->proc~json_file_get_root proc~json_file_get_string json_file%json_file_get_string none~get->proc~json_file_get_string proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get~2 json_core%get proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object->none~get~2 proc~json_file_get_real->none~get~2 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec->none~get~2 proc~wrap_json_file_get_alloc_string_vec->interface~to_unicode proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->interface~to_unicode proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->interface~to_unicode proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->interface~to_unicode proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->interface~to_unicode proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->interface~to_unicode proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->interface~to_unicode proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->interface~to_unicode proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->interface~to_unicode proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->interface~to_unicode proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string_vec->interface~to_unicode proc~wrap_json_file_get_string_vec->none~get proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_get_string~~CalledByGraph proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get json_file%get proc~wrap_json_file_get_string->none~get none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string_vec->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_get_string ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len = :), allocatable , intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found character ( kind = CK , len =* ), intent ( in ), optional :: default call me % get ( to_unicode ( path ), val , found , default ) end subroutine wrap_json_file_get_string","tags":"","loc":"proc/wrap_json_file_get_string.html"},{"title":"wrap_json_file_get_string_vec – JSON-Fortran","text":"private subroutine wrap_json_file_get_string_vec(me, path, vec, found, default) Alternate version of json_file_get_string_vec , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec value vector logical(kind=LK), intent(out), optional :: found if it was really found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default Calls proc~~wrap_json_file_get_string_vec~~CallsGraph proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec interface~to_unicode to_unicode proc~wrap_json_file_get_string_vec->interface~to_unicode none~get json_file%get proc~wrap_json_file_get_string_vec->none~get proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get->proc~wrap_json_file_get_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get->proc~json_file_get_alloc_string_vec proc~json_file_get_integer json_file%json_file_get_integer none~get->proc~json_file_get_integer proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get->proc~json_file_get_integer_vec proc~json_file_get_logical json_file%json_file_get_logical none~get->proc~json_file_get_logical proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get->proc~json_file_get_logical_vec proc~json_file_get_object json_file%json_file_get_object none~get->proc~json_file_get_object proc~json_file_get_real json_file%json_file_get_real none~get->proc~json_file_get_real proc~json_file_get_real32 json_file%json_file_get_real32 none~get->proc~json_file_get_real32 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get->proc~json_file_get_real32_vec proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get->proc~json_file_get_real_vec proc~json_file_get_root json_file%json_file_get_root none~get->proc~json_file_get_root proc~json_file_get_string json_file%json_file_get_string none~get->proc~json_file_get_string proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string none~get~2 json_core%get proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object->none~get~2 proc~json_file_get_real->none~get~2 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec->none~get~2 proc~wrap_json_file_get_alloc_string_vec->interface~to_unicode proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->interface~to_unicode proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->interface~to_unicode proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->interface~to_unicode proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->interface~to_unicode proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->interface~to_unicode proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->interface~to_unicode proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->interface~to_unicode proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->interface~to_unicode proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->interface~to_unicode proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->interface~to_unicode proc~wrap_json_file_get_string->none~get proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_get_string_vec~~CalledByGraph proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get json_file%get proc~wrap_json_file_get_string_vec->none~get none~get->proc~wrap_json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_get_string_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), dimension (:), allocatable , intent ( out ) :: vec !! value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found character ( kind = CK , len =* ), dimension (:), intent ( in ), optional :: default call me % get ( to_unicode ( path ), vec , found , default ) end subroutine wrap_json_file_get_string_vec","tags":"","loc":"proc/wrap_json_file_get_string_vec.html"},{"title":"wrap_json_file_load_from_string – JSON-Fortran","text":"private subroutine wrap_json_file_load_from_string(me, str) Alternate version of json_file_load_from_string , where “str” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: str Calls proc~~wrap_json_file_load_from_string~~CallsGraph proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string interface~to_unicode to_unicode proc~wrap_json_file_load_from_string->interface~to_unicode none~deserialize json_file%deserialize proc~wrap_json_file_load_from_string->none~deserialize proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~deserialize->proc~wrap_json_file_load_from_string proc~json_file_load_from_string json_file%json_file_load_from_string none~deserialize->proc~json_file_load_from_string none~deserialize~2 json_core%deserialize proc~json_file_load_from_string->none~deserialize~2 proc~json_file_destroy json_file%json_file_destroy proc~json_file_load_from_string->proc~json_file_destroy proc~json_parse_string json_core%json_parse_string none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~destroy~3 json_core%destroy proc~json_file_destroy->none~destroy~3 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy none~throw_exception json_core%throw_exception proc~json_parse_string->none~throw_exception proc~annotate_invalid_json json_core%annotate_invalid_json proc~json_parse_string->proc~annotate_invalid_json proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_initialize json_core%json_initialize proc~json_parse_string->proc~json_initialize proc~json_parse_end json_core%json_parse_end proc~json_parse_string->proc~json_parse_end proc~json_prepare_parser json_core%json_prepare_parser proc~json_parse_string->proc~json_prepare_parser proc~json_value_create json_value_create proc~json_parse_string->proc~json_value_create proc~parse_value json_core%parse_value proc~json_parse_string->proc~parse_value proc~wrap_json_parse_string->interface~to_unicode proc~wrap_json_parse_string->none~deserialize~2 proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~get_current_line_from_file_sequential json_core%get_current_line_from_file_sequential proc~annotate_invalid_json->proc~get_current_line_from_file_sequential proc~get_current_line_from_file_stream json_core%get_current_line_from_file_stream proc~annotate_invalid_json->proc~get_current_line_from_file_stream proc~integer_to_string integer_to_string proc~annotate_invalid_json->proc~integer_to_string proc~json_traverse json_core%json_traverse proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_initialize->none~throw_exception proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions proc~json_parse_end->none~throw_exception proc~pop_char json_core%pop_char proc~json_parse_end->proc~pop_char proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~parse_value->none~throw_exception proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_for_chars json_core%parse_for_chars proc~parse_value->proc~parse_for_chars proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~parse_string json_core%parse_string proc~parse_value->proc~parse_string proc~parse_value->proc~pop_char proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~to_array json_core%to_array proc~parse_value->proc~to_array proc~to_logical json_core%to_logical proc~parse_value->proc~to_logical proc~to_null json_core%to_null proc~parse_value->proc~to_null proc~to_object json_core%to_object proc~parse_value->proc~to_object proc~to_string json_core%to_string proc~parse_value->proc~to_string proc~json_traverse->none~throw_exception proc~parse_array->none~destroy~3 proc~parse_array->none~throw_exception proc~parse_array->proc~json_value_create proc~parse_array->proc~parse_value proc~parse_array->proc~pop_char none~add~4 json_core%add proc~parse_array->none~add~4 proc~parse_for_chars->none~throw_exception proc~parse_for_chars->proc~pop_char proc~parse_number->proc~json_clear_exceptions proc~parse_number->proc~pop_char proc~parse_number->proc~push_char proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real proc~parse_object->none~destroy~3 proc~parse_object->none~throw_exception proc~parse_object->proc~json_value_create proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~pop_char proc~parse_object->none~add~4 proc~parse_string->none~throw_exception proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~push_char->none~throw_exception proc~push_char->proc~integer_to_string proc~to_array->proc~destroy_json_data proc~to_logical->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_load_from_string~~CalledByGraph proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize json_file%deserialize proc~wrap_json_file_load_from_string->none~deserialize none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_load_from_string ( me , str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: str call me % deserialize ( to_unicode ( str )) end subroutine wrap_json_file_load_from_string","tags":"","loc":"proc/wrap_json_file_load_from_string.html"},{"title":"wrap_json_file_remove – JSON-Fortran","text":"private subroutine wrap_json_file_remove(me, path) Alternate version of json_file_remove , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable Calls proc~~wrap_json_file_remove~~CallsGraph proc~wrap_json_file_remove json_file%wrap_json_file_remove interface~to_unicode to_unicode proc~wrap_json_file_remove->interface~to_unicode none~remove json_file%remove proc~wrap_json_file_remove->none~remove proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~remove->proc~wrap_json_file_remove proc~json_file_remove json_file%json_file_remove none~remove->proc~json_file_remove none~remove_if_present json_core%remove_if_present proc~json_file_remove->none~remove_if_present proc~json_value_remove_if_present json_core%json_value_remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~get~2 json_core%get proc~json_value_remove_if_present->none~get~2 proc~json_value_remove json_core%json_value_remove proc~json_value_remove_if_present->proc~json_value_remove proc~wrap_json_value_remove_if_present->interface~to_unicode proc~wrap_json_value_remove_if_present->none~remove_if_present proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~json_value_replace->proc~json_value_remove none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_remove~~CalledByGraph proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove json_file%remove proc~wrap_json_file_remove->none~remove none~remove->proc~wrap_json_file_remove Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_remove ( me , path ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable call me % remove ( to_unicode ( path )) end subroutine wrap_json_file_remove","tags":"","loc":"proc/wrap_json_file_remove.html"},{"title":"wrap_json_file_rename – JSON-Fortran","text":"private subroutine wrap_json_file_rename(me, path, name, found) Alternate version of json_file_rename , where “path” and “name” are kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if the variable was found Calls proc~~wrap_json_file_rename~~CallsGraph proc~wrap_json_file_rename json_file%wrap_json_file_rename interface~to_unicode to_unicode proc~wrap_json_file_rename->interface~to_unicode proc~json_file_rename json_file%json_file_rename proc~wrap_json_file_rename->proc~json_file_rename proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_rename ( me , path , name , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), intent ( in ) :: name !! the new name logical ( LK ), intent ( out ), optional :: found !! if the variable was found call me % json_file_rename ( to_unicode ( path ), to_unicode ( name ), found ) end subroutine wrap_json_file_rename","tags":"","loc":"proc/wrap_json_file_rename.html"},{"title":"wrap_json_file_update_integer – JSON-Fortran","text":"private subroutine wrap_json_file_update_integer(me, path, val, found) Alternate version of json_file_update_integer , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path integer(kind=IK), intent(in) :: val logical(kind=LK), intent(out) :: found Calls proc~~wrap_json_file_update_integer~~CallsGraph proc~wrap_json_file_update_integer json_file%wrap_json_file_update_integer interface~to_unicode to_unicode proc~wrap_json_file_update_integer->interface~to_unicode none~update~2 json_file%update proc~wrap_json_file_update_integer->none~update~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_file_update_string_name_ascii json_file%json_file_update_string_name_ascii none~update~2->proc~json_file_update_string_name_ascii proc~json_file_update_string_val_ascii json_file%json_file_update_string_val_ascii none~update~2->proc~json_file_update_string_val_ascii proc~json_file_update_string_name_ascii->interface~to_unicode proc~json_file_update_string_name_ascii->none~update~2 proc~json_file_update_string_val_ascii->interface~to_unicode proc~json_file_update_string_val_ascii->none~update~2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_update_integer ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path integer ( IK ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found call me % update ( to_unicode ( path ), val , found ) end subroutine wrap_json_file_update_integer","tags":"","loc":"proc/wrap_json_file_update_integer.html"},{"title":"wrap_json_file_update_logical – JSON-Fortran","text":"private subroutine wrap_json_file_update_logical(me, path, val, found) Alternate version of json_file_update_logical , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path logical(kind=LK), intent(in) :: val logical(kind=LK), intent(out) :: found Calls proc~~wrap_json_file_update_logical~~CallsGraph proc~wrap_json_file_update_logical json_file%wrap_json_file_update_logical interface~to_unicode to_unicode proc~wrap_json_file_update_logical->interface~to_unicode none~update~2 json_file%update proc~wrap_json_file_update_logical->none~update~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_file_update_string_name_ascii json_file%json_file_update_string_name_ascii none~update~2->proc~json_file_update_string_name_ascii proc~json_file_update_string_val_ascii json_file%json_file_update_string_val_ascii none~update~2->proc~json_file_update_string_val_ascii proc~json_file_update_string_name_ascii->interface~to_unicode proc~json_file_update_string_name_ascii->none~update~2 proc~json_file_update_string_val_ascii->interface~to_unicode proc~json_file_update_string_val_ascii->none~update~2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_update_logical ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path logical ( LK ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found call me % update ( to_unicode ( path ), val , found ) end subroutine wrap_json_file_update_logical","tags":"","loc":"proc/wrap_json_file_update_logical.html"},{"title":"wrap_json_file_update_real – JSON-Fortran","text":"private subroutine wrap_json_file_update_real(me, path, val, found) Alternate version of json_file_update_real , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path real(kind=RK), intent(in) :: val logical(kind=LK), intent(out) :: found Calls proc~~wrap_json_file_update_real~~CallsGraph proc~wrap_json_file_update_real json_file%wrap_json_file_update_real interface~to_unicode to_unicode proc~wrap_json_file_update_real->interface~to_unicode none~update~2 json_file%update proc~wrap_json_file_update_real->none~update~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_file_update_string_name_ascii json_file%json_file_update_string_name_ascii none~update~2->proc~json_file_update_string_name_ascii proc~json_file_update_string_val_ascii json_file%json_file_update_string_val_ascii none~update~2->proc~json_file_update_string_val_ascii proc~json_file_update_string_name_ascii->interface~to_unicode proc~json_file_update_string_name_ascii->none~update~2 proc~json_file_update_string_val_ascii->interface~to_unicode proc~json_file_update_string_val_ascii->none~update~2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_update_real ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path real ( RK ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found call me % update ( to_unicode ( path ), val , found ) end subroutine wrap_json_file_update_real","tags":"","loc":"proc/wrap_json_file_update_real.html"},{"title":"wrap_json_file_update_real32 – JSON-Fortran","text":"private subroutine wrap_json_file_update_real32(me, path, val, found) Alternate version of json_file_update_real32 , where “path” is kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path real(kind=real32), intent(in) :: val logical(kind=LK), intent(out) :: found Calls proc~~wrap_json_file_update_real32~~CallsGraph proc~wrap_json_file_update_real32 json_file%wrap_json_file_update_real32 interface~to_unicode to_unicode proc~wrap_json_file_update_real32->interface~to_unicode none~update~2 json_file%update proc~wrap_json_file_update_real32->none~update~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_file_update_string_name_ascii json_file%json_file_update_string_name_ascii none~update~2->proc~json_file_update_string_name_ascii proc~json_file_update_string_val_ascii json_file%json_file_update_string_val_ascii none~update~2->proc~json_file_update_string_val_ascii proc~json_file_update_string_name_ascii->interface~to_unicode proc~json_file_update_string_name_ascii->none~update~2 proc~json_file_update_string_val_ascii->interface~to_unicode proc~json_file_update_string_val_ascii->none~update~2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_update_real32 ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path real ( real32 ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found call me % update ( to_unicode ( path ), val , found ) end subroutine wrap_json_file_update_real32","tags":"","loc":"proc/wrap_json_file_update_real32.html"},{"title":"wrap_json_file_update_string – JSON-Fortran","text":"private subroutine wrap_json_file_update_string(me, path, val, found, trim_str, adjustl_str) Alternate version of json_file_update_string , where “path” and “val” are kind=CDK. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CDK, len=*), intent(in) :: val logical(kind=LK), intent(out) :: found logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) Calls proc~~wrap_json_file_update_string~~CallsGraph proc~wrap_json_file_update_string json_file%wrap_json_file_update_string interface~to_unicode to_unicode proc~wrap_json_file_update_string->interface~to_unicode none~update~2 json_file%update proc~wrap_json_file_update_string->none~update~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_file_update_string_name_ascii json_file%json_file_update_string_name_ascii none~update~2->proc~json_file_update_string_name_ascii proc~json_file_update_string_val_ascii json_file%json_file_update_string_val_ascii none~update~2->proc~json_file_update_string_val_ascii proc~json_file_update_string_name_ascii->interface~to_unicode proc~json_file_update_string_name_ascii->none~update~2 proc~json_file_update_string_val_ascii->interface~to_unicode proc~json_file_update_string_val_ascii->none~update~2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_update_string ( me , path , val , found , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path character ( kind = CDK , len =* ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (note that ADJUSTL is done before TRIM) call me % update ( to_unicode ( path ), to_unicode ( val ), found , trim_str , adjustl_str ) end subroutine wrap_json_file_update_string","tags":"","loc":"proc/wrap_json_file_update_string.html"},{"title":"wrap_json_file_variable_info – JSON-Fortran","text":"private subroutine wrap_json_file_variable_info(me, path, found, var_type, n_children, name) Alternate version of json_file_variable_info , where “path” is kind=CDK. Note If found is present, no exceptions will be thrown if an\n error occurs. Otherwise, an exception will be thrown if the\n variable is not found. Type Bound json_file Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(out), optional :: var_type integer(kind=IK), intent(out), optional :: n_children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name Calls proc~~wrap_json_file_variable_info~~CallsGraph proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info interface~to_unicode to_unicode proc~wrap_json_file_variable_info->interface~to_unicode none~info json_file%info proc~wrap_json_file_variable_info->none~info proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~info->proc~wrap_json_file_variable_info proc~json_file_variable_info json_file%json_file_variable_info none~info->proc~json_file_variable_info none~info~2 json_core%info proc~json_file_variable_info->none~info~2 proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~throw_exception json_core%throw_exception proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_variable_info~~CalledByGraph proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info json_file%info proc~wrap_json_file_variable_info->none~info none~info->proc~wrap_json_file_variable_info Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_file_variable_info ( me , path , found , var_type , n_children , name ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path logical ( LK ), intent ( out ), optional :: found integer ( IK ), intent ( out ), optional :: var_type integer ( IK ), intent ( out ), optional :: n_children character ( kind = CK , len = :), allocatable , intent ( out ), optional :: name !! variable name call me % info ( to_unicode ( path ), found , var_type , n_children , name ) end subroutine wrap_json_file_variable_info","tags":"","loc":"proc/wrap_json_file_variable_info.html"},{"title":"wrap_json_file_variable_matrix_info – JSON-Fortran","text":"private subroutine wrap_json_file_variable_matrix_info(me, path, is_matrix, found, var_type, n_sets, set_size, name) Alternate version of json_file_variable_matrix_info , where “path” is kind=CDK. Note If found is present, no exceptions will be thrown if an\n error occurs. Otherwise, an exception will be thrown if the\n variable is not found. Type Bound json_file Arguments 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\nthe matrix (if all elements have\nthe same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name Calls proc~~wrap_json_file_variable_matrix_info~~CallsGraph proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info interface~to_unicode to_unicode proc~wrap_json_file_variable_matrix_info->interface~to_unicode none~matrix_info json_file%matrix_info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info none~matrix_info->proc~json_file_variable_matrix_info none~matrix_info~2 json_core%matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~get_child json_core%get_child proc~json_matrix_info->none~get_child none~info~2 json_core%info proc~json_matrix_info->none~info~2 none~throw_exception json_core%throw_exception proc~json_matrix_info->none~throw_exception proc~json_matrix_info_by_path->none~matrix_info~2 none~get~2 json_core%get proc~json_matrix_info_by_path->none~get~2 proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_matrix_info_by_path->proc~json_clear_exceptions proc~wrap_json_matrix_info_by_path->interface~to_unicode proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~get_child proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~convert->none~info~2 proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_file_variable_matrix_info~~CalledByGraph proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info json_file%matrix_info proc~wrap_json_file_variable_matrix_info->none~matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code 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","tags":"","loc":"proc/wrap_json_file_variable_matrix_info.html"},{"title":"json_file – JSON-Fortran","text":"public interface json_file Structure constructor to initialize a json_file object with an existing json_value object or a JSON string, and either the json_core settings or a json_core instance. Example ... type ( json_file ) :: my_file type ( json_value ), pointer :: json_object type ( json_core ) :: json_core_object ... ! Construct a json_object: !could do this: my_file = json_file ( json_object ) !or: my_file = json_file ( json_object , verbose = . true .) !or: my_file = json_file ( '{\"x\": [1]}' , verbose = . true .) !or: my_file = json_file ( json_object , json_core_object ) !or: my_file = json_file ( '{\"x\": [1]}' , json_core_object ) Calls interface~~json_file~~CallsGraph interface~json_file json_file proc~initialize_json_file initialize_json_file interface~json_file->proc~initialize_json_file proc~initialize_json_file_from_string initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 interface~json_file->proc~initialize_json_file_from_string_v2 proc~initialize_json_file_v2 initialize_json_file_v2 interface~json_file->proc~initialize_json_file_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 none~initialize json_file%initialize proc~initialize_json_file->none~initialize none~deserialize json_file%deserialize proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string->none~initialize proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string interface~to_unicode to_unicode proc~wrap_initialize_json_file_from_string->interface~to_unicode proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string_v2->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_file_load_from_string json_file%json_file_load_from_string none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~initialize_json_core_in_file json_file%initialize_json_core_in_file none~initialize->proc~initialize_json_core_in_file proc~set_json_core_in_file json_file%set_json_core_in_file none~initialize->proc~set_json_core_in_file proc~json_initialize json_core%json_initialize proc~initialize_json_core_in_file->proc~json_initialize none~deserialize~2 json_core%deserialize proc~json_file_load_from_string->none~deserialize~2 proc~json_file_destroy json_file%json_file_destroy proc~json_file_load_from_string->proc~json_file_destroy proc~wrap_json_file_load_from_string->interface~to_unicode proc~wrap_json_file_load_from_string->none~deserialize proc~json_parse_string json_core%json_parse_string none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~destroy~3 json_core%destroy proc~json_file_destroy->none~destroy~3 none~throw_exception json_core%throw_exception proc~json_initialize->none~throw_exception proc~integer_to_string integer_to_string proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_parse_string->proc~json_initialize proc~json_parse_string->none~throw_exception proc~annotate_invalid_json json_core%annotate_invalid_json proc~json_parse_string->proc~annotate_invalid_json proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_parse_end json_core%json_parse_end proc~json_parse_string->proc~json_parse_end proc~json_prepare_parser json_core%json_prepare_parser proc~json_parse_string->proc~json_prepare_parser proc~json_value_create json_value_create proc~json_parse_string->proc~json_value_create proc~parse_value json_core%parse_value proc~json_parse_string->proc~parse_value proc~wrap_json_parse_string->interface~to_unicode proc~wrap_json_parse_string->none~deserialize~2 proc~annotate_invalid_json->proc~integer_to_string proc~get_current_line_from_file_sequential json_core%get_current_line_from_file_sequential proc~annotate_invalid_json->proc~get_current_line_from_file_sequential proc~get_current_line_from_file_stream json_core%get_current_line_from_file_stream proc~annotate_invalid_json->proc~get_current_line_from_file_stream proc~json_traverse json_core%json_traverse proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_parse_end->none~throw_exception proc~pop_char json_core%pop_char proc~json_parse_end->proc~pop_char proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~parse_value->none~throw_exception proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_for_chars json_core%parse_for_chars proc~parse_value->proc~parse_for_chars proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~parse_string json_core%parse_string proc~parse_value->proc~parse_string proc~parse_value->proc~pop_char proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~to_array json_core%to_array proc~parse_value->proc~to_array proc~to_logical json_core%to_logical proc~parse_value->proc~to_logical proc~to_null json_core%to_null proc~parse_value->proc~to_null proc~to_object json_core%to_object proc~parse_value->proc~to_object proc~to_string json_core%to_string proc~parse_value->proc~to_string proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_traverse->none~throw_exception proc~parse_array->none~destroy~3 proc~parse_array->none~throw_exception proc~parse_array->proc~json_value_create proc~parse_array->proc~parse_value proc~parse_array->proc~pop_char none~add~4 json_core%add proc~parse_array->none~add~4 proc~parse_for_chars->none~throw_exception proc~parse_for_chars->proc~pop_char proc~parse_number->proc~json_clear_exceptions proc~parse_number->proc~pop_char proc~parse_number->proc~push_char proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real proc~parse_object->none~destroy~3 proc~parse_object->none~throw_exception proc~parse_object->proc~json_value_create proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~pop_char proc~parse_object->none~add~4 proc~parse_string->none~throw_exception proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~push_char->none~throw_exception proc~push_char->proc~integer_to_string proc~to_array->proc~destroy_json_data proc~to_logical->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Module Procedures private function initialize_json_file (p, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma, nullify_pointer) result(file_object) Author Izaak Beekman Date 07/23/2015 Cast a json_value object as a json_file object.\n It also calls the initialize() method. Read more… Arguments Type Intent Optional Attributes Name type( json_value ), optional, pointer :: p json_value object to cast\nas a json_file object. This\nwill be nullified. logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) logical(kind=LK), intent(in), optional :: nullify_pointer if True, then p will be nullified\nif present. (default is True). Normally,\nthis should be done, because the json_file will destroy\nthe pointer when the class goes out of scope (causing p to be\na dangling pointer). However, if the intent is to use p in\na json_file and then call nullify and continue\nto use p , then this should be set to False. Return Value type( json_file ) private function initialize_json_file_v2 (json_value_object, json_core_object) result(file_object) Author Jacob Williams Date 4/26/2016 Cast a json_value pointer and a json_core object\nas a json_file object. Arguments Type Intent Optional Attributes Name type( json_value ), intent(in), pointer :: json_value_object type( json_core ), intent(in) :: json_core_object Return Value type( json_file ) private function initialize_json_file_from_string (str, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) result(file_object) Author Jacob Williams Date 01/19/2019 Cast a JSON string as a json_file object.\n It also calls the initialize() method. Read more… Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str string to load JSON data from logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Return Value type( json_file ) private function wrap_initialize_json_file_from_string (str, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) result(file_object) Alternate version of initialize_json_file_from_string , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: str string to load JSON data from logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Return Value type( json_file ) private function initialize_json_file_from_string_v2 (str, json_core_object) result(file_object) Author Jacob Williams Date 1/19/2019 Cast a JSON string and a json_core object\nas a json_file object. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str string to load JSON data from type( json_core ), intent(in) :: json_core_object Return Value type( json_file ) private function wrap_initialize_json_file_from_string_v2 (str, json_core_object) result(file_object) Alternate version of initialize_json_file_from_string_v2 , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: str string to load JSON data from type( json_core ), intent(in) :: json_core_object Return Value type( json_file )","tags":"","loc":"interface/json_file.html"},{"title":"initialize_json_core – JSON-Fortran","text":"private function initialize_json_core(verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) result(json_core_object) Function constructor for a json_core .\n This is just a wrapper for json_initialize . Note initialize_json_core , json_initialize , initialize_json_core_in_file , and initialize_json_file all have a similar interface. Arguments Type Intent Optional Attributes Name logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: 1 : Default mode (see json_get_by_path_default ) 2 : as RFC 6901 “ JSON Pointer” paths\n (see json_get_by_path_rfc6901 ) 3 : JSONPath “bracket-notation”\n see json_get_by_path_jsonpath_bracket ) character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys If True [default] then no special checks\n are done to check for duplicate keys. If False, then after parsing, if any duplicate\n keys are found, an error is thrown. A call to json_value_validate will also check for\n duplicates. logical(kind=LK), intent(in), optional :: escape_solidus If True then the solidus “ / ” is always escaped\n “ \\/ ” when serializing JSON If False [default], then it is not escaped. Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : 1 : an exception will be raised if\n try to retrieve a null as a real. 2 : a null retrieved as a real\n will return a NaN. [default] 3 : a null retrieved as a real\n will return 0.0. integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: 1 : as strings (e.g., “NaN”,\n “Infinity”, “-Infinity”) [default] 2 : as JSON null values logical(kind=LK), intent(in), optional :: use_quiet_nan If true [default], null_to_real_mode=2 and string_to_real will use ieee_quiet_nan for NaN values. If false, ieee_signaling_nan will be used. logical(kind=LK), intent(in), optional :: strict_integer_type_checking If false, when parsing JSON , if an integer numeric value\n cannot be converted to an integer ( integer(IK) ),\n then an attempt is then make to convert it\n to a real ( real(RK) ). If true, an exception will be raised if the integer\n value cannot be read. (default is true) logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Return Value type( json_core ) Calls proc~~initialize_json_core~~CallsGraph proc~initialize_json_core initialize_json_core proc~json_initialize json_core%json_initialize proc~initialize_json_core->proc~json_initialize none~throw_exception json_core%throw_exception proc~json_initialize->none~throw_exception proc~integer_to_string integer_to_string proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~initialize_json_core~~CalledByGraph proc~initialize_json_core initialize_json_core interface~json_core json_core interface~json_core->proc~initialize_json_core Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function initialize_json_core (& #include \"json_initialize_dummy_arguments.inc\" ) result ( json_core_object ) implicit none type ( json_core ) :: json_core_object #include \"json_initialize_arguments.inc\" call json_core_object % initialize (& #include \"json_initialize_dummy_arguments.inc\" ) end function initialize_json_core","tags":"","loc":"proc/initialize_json_core.html"},{"title":"json_count – JSON-Fortran","text":"private function json_count(json, p) result(count) Count the number of children in the object or array. History JW : 1/4/2014 : Original routine removed.\n Now using n_children variable.\n Renamed from json_value_count . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p this should normally be a json_object or a json_array . For any other variable type this will return 0. Return Value integer(kind=IK) number of children in p . Calls proc~~json_count~~CallsGraph proc~json_count json_core%json_count none~throw_exception json_core%throw_exception proc~json_count->none~throw_exception proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function json_count ( json , p ) result ( count ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! this should normally be a `json_object` !! or a `json_array`. For any other !! variable type this will return 0. integer ( IK ) :: count !! number of children in `p`. if ( associated ( p )) then count = p % n_children else call json % throw_exception ( 'Error in json_count: ' // & 'pointer is not associated.' ) end if end function json_count","tags":"","loc":"proc/json_count.html"},{"title":"json_failed – JSON-Fortran","text":"private pure function json_failed(json) result(failed) Logical function to indicate if an exception has been thrown in a json_core . Example type ( json_core ) :: json type ( json_value ), pointer :: p logical :: status_ok character ( len = :), allocatable :: error_msg call json % load ( filename = 'myfile.json' , p ) if ( json % failed ()) then call json % check_for_errors ( status_ok , error_msg ) write ( * , * ) 'Error: ' // error_msg call json % clear_exceptions () call json % destroy ( p ) end if Note that json_file contains a wrapper for this routine, which is used like: type ( json_file ) :: f logical :: status_ok character ( len = :), allocatable :: error_msg call f % load ( filename = 'myfile.json' ) if ( f % failed ()) then call f % check_for_errors ( status_ok , error_msg ) write ( * , * ) 'Error: ' // error_msg call f % clear_exceptions () call f % destroy () end if See also json_check_for_errors Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(in) :: json Return Value logical(kind=LK) will be true if an exception\nhas been thrown. Called by proc~~json_failed~~CalledByGraph proc~json_failed json_core%json_failed proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_failed proc~json_value_to_string json_core%json_value_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->proc~json_failed proc~json_file_failed json_file%json_file_failed proc~json_file_failed->proc~json_failed proc~json_file_update_integer json_file%json_file_update_integer proc~json_file_update_integer->proc~json_failed proc~json_file_update_logical json_file%json_file_update_logical proc~json_file_update_logical->proc~json_failed proc~json_file_update_real json_file%json_file_update_real proc~json_file_update_real->proc~json_failed proc~json_file_update_string json_file%json_file_update_string proc~json_file_update_string->proc~json_failed proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_failed proc~json_value_print->proc~json_value_print proc~json_value_validate json_core%json_value_validate proc~json_value_validate->proc~json_failed proc~json_file_move_pointer json_file%json_file_move_pointer proc~json_file_move_pointer->proc~json_file_failed proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string->proc~json_value_print proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure function json_failed ( json ) result ( failed ) implicit none class ( json_core ), intent ( in ) :: json logical ( LK ) :: failed !! will be true if an exception !! has been thrown. failed = json % exception_thrown end function json_failed","tags":"","loc":"proc/json_failed.html"},{"title":"json_is_vector – JSON-Fortran","text":"private function json_is_vector(json, p) result(is_vector) Returns true if all the children are the same type (and a scalar).\nNote that integers and reals are considered the same type for this purpose.\nThis routine is used for the compress_vectors option. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p Return Value logical(kind=LK) if all elements of a vector\nare scalars of the same type Calls proc~~json_is_vector~~CallsGraph proc~json_is_vector json_core%json_is_vector none~info~2 json_core%info proc~json_is_vector->none~info~2 none~throw_exception json_core%throw_exception proc~json_is_vector->none~throw_exception proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~wrap_json_info_by_path->none~info~2 interface~to_unicode to_unicode proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->none~get~2 proc~json_string_info->proc~json_clear_exceptions proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_is_vector~~CalledByGraph proc~json_is_vector json_core%json_is_vector proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function json_is_vector ( json , p ) result ( is_vector ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p logical ( LK ) :: is_vector !! if all elements of a vector !! are scalars of the same type integer ( IK ) :: var_type_prev !! for getting the variable type of children integer ( IK ) :: var_type !! for getting the variable type of children type ( json_value ), pointer :: element !! for getting children integer ( IK ) :: i !! counter integer ( IK ) :: count !! number of children integer ( IK ), parameter :: json_invalid = - 1_IK !! to initialize the flag. an invalid value integer ( IK ), parameter :: json_numeric = - 2_IK !! indicates `json_integer` or `json_real` if ( json % compress_vectors ) then ! check to see if every child is the same type, ! and a scalar: is_vector = . true . var_type_prev = json_invalid count = json % count ( p ) element => p % children do i = 1_IK , count if (. not . associated ( element )) then call json % throw_exception ( 'Error in json_is_vector: ' // & 'Malformed JSON linked list' ) return end if ! check variable type of all the children. ! They must all be the same, and a scalar. call json % info ( element , var_type = var_type ) ! special check for numeric values: if ( var_type == json_integer . or . var_type == json_real ) var_type = json_numeric if ( var_type == json_object . or . & var_type == json_array . or . & ( i > 1_IK . and . var_type /= var_type_prev )) then is_vector = . false . exit end if var_type_prev = var_type ! get the next child the list: element => element % next end do else is_vector = . false . end if end function json_is_vector","tags":"","loc":"proc/json_is_vector.html"},{"title":"json_valid_path – JSON-Fortran","text":"private function json_valid_path(json, p, path) result(found) Returns true if the path is present in the p JSON structure. Note Just a wrapper for json_get_by_path , so it uses the\n specified path_mode and other settings. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable Return Value logical(kind=LK) true if it was found Calls proc~~json_valid_path~~CallsGraph proc~json_valid_path json_core%json_valid_path none~get~2 json_core%get proc~json_valid_path->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_valid_path~~CalledByGraph proc~json_valid_path json_core%json_valid_path none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~wrap_json_valid_path->none~valid_path~2 none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~wrap_json_file_valid_path->none~valid_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function json_valid_path ( json , p , path ) result ( found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! a JSON linked list character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable logical ( LK ) :: found !! true if it was found type ( json_value ), pointer :: tmp !! pointer to the variable specified by `path` call json % get ( p , path , tmp , found ) end function json_valid_path","tags":"","loc":"proc/json_valid_path.html"},{"title":"json_value_is_child_of – JSON-Fortran","text":"private function json_value_is_child_of(json, p1, p2) result(is_child_of) Returns True if p2 is a descendant of p1 (i.e, a child, or a child of child, etc.) Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p1 type( json_value ), pointer :: p2 Return Value logical(kind=LK) Calls proc~~json_value_is_child_of~~CallsGraph proc~json_value_is_child_of json_core%json_value_is_child_of proc~json_traverse json_core%json_traverse proc~json_value_is_child_of->proc~json_traverse none~throw_exception json_core%throw_exception proc~json_traverse->none~throw_exception proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_is_child_of~~CalledByGraph proc~json_value_is_child_of json_core%json_value_is_child_of proc~json_value_swap json_core%json_value_swap proc~json_value_swap->proc~json_value_is_child_of Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function json_value_is_child_of ( json , p1 , p2 ) result ( is_child_of ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p1 type ( json_value ), pointer :: p2 logical ( LK ) :: is_child_of is_child_of = . false . if ( json % exception_thrown ) return if ( associated ( p1 ) . and . associated ( p2 )) then if ( associated ( p1 % children )) then call json % traverse ( p1 % children , is_child_of_callback ) end if end if contains subroutine is_child_of_callback ( json , p , finished ) !! Traverse until `p` is `p2`. implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p logical ( LK ), intent ( out ) :: finished is_child_of = associated ( p , p2 ) finished = is_child_of ! stop searching if found end subroutine is_child_of_callback end function json_value_is_child_of","tags":"","loc":"proc/json_value_is_child_of.html"},{"title":"name_equal – JSON-Fortran","text":"private function name_equal(json, p, name) result(is_equal) Returns true if name is equal to p%name , using the specified\n settings for case sensitivity and trailing whitespace. History 4/30/2016 : original version 8/25/2017 : now just a wrapper for name_strings_equal Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in) :: p the json object character(kind=CK, len=*), intent(in) :: name the name to check for Return Value logical(kind=LK) true if the string are\nlexically equal Calls proc~~name_equal~~CallsGraph proc~name_equal json_core%name_equal proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~name_equal~~CalledByGraph proc~name_equal json_core%name_equal proc~json_value_get_child_by_name json_core%json_value_get_child_by_name proc~json_value_get_child_by_name->proc~name_equal none~get_child json_core%get_child none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_matrix_info json_core%json_matrix_info proc~json_matrix_info->none~get_child none~info~2 json_core%info proc~json_matrix_info->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info~2 json_core%matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_matrix_info_by_path->none~get~2 proc~json_value_replace json_core%json_value_replace proc~json_value_replace->none~insert_after proc~wrap_json_matrix_info_by_path->none~matrix_info~2 none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~convert->proc~json_value_replace proc~convert->none~info~2 proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_member_by_path->none~info~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_by_path->none~info~2 proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~info~2 proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_by_path->none~info~2 proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~info~2 proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_file_variable_matrix_info->none~matrix_info none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function name_equal ( json , p , name ) result ( is_equal ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), intent ( in ) :: p !! the json object character ( kind = CK , len =* ), intent ( in ) :: name !! the name to check for logical ( LK ) :: is_equal !! true if the string are !! lexically equal if ( allocated ( p % name )) then ! call the low-level routines for the name strings: is_equal = json % name_strings_equal ( p % name , name ) else is_equal = name == CK_ '' ! check a blank name end if end function name_equal","tags":"","loc":"proc/name_equal.html"},{"title":"name_strings_equal – JSON-Fortran","text":"private function name_strings_equal(json, name1, name2) result(is_equal) Returns true if the name strings name1 is equal to name2 , using\nthe specified settings for case sensitivity and trailing whitespace. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CK, len=*), intent(in) :: name1 the name to check character(kind=CK, len=*), intent(in) :: name2 the name to check Return Value logical(kind=LK) true if the string are\nlexically equal Calls proc~~name_strings_equal~~CallsGraph proc~name_strings_equal json_core%name_strings_equal proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~name_strings_equal~~CalledByGraph proc~name_strings_equal json_core%name_strings_equal proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->proc~name_strings_equal none~get_child json_core%get_child proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~name_equal json_core%name_equal proc~name_equal->proc~name_strings_equal proc~json_value_get_child_by_name json_core%json_value_get_child_by_name proc~json_value_get_child_by_name->proc~name_equal none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_matrix_info json_core%json_matrix_info proc~json_matrix_info->none~get_child none~info~2 json_core%info proc~json_matrix_info->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info~2 json_core%matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_matrix_info_by_path->none~get~2 proc~json_value_replace json_core%json_value_replace proc~json_value_replace->none~insert_after proc~wrap_json_matrix_info_by_path->none~matrix_info~2 none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~convert->proc~json_value_replace proc~convert->none~info~2 proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_member_by_path->none~info~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_by_path->none~info~2 proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~info~2 proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_by_path->none~info~2 proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~info~2 proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_file_variable_matrix_info->none~matrix_info none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function name_strings_equal ( json , name1 , name2 ) result ( is_equal ) implicit none class ( json_core ), intent ( inout ) :: json character ( kind = CK , len =* ), intent ( in ) :: name1 !! the name to check character ( kind = CK , len =* ), intent ( in ) :: name2 !! the name to check logical ( LK ) :: is_equal !! true if the string are !! lexically equal !must be the same length if we are treating !trailing spaces as significant, so do a !quick test of this first: if ( json % trailing_spaces_significant ) then is_equal = len ( name1 ) == len ( name2 ) if (. not . is_equal ) return end if if ( json % case_sensitive_keys ) then is_equal = name1 == name2 else is_equal = lowercase_string ( name1 ) == lowercase_string ( name2 ) end if end function name_strings_equal","tags":"","loc":"proc/name_strings_equal.html"},{"title":"string_to_dble – JSON-Fortran","text":"private function string_to_dble(json, str) result(rval) Convert a string into a real(RK) value. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CK, len=*), intent(in) :: str a string Return Value real(kind=RK) str converted to a real(RK) Calls proc~~string_to_dble~~CallsGraph proc~string_to_dble json_core%string_to_dble none~throw_exception json_core%throw_exception proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~string_to_dble~~CalledByGraph proc~string_to_dble json_core%string_to_dble proc~parse_number json_core%parse_number proc~parse_number->proc~string_to_dble proc~parse_value json_core%parse_value proc~parse_value->proc~parse_number proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function string_to_dble ( json , str ) result ( rval ) implicit none class ( json_core ), intent ( inout ) :: json character ( kind = CK , len =* ), intent ( in ) :: str !! a string real ( RK ) :: rval !! `str` converted to a `real(RK)` logical ( LK ) :: status_ok !! error flag for [[string_to_real]] call string_to_real ( str , json % use_quiet_nan , rval , status_ok ) if (. not . status_ok ) then !if there was an error rval = 0.0_RK call json % throw_exception ( 'Error in string_to_dble: ' // & 'string cannot be converted to a real: ' // & trim ( str )) end if end function string_to_dble","tags":"","loc":"proc/string_to_dble.html"},{"title":"string_to_int – JSON-Fortran","text":"private function string_to_int(json, str) result(ival) Convert a string into an integer. Note Replacement for the parse_integer function in the original code. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CK, len=*), intent(in) :: str a string Return Value integer(kind=IK) str converted to an integer Calls proc~~string_to_int~~CallsGraph proc~string_to_int json_core%string_to_int none~throw_exception json_core%throw_exception proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~string_to_int~~CalledByGraph proc~string_to_int json_core%string_to_int proc~parse_number json_core%parse_number proc~parse_number->proc~string_to_int proc~parse_value json_core%parse_value proc~parse_value->proc~parse_number proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function string_to_int ( json , str ) result ( ival ) implicit none class ( json_core ), intent ( inout ) :: json character ( kind = CK , len =* ), intent ( in ) :: str !! a string integer ( IK ) :: ival !! `str` converted to an integer logical ( LK ) :: status_ok !! error flag for [[string_to_integer]] ! call the core routine: call string_to_integer ( str , ival , status_ok ) if (. not . status_ok ) then ival = 0 call json % throw_exception ( 'Error in string_to_int: ' // & 'string cannot be converted to an integer: ' // & trim ( str )) end if end function string_to_int","tags":"","loc":"proc/string_to_int.html"},{"title":"wrap_json_valid_path – JSON-Fortran","text":"private function wrap_json_valid_path(json, p, path) result(found) Alternate version of json_valid_path where “path” is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list character(kind=CDK, len=*), intent(in) :: path path to the variable Return Value logical(kind=LK) true if it was found Calls proc~~wrap_json_valid_path~~CallsGraph proc~wrap_json_valid_path json_core%wrap_json_valid_path interface~to_unicode to_unicode proc~wrap_json_valid_path->interface~to_unicode none~valid_path~2 json_core%valid_path proc~wrap_json_valid_path->none~valid_path~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~valid_path~2->proc~wrap_json_valid_path proc~json_valid_path json_core%json_valid_path none~valid_path~2->proc~json_valid_path none~get~2 json_core%get proc~json_valid_path->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_valid_path~~CalledByGraph proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2 json_core%valid_path proc~wrap_json_valid_path->none~valid_path~2 none~valid_path~2->proc~wrap_json_valid_path proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~wrap_json_file_valid_path->none~valid_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code function wrap_json_valid_path ( json , p , path ) result ( found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! a JSON linked list character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable logical ( LK ) :: found !! true if it was found found = json % valid_path ( p , to_unicode ( path )) end function wrap_json_valid_path","tags":"","loc":"proc/wrap_json_valid_path.html"},{"title":"annotate_invalid_json – JSON-Fortran","text":"private subroutine annotate_invalid_json(json, iunit, str) Generate a warning message if there was an error parsing a JSON file or string. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: iunit file unit number character(kind=CK, len=*), intent(in) :: str string with JSON data Calls proc~~annotate_invalid_json~~CallsGraph proc~annotate_invalid_json json_core%annotate_invalid_json proc~get_current_line_from_file_sequential json_core%get_current_line_from_file_sequential proc~annotate_invalid_json->proc~get_current_line_from_file_sequential proc~get_current_line_from_file_stream json_core%get_current_line_from_file_stream proc~annotate_invalid_json->proc~get_current_line_from_file_stream proc~integer_to_string integer_to_string proc~annotate_invalid_json->proc~integer_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~annotate_invalid_json~~CalledByGraph proc~annotate_invalid_json json_core%annotate_invalid_json proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~annotate_invalid_json proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~annotate_invalid_json none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine annotate_invalid_json ( json , iunit , str ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: iunit !! file unit number character ( kind = CK , len =* ), intent ( in ) :: str !! string with JSON data character ( kind = CK , len = :), allocatable :: line !! line containing the error character ( kind = CK , len = :), allocatable :: arrow_str !! arrow string that points !! to the current character character ( kind = CK , len = max_integer_str_len ) :: line_str !! current line number string character ( kind = CK , len = max_integer_str_len ) :: char_str !! current character count string integer ( IK ) :: i !! line number counter integer ( IK ) :: i_nl_prev !! index of previous newline character integer ( IK ) :: i_nl !! index of current newline character ! If there was an error reading the file, then ! print the line where the error occurred: if ( json % exception_thrown ) then !the counters for the current line and the last character read: call integer_to_string ( json % line_count , int_fmt , line_str ) call integer_to_string ( json % char_count , int_fmt , char_str ) !draw the arrow string that points to the current character: arrow_str = repeat ( '-' , max ( 0_IK , json % char_count - 1_IK ) ) // '^' if ( json % line_count > 0 . and . json % char_count > 0 ) then if ( iunit /= 0 ) then if ( use_unformatted_stream ) then call json % get_current_line_from_file_stream ( iunit , line ) else call json % get_current_line_from_file_sequential ( iunit , line ) end if else !get the current line from the string: ! [this is done by counting the newline characters] i_nl_prev = 0 !index of previous newline character i_nl = 2 !just in case line_count = 0 do i = 1 , json % line_count i_nl = index ( str ( i_nl_prev + 1 :), newline ) if ( i_nl == 0 ) then !last line - no newline character i_nl = len ( str ) + 1 exit end if i_nl = i_nl + i_nl_prev !index of current newline character i_nl_prev = i_nl !update for next iteration end do line = str ( i_nl_prev + 1 : i_nl - 1 ) !extract current line end if else !in this case, it was an empty line or file line = CK_ '' end if ! add a newline for the error display if necessary: line = trim ( line ) if ( len ( line ) > 0 ) then i = len ( line ) if ( line ( i : i ) /= newline ) line = line // newline else line = line // newline end if !create the error message: if ( allocated ( json % err_message )) then json % err_message = json % err_message // newline else json % err_message = '' end if json % err_message = json % err_message // & 'line: ' // trim ( adjustl ( line_str )) // ', ' // & 'character: ' // trim ( adjustl ( char_str )) // newline // & line // arrow_str if ( allocated ( line )) deallocate ( line ) end if end subroutine annotate_invalid_json","tags":"","loc":"proc/annotate_invalid_json.html"},{"title":"convert – JSON-Fortran","text":"private subroutine convert(json, p, var_type) Convert an existing JSON variable p to a different variable type .\n The existing variable (and its children) is destroyed. It is replaced\n in the structure by a new variable of type var_type (which can be a json_null , json_object or json_array ). Note This is an internal routine used when creating variables by path. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p the variable to convert integer(kind=IK), intent(in) :: var_type the variable type to convert p to Calls proc~~convert~~CallsGraph proc~convert json_core%convert none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 none~throw_exception json_core%throw_exception proc~convert->none~throw_exception proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~to_null json_core%to_null proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_info_by_path->none~info~2 interface~to_unicode to_unicode proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~wrap_json_value_create_object->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_value_insert_after_child_by_index->none~insert_after none~get_child json_core%get_child proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_default->none~get_child proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->none~get~2 proc~json_string_info->proc~json_clear_exceptions proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~convert~~CalledByGraph proc~convert json_core%convert none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~convert none~get_child json_core%get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine convert ( json , p , var_type ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! the variable to convert integer ( IK ), intent ( in ) :: var_type !! the variable type to convert `p` to type ( json_value ), pointer :: tmp !! temporary variable character ( kind = CK , len = :), allocatable :: name !! the name of a JSON variable logical :: convert_it !! if `p` needs to be converted convert_it = p % var_type /= var_type if ( convert_it ) then call json % info ( p , name = name ) ! get existing name select case ( var_type ) case ( json_object ) call json % create_object ( tmp , name ) case ( json_array ) call json % create_array ( tmp , name ) case ( json_null ) call json % create_null ( tmp , name ) case default call json % throw_exception ( 'Error in convert: invalid var_type value.' ) return end select call json % replace ( p , tmp , destroy = . true .) p => tmp nullify ( tmp ) end if end subroutine convert","tags":"","loc":"proc/convert.html"},{"title":"destroy_json_core – JSON-Fortran","text":"private subroutine destroy_json_core(me) Destructor for the json_core type. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(out) :: me Called by proc~~destroy_json_core~~CalledByGraph proc~destroy_json_core json_core%destroy_json_core none~destroy~3 json_core%destroy none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_file_destroy json_file%json_file_destroy proc~json_file_destroy->none~destroy~3 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~destroy~3 none~valid_path~2 json_core%valid_path proc~json_file_valid_path_op->none~valid_path~2 proc~json_value_destroy->none~destroy~3 proc~json_value_remove json_core%json_value_remove proc~json_value_remove->none~destroy~3 proc~parse_array json_core%parse_array proc~parse_array->none~destroy~3 proc~parse_value json_core%parse_value proc~parse_array->proc~parse_value proc~parse_object json_core%parse_object proc~parse_object->none~destroy~3 proc~parse_object->proc~parse_object proc~parse_object->proc~parse_value proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->proc~json_file_destroy none~deserialize json_file%deserialize proc~assign_string_to_json_file->none~deserialize proc~finalize_json_file finalize_json_file proc~finalize_json_file->proc~json_file_destroy proc~json_file_add json_file%json_file_add proc~json_file_add->proc~json_file_destroy proc~json_file_load json_file%json_file_load proc~json_file_load->proc~json_file_destroy none~load~2 json_core%load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->proc~json_file_destroy none~deserialize~2 json_core%deserialize proc~json_file_load_from_string->none~deserialize~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->proc~json_value_remove none~get~2 json_core%get proc~json_value_remove_if_present->none~get~2 proc~json_value_replace json_core%json_value_replace proc~json_value_replace->proc~json_value_remove none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~parse_value->proc~parse_array proc~parse_value->proc~parse_object none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present proc~convert json_core%convert proc~convert->proc~json_value_replace none~info~2 json_core%info proc~convert->none~info~2 proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->proc~json_value_replace none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->proc~json_value_replace proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2->proc~json_parse_file proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~convert none~get_child json_core%get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_file_load_from_string->none~deserialize proc~wrap_json_value_remove_if_present->none~remove_if_present interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_parse_string->none~deserialize~2 none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_file_remove->none~remove proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~string_info->proc~json_string_info none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine destroy_json_core ( me ) implicit none class ( json_core ), intent ( out ) :: me end subroutine destroy_json_core","tags":"","loc":"proc/destroy_json_core.html"},{"title":"destroy_json_data – JSON-Fortran","text":"private pure subroutine destroy_json_data(d) Destroy the data within a json_value , and reset type to json_unknown . Arguments Type Intent Optional Attributes Name type( json_value ), intent(inout) :: d Called by proc~~destroy_json_data~~CalledByGraph proc~destroy_json_data destroy_json_data proc~json_value_destroy json_core%json_value_destroy proc~json_value_destroy->proc~destroy_json_data none~destroy~3 json_core%destroy proc~json_value_destroy->none~destroy~3 proc~to_array json_core%to_array proc~to_array->proc~destroy_json_data proc~to_integer json_core%to_integer proc~to_integer->proc~destroy_json_data proc~to_logical json_core%to_logical proc~to_logical->proc~destroy_json_data proc~to_null json_core%to_null proc~to_null->proc~destroy_json_data proc~to_object json_core%to_object proc~to_object->proc~destroy_json_data proc~to_real json_core%to_real proc~to_real->proc~destroy_json_data proc~to_string json_core%to_string proc~to_string->proc~destroy_json_data none~destroy~3->proc~json_value_destroy proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->proc~to_array proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_default->proc~to_object none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_update_integer json_core%json_update_integer proc~json_update_integer->proc~to_integer none~get~2 json_core%get proc~json_update_integer->none~get~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 none~info~2 json_core%info proc~json_update_integer->none~info~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->proc~to_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~info~2 proc~json_update_real json_core%json_update_real proc~json_update_real->proc~to_real proc~json_update_real->none~get~2 proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~info~2 proc~json_update_string json_core%json_update_string proc~json_update_string->proc~to_string proc~json_update_string->none~get~2 proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~info~2 proc~json_value_create_array json_core%json_value_create_array proc~json_value_create_array->proc~to_array proc~json_value_create_integer json_core%json_value_create_integer proc~json_value_create_integer->proc~to_integer proc~json_value_create_logical json_core%json_value_create_logical proc~json_value_create_logical->proc~to_logical proc~json_value_create_null json_core%json_value_create_null proc~json_value_create_null->proc~to_null proc~json_value_create_object json_core%json_value_create_object proc~json_value_create_object->proc~to_object proc~json_value_create_real json_core%json_value_create_real proc~json_value_create_real->proc~to_real proc~json_value_create_string json_core%json_value_create_string proc~json_value_create_string->proc~to_string proc~parse_number json_core%parse_number proc~parse_number->proc~to_integer proc~parse_number->proc~to_real proc~parse_value json_core%parse_value proc~parse_value->proc~to_array proc~parse_value->proc~to_logical proc~parse_value->proc~to_null proc~parse_value->proc~to_object proc~parse_value->proc~to_string proc~parse_value->proc~parse_number proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object none~create_array json_core%create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array none~create_integer json_core%create_integer none~create_integer->proc~json_value_create_integer proc~wrap_json_value_create_integer json_core%wrap_json_value_create_integer none~create_integer->proc~wrap_json_value_create_integer none~create_logical json_core%create_logical none~create_logical->proc~json_value_create_logical proc~wrap_json_value_create_logical json_core%wrap_json_value_create_logical none~create_logical->proc~wrap_json_value_create_logical none~create_null json_core%create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null none~create_object json_core%create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object none~create_string json_core%create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_file_destroy json_file%json_file_destroy proc~json_file_destroy->none~destroy~3 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~destroy~3 none~valid_path~2 json_core%valid_path proc~json_file_valid_path_op->none~valid_path~2 proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~json_value_remove json_core%json_value_remove proc~json_value_remove->none~destroy~3 proc~parse_array->none~destroy~3 proc~parse_array->proc~parse_value proc~parse_object->none~destroy~3 proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path none~load~2 json_core%load none~load~2->proc~json_parse_file proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->proc~json_file_destroy none~deserialize json_file%deserialize proc~assign_string_to_json_file->none~deserialize proc~convert->none~create_array proc~convert->none~create_null proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~convert->none~info~2 proc~finalize_json_file finalize_json_file proc~finalize_json_file->proc~json_file_destroy proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create_integer proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create_array proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create_logical proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create_array proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create_array proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~info~2 proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create_string proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_by_path->none~info~2 proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~info~2 proc~json_file_add json_file%json_file_add proc~json_file_add->proc~json_file_destroy proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~create_object proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~create_object proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~create_object proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~create_object proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~create_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~create_object proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~create_object proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~create_object proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->none~create_object proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->none~create_object proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~create_object proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_load json_file%json_file_load proc~json_file_load->proc~json_file_destroy proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->proc~json_file_destroy proc~json_file_load_from_string->none~deserialize~2 proc~json_value_add_integer json_core%json_value_add_integer proc~json_value_add_integer->none~create_integer proc~json_value_add_integer_vec json_core%json_value_add_integer_vec proc~json_value_add_integer_vec->none~create_array proc~json_value_add_logical json_core%json_value_add_logical proc~json_value_add_logical->none~create_logical proc~json_value_add_logical_vec json_core%json_value_add_logical_vec proc~json_value_add_logical_vec->none~create_array proc~json_value_add_null json_core%json_value_add_null proc~json_value_add_null->none~create_null proc~json_value_add_real_vec json_core%json_value_add_real_vec proc~json_value_add_real_vec->none~create_array proc~json_value_add_string json_core%json_value_add_string proc~json_value_add_string->none~create_string proc~json_value_add_string_vec json_core%json_value_add_string_vec proc~json_value_add_string_vec->none~create_array proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->proc~json_value_remove proc~json_value_remove_if_present->none~get~2 proc~json_value_replace->proc~json_value_remove none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_integer->none~create_integer proc~wrap_json_value_create_logical->none~create_logical proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->none~create_object proc~wrap_json_value_create_string->none~create_string none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_member_by_path->none~info~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_by_path->none~info~2 proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_parse_string->none~deserialize~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~string_info->proc~json_string_info none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_file_load_from_string->none~deserialize proc~wrap_json_value_remove_if_present->none~remove_if_present interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_remove->none~remove proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure subroutine destroy_json_data ( d ) implicit none type ( json_value ), intent ( inout ) :: d d % var_type = json_unknown if ( allocated ( d % log_value )) deallocate ( d % log_value ) if ( allocated ( d % int_value )) deallocate ( d % int_value ) if ( allocated ( d % dbl_value )) deallocate ( d % dbl_value ) if ( allocated ( d % str_value )) deallocate ( d % str_value ) end subroutine destroy_json_data","tags":"","loc":"proc/destroy_json_data.html"},{"title":"flag_not_found – JSON-Fortran","text":"private subroutine flag_not_found(found) If found is present, set it it false. Arguments Type Intent Optional Attributes Name logical(kind=LK), intent(out), optional :: found Called by proc~~flag_not_found~~CalledByGraph proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path proc~json_get_alloc_string_vec_by_path->proc~flag_not_found none~get~2 json_core%get proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_integer_by_path json_core%json_get_integer_by_path proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path json_core%json_get_logical_by_path proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real_by_path json_core%json_get_real_by_path proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path json_core%json_get_string_by_path proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->none~get~2 none~get~2->proc~json_get_alloc_string_vec_by_path none~get~2->proc~json_get_integer_by_path none~get~2->proc~json_get_integer_vec_by_path none~get~2->proc~json_get_logical_by_path none~get~2->proc~json_get_logical_vec_by_path none~get~2->proc~json_get_real_by_path none~get~2->proc~json_get_real_vec_by_path none~get~2->proc~json_get_string_by_path none~get~2->proc~json_get_string_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_array_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine flag_not_found ( found ) implicit none logical ( LK ), intent ( out ), optional :: found if ( present ( found )) found = . false . end subroutine flag_not_found","tags":"","loc":"proc/flag_not_found.html"},{"title":"get_current_line_from_file_sequential – JSON-Fortran","text":"private subroutine get_current_line_from_file_sequential(iunit, line) Rewind the file to the beginning of the current line, and return this line.\nThe file is assumed to be opened.\nThis is the SEQUENTIAL version (see also get_current_line_from_file_stream ). Type Bound json_core Arguments Type Intent Optional Attributes Name integer(kind=IK), intent(in) :: iunit file unit number character(kind=CK, len=:), intent(out), allocatable :: line current line Called by proc~~get_current_line_from_file_sequential~~CalledByGraph proc~get_current_line_from_file_sequential json_core%get_current_line_from_file_sequential proc~annotate_invalid_json json_core%annotate_invalid_json proc~annotate_invalid_json->proc~get_current_line_from_file_sequential proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~annotate_invalid_json proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~annotate_invalid_json none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine get_current_line_from_file_sequential ( iunit , line ) implicit none integer ( IK ), intent ( in ) :: iunit !! file unit number character ( kind = CK , len = :), allocatable , intent ( out ) :: line !! current line character ( kind = CK , len = seq_chunk_size ) :: chunk !! for reading line in chunks integer ( IK ) :: istat !! iostat flag integer ( IK ) :: isize !! number of characters read in read statement !initialize: line = CK_ '' !rewind to beginning of the current record: backspace ( iunit , iostat = istat ) !loop to read in all the characters in the current record. ![the line is read in chunks until the end of the line is reached] if ( istat == 0 ) then do isize = 0 read ( iunit , fmt = '(A)' , advance = 'NO' , size = isize , iostat = istat ) chunk if ( istat == 0 ) then line = line // chunk else if ( isize > 0 . and . isize <= seq_chunk_size ) line = line // chunk ( 1 : isize ) exit end if end do end if end subroutine get_current_line_from_file_sequential","tags":"","loc":"proc/get_current_line_from_file_sequential.html"},{"title":"get_current_line_from_file_stream – JSON-Fortran","text":"private subroutine get_current_line_from_file_stream(json, iunit, line) Rewind the file to the beginning of the current line, and return this line.\nThe file is assumed to be opened.\nThis is the STREAM version (see also get_current_line_from_file_sequential ). Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: iunit file unit number character(kind=CK, len=:), intent(out), allocatable :: line current line Called by proc~~get_current_line_from_file_stream~~CalledByGraph proc~get_current_line_from_file_stream json_core%get_current_line_from_file_stream proc~annotate_invalid_json json_core%annotate_invalid_json proc~annotate_invalid_json->proc~get_current_line_from_file_stream proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~annotate_invalid_json proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~annotate_invalid_json none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine get_current_line_from_file_stream ( json , iunit , line ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: iunit !! file unit number character ( kind = CK , len = :), allocatable , intent ( out ) :: line !! current line integer ( IK ) :: istart !! start position of current line integer ( IK ) :: iend !! end position of current line integer ( IK ) :: ios !! file read `iostat` code character ( kind = CK , len = 1 ) :: c !! a character read from the file logical :: done !! flag to exit the loop istart = json % ipos do if ( istart <= 1 ) then istart = 1 exit end if read ( iunit , pos = istart , iostat = ios ) c done = ios /= 0_IK if (. not . done ) done = c == newline if ( done ) then if ( istart /= 1 ) istart = istart - 1 exit end if istart = istart - 1 !rewind until the beginning of the line end do iend = json % ipos do read ( iunit , pos = iend , iostat = ios ) c if ( IS_IOSTAT_END ( ios )) then ! account for end of file without linebreak iend = iend - 1 exit end if if ( c == newline . or . ios /= 0 ) exit iend = iend + 1 end do allocate ( character ( kind = CK , len = iend - istart + 1 ) :: line ) read ( iunit , pos = istart , iostat = ios ) line end subroutine get_current_line_from_file_stream","tags":"","loc":"proc/get_current_line_from_file_stream.html"},{"title":"json_add_integer_by_path – JSON-Fortran","text":"private subroutine json_add_integer_by_path(json, me, path, value, found, was_created) Add an integer value to a json_value , given the path. Warning If the path points to an existing variable in the structure,\n then this routine will destroy it and replace it with the\n new value. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_add_integer_by_path~~CallsGraph proc~json_add_integer_by_path json_core%json_add_integer_by_path none~create json_core%create proc~json_add_integer_by_path->none~create none~create_integer json_core%create_integer proc~json_add_integer_by_path->none~create_integer none~info~2 json_core%info proc~json_add_integer_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_integer_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_integer_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_integer_by_path->proc~json_value_replace proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_integer json_core%json_value_create_integer none~create_integer->proc~json_value_create_integer proc~wrap_json_value_create_integer json_core%wrap_json_value_create_integer none~create_integer->proc~wrap_json_value_create_integer proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_create json_value_create proc~json_value_create_integer->proc~json_value_create proc~to_integer json_core%to_integer proc~json_value_create_integer->proc~to_integer none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->none~create interface~to_unicode to_unicode proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_value_create_integer->none~create_integer proc~wrap_json_value_create_integer->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_integer->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_add_integer_by_path~~CalledByGraph proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_add_integer_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created type ( json_value ), pointer :: p type ( json_value ), pointer :: tmp character ( kind = CK , len = :), allocatable :: name !! variable name if ( . not . json % exception_thrown ) then nullify ( p ) ! return a pointer to the path (possibly creating it) ! If the variable had to be created, then ! it will be a json_null variable. call json % create ( me , path , p , found , was_created ) if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_add_integer_by_path:' // & ' Unable to resolve path: ' // trim ( path ), found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if else !NOTE: a new object is created, and the old one ! is replaced and destroyed. This is to ! prevent memory leaks if the type is ! being changed (for example, if an array ! is being replaced with a scalar). if ( p % var_type == json_integer ) then p % int_value = value else call json % info ( p , name = name ) call json % create_integer ( tmp , value , name ) call json % replace ( p , tmp , destroy = . true .) end if end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_integer_by_path","tags":"","loc":"proc/json_add_integer_by_path.html"},{"title":"json_add_integer_vec_by_path – JSON-Fortran","text":"private subroutine json_add_integer_vec_by_path(json, me, path, value, found, was_created) Wrapper to json_add_integer_by_path for adding an integer vector by path. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_add_integer_vec_by_path~~CallsGraph proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path none~add~4 json_core%add proc~json_add_integer_vec_by_path->none~add~4 none~create json_core%create proc~json_add_integer_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_integer_vec_by_path->none~create_array none~info~2 json_core%info proc~json_add_integer_vec_by_path->none~info~2 proc~json_value_replace json_core%json_value_replace proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index none~throw_exception json_core%throw_exception proc~json_create_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_create_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->none~create proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_array->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->proc~json_value_replace proc~convert->none~throw_exception none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_add_integer_vec_by_path~~CalledByGraph proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_add_integer_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created type ( json_value ), pointer :: p !! pointer to path (which may exist) type ( json_value ), pointer :: var !! new variable that is created integer ( IK ) :: i !! counter character ( kind = CK , len = :), allocatable :: name !! the variable name logical ( LK ) :: p_found !! if the path was successfully found (or created) if ( . not . json % exception_thrown ) then !get a pointer to the variable !(creating it if necessary) call json % create ( me , path , p , found = p_found ) if ( p_found ) then call json % info ( p , name = name ) ! want to keep the existing name call json % create_array ( var , name ) ! create a new array variable call json % replace ( p , var , destroy = . true .) ! replace p with this array (destroy p) !populate each element of the array: do i = 1 , size ( value ) call json % add ( var , CK_ '' , value ( i )) end do end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_integer_vec_by_path","tags":"","loc":"proc/json_add_integer_vec_by_path.html"},{"title":"json_add_logical_by_path – JSON-Fortran","text":"private subroutine json_add_logical_by_path(json, me, path, value, found, was_created) Add a logical value to a json_value , given the path. Warning If the path points to an existing variable in the structure,\n then this routine will destroy it and replace it with the\n new value. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_add_logical_by_path~~CallsGraph proc~json_add_logical_by_path json_core%json_add_logical_by_path none~create json_core%create proc~json_add_logical_by_path->none~create none~create_logical json_core%create_logical proc~json_add_logical_by_path->none~create_logical none~info~2 json_core%info proc~json_add_logical_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_logical_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_logical_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_logical_by_path->proc~json_value_replace proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_logical json_core%json_value_create_logical none~create_logical->proc~json_value_create_logical proc~wrap_json_value_create_logical json_core%wrap_json_value_create_logical none~create_logical->proc~wrap_json_value_create_logical proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_create json_value_create proc~json_value_create_logical->proc~json_value_create proc~to_logical json_core%to_logical proc~json_value_create_logical->proc~to_logical none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->none~create interface~to_unicode to_unicode proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_value_create_logical->none~create_logical proc~wrap_json_value_create_logical->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_logical->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_add_logical_by_path~~CalledByGraph proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_add_logical_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created type ( json_value ), pointer :: p type ( json_value ), pointer :: tmp character ( kind = CK , len = :), allocatable :: name !! variable name if ( . not . json % exception_thrown ) then nullify ( p ) ! return a pointer to the path (possibly creating it) ! If the variable had to be created, then ! it will be a json_null variable. call json % create ( me , path , p , found , was_created ) if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_add_logical_by_path:' // & ' Unable to resolve path: ' // trim ( path ), found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if else !NOTE: a new object is created, and the old one ! is replaced and destroyed. This is to ! prevent memory leaks if the type is ! being changed (for example, if an array ! is being replaced with a scalar). if ( p % var_type == json_logical ) then p % log_value = value else call json % info ( p , name = name ) call json % create_logical ( tmp , value , name ) call json % replace ( p , tmp , destroy = . true .) end if end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_logical_by_path","tags":"","loc":"proc/json_add_logical_by_path.html"},{"title":"json_add_logical_vec_by_path – JSON-Fortran","text":"private subroutine json_add_logical_vec_by_path(json, me, path, value, found, was_created) Wrapper to json_add_logical_by_path for adding a logical vector by path. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_add_logical_vec_by_path~~CallsGraph proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path none~add~4 json_core%add proc~json_add_logical_vec_by_path->none~add~4 none~create json_core%create proc~json_add_logical_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_logical_vec_by_path->none~create_array none~info~2 json_core%info proc~json_add_logical_vec_by_path->none~info~2 proc~json_value_replace json_core%json_value_replace proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index none~throw_exception json_core%throw_exception proc~json_create_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_create_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->none~create proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_array->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->proc~json_value_replace proc~convert->none~throw_exception none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_add_logical_vec_by_path~~CalledByGraph proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_add_logical_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created type ( json_value ), pointer :: p !! pointer to path (which may exist) type ( json_value ), pointer :: var !! new variable that is created integer ( IK ) :: i !! counter character ( kind = CK , len = :), allocatable :: name !! the variable name logical ( LK ) :: p_found !! if the path was successfully found (or created) if ( . not . json % exception_thrown ) then !get a pointer to the variable !(creating it if necessary) call json % create ( me , path , p , found = p_found ) if ( p_found ) then call json % info ( p , name = name ) ! want to keep the existing name call json % create_array ( var , name ) ! create a new array variable call json % replace ( p , var , destroy = . true .) ! replace p with this array (destroy p) !populate each element of the array: do i = 1 , size ( value ) call json % add ( var , CK_ '' , value ( i )) end do end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_logical_vec_by_path","tags":"","loc":"proc/json_add_logical_vec_by_path.html"},{"title":"json_add_member_by_path – JSON-Fortran","text":"private subroutine json_add_member_by_path(json, me, path, p, found, was_created) Add a new member ( json_value pointer) to a JSON structure, given the path. Warning If the path points to an existing variable in the structure,\n then this routine will destroy it and replace it with the\n new value. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(in), pointer :: p the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_add_member_by_path~~CallsGraph proc~json_add_member_by_path json_core%json_add_member_by_path none~create json_core%create proc~json_add_member_by_path->none~create none~info~2 json_core%info proc~json_add_member_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_member_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_member_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_member_by_path->proc~json_value_replace proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->none~create interface~to_unicode to_unicode proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_add_member_by_path~~CalledByGraph proc~json_add_member_by_path json_core%json_add_member_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_add_member_by_path ( json , me , path , p , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable type ( json_value ), pointer , intent ( in ) :: p !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created type ( json_value ), pointer :: tmp character ( kind = CK , len = :), allocatable :: name !! name of the variable if ( . not . json % exception_thrown ) then if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_add_member_by_path:' // & ' Input pointer p is not associated.' , found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if if ( present ( was_created ) ) was_created = . false . else ! return a pointer to the path (possibly creating it) call json % create ( me , path , tmp , found , was_created ) if (. not . associated ( tmp )) then call json % throw_exception ( 'Error in json_add_member_by_path:' // & ' Unable to resolve path: ' // trim ( path ), found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if else call json % info ( tmp , name = name ) ! replace it with the new one: call json % replace ( tmp , p , destroy = . true .) call json % rename ( p , name ) end if end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_member_by_path","tags":"","loc":"proc/json_add_member_by_path.html"},{"title":"json_add_real32_by_path – JSON-Fortran","text":"private subroutine json_add_real32_by_path(json, me, path, value, found, was_created) Alternate version of json_add_real_by_path where value=real32. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_add_real32_by_path~~CallsGraph proc~json_add_real32_by_path json_core%json_add_real32_by_path none~add_by_path~2 json_core%add_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_add_real32_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % add_by_path ( me , path , real ( value , RK ), found , was_created ) end subroutine json_add_real32_by_path","tags":"","loc":"proc/json_add_real32_by_path.html"},{"title":"json_add_real32_vec_by_path – JSON-Fortran","text":"private subroutine json_add_real32_vec_by_path(json, me, path, value, found, was_created) Wrapper to json_add_real_by_path for adding a real vector by path. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_add_real32_vec_by_path~~CallsGraph proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path none~add_by_path~2 json_core%add_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_add_real32_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % add_by_path ( me , path , real ( value , RK ), found , was_created ) end subroutine json_add_real32_vec_by_path","tags":"","loc":"proc/json_add_real32_vec_by_path.html"},{"title":"json_add_real_by_path – JSON-Fortran","text":"private subroutine json_add_real_by_path(json, me, path, value, found, was_created) Add an real value to a json_value , given the path. Warning If the path points to an existing variable in the structure,\n then this routine will destroy it and replace it with the\n new value. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_add_real_by_path~~CallsGraph proc~json_add_real_by_path json_core%json_add_real_by_path none~create json_core%create proc~json_add_real_by_path->none~create none~create_real~2 json_core%create_real proc~json_add_real_by_path->none~create_real~2 none~info~2 json_core%info proc~json_add_real_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_real_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_real_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_real_by_path->proc~json_value_replace proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_real32 json_core%json_value_create_real32 none~create_real~2->proc~json_value_create_real32 proc~wrap_json_value_create_real32 json_core%wrap_json_value_create_real32 none~create_real~2->proc~wrap_json_value_create_real32 proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_create_real32->none~create_real~2 none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->none~create interface~to_unicode to_unicode proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_value_create_real32->none~create_real~2 proc~wrap_json_value_create_real32->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_add_real_by_path~~CalledByGraph proc~json_add_real_by_path json_core%json_add_real_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_add_real_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created type ( json_value ), pointer :: p type ( json_value ), pointer :: tmp character ( kind = CK , len = :), allocatable :: name !! variable name if ( . not . json % exception_thrown ) then nullify ( p ) ! return a pointer to the path (possibly creating it) ! If the variable had to be created, then ! it will be a json_null variable. call json % create ( me , path , p , found , was_created ) if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_add_real_by_path:' // & ' Unable to resolve path: ' // trim ( path ), found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if else !NOTE: a new object is created, and the old one ! is replaced and destroyed. This is to ! prevent memory leaks if the type is ! being changed (for example, if an array ! is being replaced with a scalar). if ( p % var_type == json_real ) then p % dbl_value = value else call json % info ( p , name = name ) call json % create_real ( tmp , value , name ) call json % replace ( p , tmp , destroy = . true .) end if end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_real_by_path","tags":"","loc":"proc/json_add_real_by_path.html"},{"title":"json_add_real_vec_by_path – JSON-Fortran","text":"private subroutine json_add_real_vec_by_path(json, me, path, value, found, was_created) Wrapper to json_add_real_by_path for adding a real vector by path. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~json_add_real_vec_by_path~~CallsGraph proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path none~add~4 json_core%add proc~json_add_real_vec_by_path->none~add~4 none~create json_core%create proc~json_add_real_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_real_vec_by_path->none~create_array none~info~2 json_core%info proc~json_add_real_vec_by_path->none~info~2 proc~json_value_replace json_core%json_value_replace proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index none~throw_exception json_core%throw_exception proc~json_create_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_create_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->none~create proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_array->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->proc~json_value_replace proc~convert->none~throw_exception none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_add_real_vec_by_path~~CalledByGraph proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_add_real_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created type ( json_value ), pointer :: p !! pointer to path (which may exist) type ( json_value ), pointer :: var !! new variable that is created integer ( IK ) :: i !! counter character ( kind = CK , len = :), allocatable :: name !! the variable name logical ( LK ) :: p_found !! if the path was successfully found (or created) if ( . not . json % exception_thrown ) then !get a pointer to the variable !(creating it if necessary) call json % create ( me , path , p , found = p_found ) if ( p_found ) then call json % info ( p , name = name ) ! want to keep the existing name call json % create_array ( var , name ) ! create a new array variable call json % replace ( p , var , destroy = . true .) ! replace p with this array (destroy p) !populate each element of the array: do i = 1 , size ( value ) call json % add ( var , CK_ '' , value ( i )) end do end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_real_vec_by_path","tags":"","loc":"proc/json_add_real_vec_by_path.html"},{"title":"json_add_string_by_path – JSON-Fortran","text":"private subroutine json_add_string_by_path(json, me, path, value, found, was_created, trim_str, adjustl_str) Add a string value to a json_value , given the path. Warning If the path points to an existing variable in the structure,\n then this routine will destroy it and replace it with the\n new value. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element Calls proc~~json_add_string_by_path~~CallsGraph proc~json_add_string_by_path json_core%json_add_string_by_path none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_create json_value_create proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->none~create interface~to_unicode to_unicode proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~wrap_json_value_create_string->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_add_string_by_path~~CalledByGraph proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_add_string_by_path ( json , me , path , value , found ,& was_created , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element type ( json_value ), pointer :: p type ( json_value ), pointer :: tmp character ( kind = CK , len = :), allocatable :: name !! variable name if ( . not . json % exception_thrown ) then nullify ( p ) ! return a pointer to the path (possibly creating it) ! If the variable had to be created, then ! it will be a json_null variable. call json % create ( me , path , p , found , was_created ) if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_add_string_by_path:' // & ' Unable to resolve path: ' // trim ( path ), found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if else !NOTE: a new object is created, and the old one ! is replaced and destroyed. This is to ! prevent memory leaks if the type is ! being changed (for example, if an array ! is being replaced with a scalar). if ( p % var_type == json_string ) then p % str_value = value else call json % info ( p , name = name ) call json % create_string ( tmp , value , name , trim_str , adjustl_str ) call json % replace ( p , tmp , destroy = . true .) end if end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_string_by_path","tags":"","loc":"proc/json_add_string_by_path.html"},{"title":"json_add_string_by_path_path_ascii – JSON-Fortran","text":"private subroutine json_add_string_by_path_path_ascii(json, me, path, value, found, was_created, trim_str, adjustl_str) Wrapper for json_add_string_by_path where “path” is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element Calls proc~~json_add_string_by_path_path_ascii~~CallsGraph proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_create json_value_create proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_add_string_by_path_path_ascii~~CalledByGraph proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_add_string_by_path_path_ascii ( json , me , path , value , found ,& was_created , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element call json % json_add_string_by_path ( me , to_unicode ( path ), value , found , was_created , trim_str , adjustl_str ) end subroutine json_add_string_by_path_path_ascii","tags":"","loc":"proc/json_add_string_by_path_path_ascii.html"},{"title":"json_add_string_by_path_value_ascii – JSON-Fortran","text":"private subroutine json_add_string_by_path_value_ascii(json, me, path, value, found, was_created, trim_str, adjustl_str) Wrapper for json_add_string_by_path where “value” is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element Calls proc~~json_add_string_by_path_value_ascii~~CallsGraph proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii interface~to_unicode to_unicode proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_create json_value_create proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_add_string_by_path_value_ascii~~CalledByGraph proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_add_string_by_path_value_ascii ( json , me , path , value , found ,& was_created , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element call json % json_add_string_by_path ( me , path , to_unicode ( value ), found , was_created , trim_str , adjustl_str ) end subroutine json_add_string_by_path_value_ascii","tags":"","loc":"proc/json_add_string_by_path_value_ascii.html"},{"title":"json_add_string_vec_by_path – JSON-Fortran","text":"private subroutine json_add_string_vec_by_path(json, me, path, value, found, was_created, ilen, trim_str, adjustl_str) Wrapper to json_add_string_by_path for adding a string vector by path. Note The ilen input can be used to specify the actual lengths of the\n the strings in the array. They must all be <= len(value) . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element Calls proc~~json_add_string_vec_by_path~~CallsGraph proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 none~create json_core%create proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array none~info~2 json_core%info proc~json_add_string_vec_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_vec_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->none~create proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_array->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_add_string_vec_by_path~~CalledByGraph proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_add_string_vec_by_path ( json , me , path , value , found , was_created , ilen , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created integer ( IK ), dimension (:), intent ( in ), optional :: ilen !! the string lengths of each !! element in `value`. If not present, !! the full `len(value)` string is added !! for each element. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element type ( json_value ), pointer :: p !! pointer to path (which may exist) type ( json_value ), pointer :: var !! new variable that is created integer ( IK ) :: i !! counter character ( kind = CK , len = :), allocatable :: name !! the variable name logical ( LK ) :: p_found !! if the path was successfully found (or created) if ( . not . json % exception_thrown ) then ! validate ilen array if present: if ( present ( ilen )) then if ( size ( ilen ) /= size ( value )) then call json % throw_exception ( 'Error in json_add_string_vec_by_path: ' // & 'Invalid size of ilen input vector.' , found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if if ( present ( was_created )) was_created = . false . return else ! also have to validate the specified lengths. ! (must not be greater than input string length) do i = 1 , size ( value ) if ( ilen ( i ) > len ( value )) then call json % throw_exception ( 'Error in json_add_string_vec_by_path: ' // & 'Invalid ilen element.' , found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if if ( present ( was_created )) was_created = . false . return end if end do end if end if !get a pointer to the variable !(creating it if necessary) call json % create ( me , path , p , found = p_found ) if ( p_found ) then call json % info ( p , name = name ) ! want to keep the existing name call json % create_array ( var , name ) ! create a new array variable call json % replace ( p , var , destroy = . true .) ! replace p with this array (destroy p) !populate each element of the array: do i = 1 , size ( value ) if ( present ( ilen )) then call json % add ( var , CK_ '' , value ( i )( 1 : ilen ( i )), & trim_str = trim_str , adjustl_str = adjustl_str ) else call json % add ( var , CK_ '' , value ( i ), & trim_str = trim_str , adjustl_str = adjustl_str ) end if end do end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_string_vec_by_path","tags":"","loc":"proc/json_add_string_vec_by_path.html"},{"title":"json_add_string_vec_by_path_path_ascii – JSON-Fortran","text":"private subroutine json_add_string_vec_by_path_path_ascii(json, me, path, value, found, was_created, ilen, trim_str, adjustl_str) Wrapper for json_add_string_vec_by_path where “path” is kind=CDK). Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element Calls proc~~json_add_string_vec_by_path_path_ascii~~CallsGraph proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii interface~to_unicode to_unicode proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 none~create json_core%create proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array none~info~2 json_core%info proc~json_add_string_vec_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_vec_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_add_string_vec_by_path_path_ascii~~CalledByGraph proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_add_string_vec_by_path_path_ascii ( json , me , path , value ,& found , was_created , ilen ,& trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created integer ( IK ), dimension (:), intent ( in ), optional :: ilen !! the string lengths of each !! element in `value`. If not present, !! the full `len(value)` string is added !! for each element. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element call json % json_add_string_vec_by_path ( me , to_unicode ( path ), value ,& found , was_created , ilen , trim_str , adjustl_str ) end subroutine json_add_string_vec_by_path_path_ascii","tags":"","loc":"proc/json_add_string_vec_by_path_path_ascii.html"},{"title":"json_add_string_vec_by_path_value_ascii – JSON-Fortran","text":"private subroutine json_add_string_vec_by_path_value_ascii(json, me, path, value, found, was_created, ilen, trim_str, adjustl_str) Wrapper for json_add_string_vec_by_path where “value” is kind=CDK). Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element Calls proc~~json_add_string_vec_by_path_value_ascii~~CallsGraph proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii interface~to_unicode to_unicode proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 none~create json_core%create proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array none~info~2 json_core%info proc~json_add_string_vec_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_vec_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_add_string_vec_by_path_value_ascii~~CalledByGraph proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_add_string_vec_by_path_value_ascii ( json , me , path , value ,& found , was_created , ilen ,& trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created integer ( IK ), dimension (:), intent ( in ), optional :: ilen !! the string lengths of each !! element in `value`. If not present, !! the full `len(value)` string is added !! for each element. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element call json % json_add_string_vec_by_path ( me , path , to_unicode ( value ),& found , was_created , ilen , trim_str , adjustl_str ) end subroutine json_add_string_vec_by_path_value_ascii","tags":"","loc":"proc/json_add_string_vec_by_path_value_ascii.html"},{"title":"json_check_all_for_duplicate_keys – JSON-Fortran","text":"private subroutine json_check_all_for_duplicate_keys(json, p, has_duplicate, name, path) Checks a JSON structure for duplicate child names.\n This one recursively traverses the entire structure\n (calling json_check_children_for_duplicate_keys recursively for each element). Note This will only check for one duplicate,\n it will return the first one that it finds. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p the object to search. If p is\nnot a json_object , then has_duplicate will be false. logical(kind=LK), intent(out) :: has_duplicate true if there is at least\none duplicate name key anywhere\nin the structure. character(kind=CK, len=:), intent(out), optional, allocatable :: name the duplicate name\n(unallocated if no\nduplicates were found) character(kind=CK, len=:), intent(out), optional, allocatable :: path the full path to the\nduplicate name\n(unallocated if no\nduplicate was found) Calls proc~~json_check_all_for_duplicate_keys~~CallsGraph proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_traverse json_core%json_traverse proc~json_check_all_for_duplicate_keys->proc~json_traverse none~throw_exception json_core%throw_exception proc~json_traverse->none~throw_exception proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_check_all_for_duplicate_keys~~CalledByGraph proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~json_check_all_for_duplicate_keys proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_value_validate json_core%json_value_validate proc~json_value_validate->proc~json_check_all_for_duplicate_keys none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_check_all_for_duplicate_keys ( json , p , has_duplicate , name , path ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! the object to search. If `p` is !! not a `json_object`, then `has_duplicate` !! will be false. logical ( LK ), intent ( out ) :: has_duplicate !! true if there is at least !! one duplicate `name` key anywhere !! in the structure. character ( kind = CK , len = :), allocatable , intent ( out ), optional :: name !! the duplicate name !! (unallocated if no !! duplicates were found) character ( kind = CK , len = :), allocatable , intent ( out ), optional :: path !! the full path to the !! duplicate name !! (unallocated if no !! duplicate was found) has_duplicate = . false . if (. not . json % exception_thrown ) then call json % traverse ( p , duplicate_key_func ) end if contains subroutine duplicate_key_func ( json , p , finished ) !! Callback function to check each element !! for duplicate child names. implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p logical ( LK ), intent ( out ) :: finished #if defined __GFORTRAN__ ! this is a workaround for a gfortran bug (6 and 7), character ( kind = CK , len = :), allocatable :: tmp_name !! temp variable for `name` string character ( kind = CK , len = :), allocatable :: tmp_path !! temp variable for `path` string if ( present ( name ) . and . present ( path )) then call json % check_children_for_duplicate_keys ( p , has_duplicate , name = tmp_name , path = tmp_path ) else if ( present ( name ) . and . . not . present ( path )) then call json % check_children_for_duplicate_keys ( p , has_duplicate , name = tmp_name ) else if (. not . present ( name ) . and . present ( path )) then call json % check_children_for_duplicate_keys ( p , has_duplicate , path = tmp_path ) else call json % check_children_for_duplicate_keys ( p , has_duplicate ) end if if ( has_duplicate ) then if ( present ( name )) name = tmp_name if ( present ( path )) path = tmp_path end if #else call json % check_children_for_duplicate_keys ( p , has_duplicate , name , path ) #endif finished = has_duplicate . or . json % exception_thrown end subroutine duplicate_key_func end subroutine json_check_all_for_duplicate_keys","tags":"","loc":"proc/json_check_all_for_duplicate_keys.html"},{"title":"json_check_children_for_duplicate_keys – JSON-Fortran","text":"private subroutine json_check_children_for_duplicate_keys(json, p, has_duplicate, name, path) Checks a JSON object for duplicate child names. It uses the specified settings for name matching (see name_strings_equal ). Note This will only check for one duplicate,\n it will return the first one that it finds. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p the object to search. If p is\nnot a json_object , then has_duplicate will be false. logical(kind=LK), intent(out) :: has_duplicate true if there is at least\ntwo children have duplicate name values. character(kind=CK, len=:), intent(out), optional, allocatable :: name the duplicate name\n(unallocated if no\nduplicate was found) character(kind=CK, len=:), intent(out), optional, allocatable :: path the full path to the\nduplicate name\n(unallocated if no\nduplicate was found) Calls proc~~json_check_children_for_duplicate_keys~~CallsGraph proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys none~get_child json_core%get_child proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path none~throw_exception json_core%throw_exception proc~json_check_children_for_duplicate_keys->none~throw_exception proc~name_strings_equal json_core%name_strings_equal proc~json_check_children_for_duplicate_keys->proc~name_strings_equal proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_get_path json_core%json_get_path none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_get_path->none~throw_exception none~info~2 json_core%info proc~json_get_path->none~info~2 proc~encode_rfc6901 encode_rfc6901 proc~json_get_path->proc~encode_rfc6901 proc~integer_to_string integer_to_string proc~json_get_path->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_path->proc~json_clear_exceptions proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~wrap_json_get_path->none~get_path interface~to_unicode to_unicode proc~wrap_json_get_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_value_get_child_by_name->interface~to_unicode none~get~2 json_core%get proc~wrap_json_value_get_child_by_name->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~replace_string replace_string proc~encode_rfc6901->proc~replace_string proc~name_equal->proc~name_strings_equal proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~get_child proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~convert->none~throw_exception proc~convert->none~info~2 none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~throw_exception proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_string_info->proc~json_clear_exceptions proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_check_children_for_duplicate_keys ( json , p , has_duplicate , name , path ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! the object to search. If `p` is !! not a `json_object`, then `has_duplicate` !! will be false. logical ( LK ), intent ( out ) :: has_duplicate !! true if there is at least !! two children have duplicate !! `name` values. character ( kind = CK , len = :), allocatable , intent ( out ), optional :: name !! the duplicate name !! (unallocated if no !! duplicate was found) character ( kind = CK , len = :), allocatable , intent ( out ), optional :: path !! the full path to the !! duplicate name !! (unallocated if no !! duplicate was found) integer ( IK ) :: i !! counter integer ( IK ) :: j !! counter type ( json_value ), pointer :: child !! pointer to a child of `p` integer ( IK ) :: n_children !! number of children of `p` logical ( LK ) :: found !! flag for `get_child` type :: alloc_str !! so we can have an array of allocatable strings character ( kind = CK , len = :), allocatable :: str !! name string end type alloc_str type ( alloc_str ), dimension (:), allocatable :: names !! array of all the !! child name strings ! initialize: has_duplicate = . false . if (. not . json % exception_thrown ) then if ( associated ( p )) then if ( p % var_type == json_object ) then ! number of items to check: n_children = json % count ( p ) allocate ( names ( n_children )) ! first get a list of all the name keys: do i = 1 , n_children call json % get_child ( p , i , child , found ) ! get by index if (. not . found ) then call json % throw_exception (& 'Error in json_check_children_for_duplicate_keys: ' // & 'Malformed JSON linked list' ) exit end if if ( allocated ( child % name )) then names ( i )% str = child % name else call json % throw_exception (& 'Error in json_check_children_for_duplicate_keys: ' // & 'Object child name is not allocated' ) exit end if end do if (. not . json % exception_thrown ) then ! now check the list for duplicates: main : do i = 1 , n_children do j = 1 , i - 1 if ( json % name_strings_equal ( names ( i )% str , names ( j )% str )) then has_duplicate = . true . if ( present ( name )) then name = names ( i )% str end if if ( present ( path )) then call json % get_child ( p , names ( i )% str , child , found ) ! get by name if ( found ) then call json % get_path ( child , path , found ) if (. not . found ) then ! should never happen since we know it is there call json % throw_exception (& 'Error in json_check_children_for_duplicate_keys: ' // & 'Could not get path' ) end if else ! should never happen since we know it is there call json % throw_exception (& 'Error in json_check_children_for_duplicate_keys: ' // & 'Could not get child: ' // trim ( names ( i )% str )) end if end if exit main end if end do end do main end if ! cleanup do i = 1 , n_children if ( allocated ( names ( i )% str )) deallocate ( names ( i )% str ) end do if ( allocated ( names )) deallocate ( names ) end if end if end if end subroutine json_check_children_for_duplicate_keys","tags":"","loc":"proc/json_check_children_for_duplicate_keys.html"},{"title":"json_check_for_errors – JSON-Fortran","text":"private subroutine json_check_for_errors(json, status_ok, error_msg) Retrieve error code from the json_core .\n This should be called after parse to check for errors.\n If an error is thrown, before using the class again, json_initialize should be called to clean up before it is used again. Example type ( json_file ) :: json logical :: status_ok character ( kind = CK , len = :), allocatable :: error_msg call json % load ( filename = 'myfile.json' ) call json % check_for_errors ( status_ok , error_msg ) if (. not . status_ok ) then write ( * , * ) 'Error: ' // error_msg call json % clear_exceptions () call json % destroy () end if See also json_failed json_throw_exception Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(in) :: json logical(kind=LK), intent(out), optional :: status_ok true if there were no errors character(kind=CK, len=:), intent(out), optional, allocatable :: error_msg the error message.\n(not allocated if\nthere were no errors) Called by proc~~json_check_for_errors~~CalledByGraph proc~json_check_for_errors json_core%json_check_for_errors proc~json_file_check_for_errors json_file%json_file_check_for_errors proc~json_file_check_for_errors->proc~json_check_for_errors proc~json_print_error_message json_core%json_print_error_message proc~json_print_error_message->proc~json_check_for_errors proc~json_value_validate json_core%json_value_validate proc~json_value_validate->proc~json_check_for_errors proc~json_file_print_error_message json_file%json_file_print_error_message proc~json_file_print_error_message->proc~json_print_error_message Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_check_for_errors ( json , status_ok , error_msg ) implicit none class ( json_core ), intent ( in ) :: json logical ( LK ), intent ( out ), optional :: status_ok !! true if there were no errors character ( kind = CK , len = :), allocatable , intent ( out ), optional :: error_msg !! the error message. !! (not allocated if !! there were no errors) #if defined __GFORTRAN__ character ( kind = CK , len = :), allocatable :: tmp !! workaround for gfortran bugs #endif if ( present ( status_ok )) status_ok = . not . json % exception_thrown if ( present ( error_msg )) then if ( json % exception_thrown ) then ! if an exception has been thrown, ! then this will always be allocated ! [see json_throw_exception] #if defined __GFORTRAN__ tmp = json % err_message error_msg = tmp #else error_msg = json % err_message #endif end if end if end subroutine json_check_for_errors","tags":"","loc":"proc/json_check_for_errors.html"},{"title":"json_clear_exceptions – JSON-Fortran","text":"private pure subroutine json_clear_exceptions(json) Clear exceptions in the json_core . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json Called by proc~~json_clear_exceptions~~CalledByGraph proc~json_clear_exceptions json_core%json_clear_exceptions proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->proc~json_clear_exceptions none~deserialize json_file%deserialize proc~assign_string_to_json_file->none~deserialize proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->proc~json_clear_exceptions none~create json_core%create proc~json_add_integer_by_path->none~create none~info~2 json_core%info proc~json_add_integer_by_path->none~info~2 proc~json_value_replace json_core%json_value_replace proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->proc~json_clear_exceptions proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->proc~json_clear_exceptions proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->proc~json_clear_exceptions proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_file_clear_exceptions json_file%json_file_clear_exceptions proc~json_file_clear_exceptions->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions none~get~2 json_core%get proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path json_core%json_get_array_by_path proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_by_path_default->proc~json_clear_exceptions none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_integer_by_path json_core%json_get_integer_by_path proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path json_core%json_get_logical_by_path proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_path json_core%json_get_path proc~json_get_path->proc~json_clear_exceptions proc~json_get_path->none~info~2 proc~json_get_real_by_path json_core%json_get_real_by_path proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path json_core%json_get_string_by_path proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_initialize json_core%json_initialize proc~json_initialize->proc~json_clear_exceptions proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->proc~json_clear_exceptions proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_print_error_message json_core%json_print_error_message proc~json_print_error_message->proc~json_clear_exceptions proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->proc~json_clear_exceptions proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_value_get_child_by_index json_core%json_value_get_child_by_index proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name json_core%json_value_get_child_by_name proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~json_value_validate json_core%json_value_validate proc~json_value_validate->proc~json_clear_exceptions proc~parse_number json_core%parse_number proc~parse_number->proc~json_clear_exceptions none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get_child->proc~json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name none~get_path json_core%get_path none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~get~2->proc~json_get_alloc_string_vec_by_path none~get~2->proc~json_get_array_by_path none~get~2->proc~json_get_by_path none~get~2->proc~json_get_integer_by_path none~get~2->proc~json_get_integer_vec_by_path none~get~2->proc~json_get_logical_by_path none~get~2->proc~json_get_logical_vec_by_path none~get~2->proc~json_get_real_by_path none~get~2->proc~json_get_real_vec_by_path none~get~2->proc~json_get_string_by_path none~get~2->proc~json_get_string_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~string_info json_core%string_info none~string_info->proc~json_string_info proc~initialize_json_core initialize_json_core proc~initialize_json_core->proc~json_initialize proc~initialize_json_core_in_file json_file%initialize_json_core_in_file proc~initialize_json_core_in_file->proc~json_initialize proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_file_print_error_message json_file%json_file_print_error_message proc~json_file_print_error_message->proc~json_print_error_message proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~json_initialize proc~parse_value json_core%parse_value proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~json_initialize proc~json_parse_string->proc~parse_value proc~parse_value->proc~parse_number proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path interface~json_core json_core interface~json_core->proc~initialize_json_core none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~initialize json_file%initialize none~initialize->proc~initialize_json_core_in_file none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_alloc_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~string_info proc~json_get_integer_vec->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~info~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~info~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~info~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_path->none~get_path proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~initialize_json_file initialize_json_file proc~initialize_json_file->none~initialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~initialize proc~initialize_json_file_from_string->none~deserialize proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~json_file_move_pointer json_file%json_file_move_pointer proc~json_file_move_pointer->none~initialize proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_parse_string->none~deserialize~2 interface~json_file json_file interface~json_file->proc~initialize_json_file interface~json_file->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~convert->none~info~2 proc~convert->proc~json_value_replace proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_replace->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~initialize_json_file_from_string_v2->none~deserialize proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_file_load_from_string->none~deserialize proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure subroutine json_clear_exceptions ( json ) implicit none class ( json_core ), intent ( inout ) :: json !clear the flag and message: json % exception_thrown = . false . if ( allocated ( json % err_message )) deallocate ( json % err_message ) end subroutine json_clear_exceptions","tags":"","loc":"proc/json_clear_exceptions.html"},{"title":"json_clone – JSON-Fortran","text":"private subroutine json_clone(json, from, to) Create a deep copy of a json_value linked-list structure. Notes If from has children, then they are also cloned. The parent of from is not linked to to . If from is an element of an array, then the previous and\n next entries are not cloned (only that element and it’s children, if any). Example program test use json_module implicit none type ( json_core ) :: json type ( json_value ), pointer :: j1 , j2 call json % load ( 'files/inputs/test1.json' , j1 ) call json % clone ( j1 , j2 ) !now have two independent copies call json % destroy ( j1 ) !destroys j1, but j2 remains call json % print ( j2 , 'j2.json' ) call json % destroy ( j2 ) end program test Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: from this is the structure to clone type( json_value ), pointer :: to the clone is put here\n(it must not already be associated) Calls proc~~json_clone~~CallsGraph proc~json_clone json_core%json_clone proc~json_value_clone_func json_core%json_value_clone_func proc~json_clone->proc~json_value_clone_func proc~json_value_clone_func->proc~json_value_clone_func Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_clone~~CalledByGraph proc~json_clone json_core%json_clone proc~assign_json_file json_file%assign_json_file proc~assign_json_file->proc~json_clone Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_clone ( json , from , to ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: from !! this is the structure to clone type ( json_value ), pointer :: to !! the clone is put here !! (it must not already be associated) !call the main function: call json % json_value_clone_func ( from , to ) end subroutine json_clone","tags":"","loc":"proc/json_clone.html"},{"title":"json_create_by_path – JSON-Fortran","text":"private subroutine json_create_by_path(json, me, path, p, found, was_created) Returns the json_value pointer given the path string,\n If necessary, by creating the variables as needed. By default, the leaf node and any empty array elements\n are created as json_null values. It only works for path_mode=1 or path_mode=3 .\n An error will be thrown for path_mode=2 (RFC 6901). See also json_get_by_path Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable type( json_value ), intent(out), optional, pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if there were no errors\n(variable found or created) logical(kind=LK), intent(out), optional :: was_created true if it was actually created\n(as opposed to already being there) Calls proc~~json_create_by_path~~CallsGraph proc~json_create_by_path json_core%json_create_by_path none~throw_exception json_core%throw_exception proc~json_create_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_create_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode none~get~2 json_core%get proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 proc~json_info_by_path->none~get~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_create_by_path~~CalledByGraph proc~json_create_by_path json_core%json_create_by_path none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~wrap_json_create_by_path->none~create proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_create_by_path ( json , me , path , p , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me !! a JSON linked list character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable type ( json_value ), pointer , intent ( out ), optional :: p !! pointer to the variable !! specify by `path` logical ( LK ), intent ( out ), optional :: found !! true if there were no errors !! (variable found or created) logical ( LK ), intent ( out ), optional :: was_created !! true if it was actually created !! (as opposed to already being there) type ( json_value ), pointer :: tmp character ( kind = CK , len = max_integer_str_len ) :: path_mode_str !! string version !! of `json%path_mode` if ( present ( p )) nullify ( p ) if (. not . json % exception_thrown ) then select case ( json % path_mode ) case ( 1_IK ) call json % json_get_by_path_default ( me , path , tmp , found ,& create_it = . true .,& was_created = was_created ) if ( present ( p )) p => tmp case ( 3_IK ) call json % json_get_by_path_jsonpath_bracket ( me , path , tmp , found ,& create_it = . true .,& was_created = was_created ) if ( present ( p )) p => tmp case default if ( json % path_mode == 2_IK ) then ! the problem here is there isn't really a way to disambiguate ! the array elements, so '/a/0' could be 'a(1)' or 'a.0'. call json % throw_exception ( 'Error in json_create_by_path: ' // & 'Create by path not supported in RFC 6901 path mode.' ) else call integer_to_string ( json % path_mode , int_fmt , path_mode_str ) call json % throw_exception ( 'Error in json_create_by_path: Unsupported path_mode: ' // & trim ( path_mode_str )) end if if ( present ( found )) then call json % clear_exceptions () found = . false . end if if ( present ( was_created )) was_created = . false . end select else if ( present ( was_created )) was_created = . false . if ( present ( found )) found = . false . end if end subroutine json_create_by_path","tags":"","loc":"proc/json_create_by_path.html"},{"title":"json_get_alloc_string_vec – JSON-Fortran","text":"private subroutine json_get_alloc_string_vec(json, me, vec, ilen) Get a string vector from a json_value . This is an alternate\n version of json_get_string_vec . This one returns an allocatable\n length character (where the string length is the maximum length of\n any element in the array). It also returns an integer array of the\n actual sizes of the strings in the JSON structure. Note This is somewhat inefficient since it does\n cycle through the array twice. Warning The allocation of vec doesn’t work with\n gfortran 4.9 or 5 due to compiler bugs Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array Calls proc~~json_get_alloc_string_vec~~CallsGraph proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2 json_core%get proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_string_info->none~get~2 none~info~2 json_core%info proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_alloc_string_vec~~CalledByGraph proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2 json_core%get proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_alloc_string_vec ( json , me , vec , ilen ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len = :), dimension (:), allocatable , intent ( out ) :: vec integer ( IK ), dimension (:), allocatable , intent ( out ) :: ilen !! the actual length !! of each character !! string in the array logical ( LK ) :: initialized !! if the output array has been sized integer ( IK ) :: max_len !! the length of the longest string in the array if ( json % exception_thrown ) return ! check for 0-length arrays first: select case ( me % var_type ) case ( json_array ) if ( json % count ( me ) == 0 ) then allocate ( character ( kind = CK , len = 0 ) :: vec ( 0 )) allocate ( ilen ( 0 )) return end if end select initialized = . false . call json % string_info ( me , ilen = ilen , max_str_len = max_len ) if (. not . json % exception_thrown ) then ! now get each string using the callback function: call json % get ( me , array_callback = get_chars_from_array ) end if if ( json % exception_thrown ) then if ( allocated ( vec )) deallocate ( vec ) if ( allocated ( ilen )) deallocate ( ilen ) end if contains subroutine get_chars_from_array ( json , element , i , count ) !! callback function for chars implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: element integer ( IK ), intent ( in ) :: i !! index integer ( IK ), intent ( in ) :: count !! size of array character ( kind = CK , len = :), allocatable :: cval !! for getting string !size the output array: if (. not . initialized ) then ! string length long enough to hold the longest one ! Note that this doesn't work with gfortran 4.9 or 5. allocate ( character ( kind = CK , len = max_len ) :: vec ( count ) ) initialized = . true . end if !populate the elements: call json % get ( element , value = cval ) if ( allocated ( cval )) then vec ( i ) = cval ilen ( i ) = len ( cval ) ! return the actual length deallocate ( cval ) else vec ( i ) = CK_ '' ilen ( i ) = 0 end if end subroutine get_chars_from_array end subroutine json_get_alloc_string_vec","tags":"","loc":"proc/json_get_alloc_string_vec.html"},{"title":"json_get_alloc_string_vec_by_path – JSON-Fortran","text":"private subroutine json_get_alloc_string_vec_by_path(json, me, path, vec, ilen, found, default, default_ilen) Alternate version of json_get_alloc_string_vec where input is the path. This is an alternate version of json_get_string_vec_by_path .\n This one returns an allocatable length character (where the string\n length is the maximum length of any element in the array). It also\n returns an integer array of the actual sizes of the strings in the JSON structure. Note An alternative to using this routine is to use json_get_array with\n a callback function that gets the string from each element and populates\n a user-defined string type. Note If the default argument is used, and default_ilen is not present,\n then ilen will just be returned as the length of the default dummy\n argument (all elements with the same length). Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default integer(kind=IK), intent(in), optional, dimension(:) :: default_ilen the actual\nlength of default Calls proc~~json_get_alloc_string_vec_by_path~~CallsGraph proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2 json_core%get proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_alloc_string_vec_by_path~~CalledByGraph proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2 json_core%get proc~json_get_alloc_string_vec_by_path->none~get~2 none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_alloc_string_vec_by_path ( json , me , path , vec , ilen , found , default , default_ilen ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path character ( kind = CK , len = :), dimension (:), allocatable , intent ( out ) :: vec integer ( IK ), dimension (:), allocatable , intent ( out ) :: ilen !! the actual length !! of each character !! string in the array logical ( LK ), intent ( out ), optional :: found character ( kind = CK , len =* ), dimension (:), intent ( in ), optional :: default integer ( IK ), dimension (:), intent ( in ), optional :: default_ilen !! the actual !! length of `default` character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_alloc_string_vec_by_path' #include \"json_get_vec_by_path_alloc.inc\" end subroutine json_get_alloc_string_vec_by_path","tags":"","loc":"proc/json_get_alloc_string_vec_by_path.html"},{"title":"json_get_array – JSON-Fortran","text":"private recursive subroutine json_get_array(json, me, array_callback) This routine calls the user-supplied json_array_callback_func subroutine for each element in the array. Note For integer, real, logical, and character arrays,\n higher-level routines are provided (see get methods), so\n this routine does not have to be used for those cases. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me procedure( json_array_callback_func ) :: array_callback Calls proc~~json_get_array~~CallsGraph proc~json_get_array json_core%json_get_array none~throw_exception json_core%throw_exception proc~json_get_array->none~throw_exception proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_array~~CalledByGraph proc~json_get_array json_core%json_get_array none~get~2 json_core%get none~get~2->proc~json_get_array proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code recursive subroutine json_get_array ( json , me , array_callback ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me procedure ( json_array_callback_func ) :: array_callback type ( json_value ), pointer :: element !! temp variable for getting elements integer ( IK ) :: i !! counter integer ( IK ) :: count !! number of elements in the array if ( json % exception_thrown ) return select case ( me % var_type ) case ( json_array ) count = json % count ( me ) element => me % children do i = 1 , count ! callback for each child if (. not . associated ( element )) then call json % throw_exception ( 'Error in json_get_array: ' // & 'Malformed JSON linked list' ) return end if call array_callback ( json , element , i , count ) if ( json % exception_thrown ) exit element => element % next end do case default call json % throw_exception ( 'Error in json_get_array:' // & ' Resolved value is not an array ' ) end select end subroutine json_get_array","tags":"","loc":"proc/json_get_array.html"},{"title":"json_get_array_by_path – JSON-Fortran","text":"private recursive subroutine json_get_array_by_path(json, me, path, array_callback, found) This routine calls the user-supplied array_callback subroutine\nfor each element in the array (specified by the path). Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path procedure( json_array_callback_func ) :: array_callback logical(kind=LK), intent(out), optional :: found Calls proc~~json_get_array_by_path~~CallsGraph proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2 json_core%get proc~json_get_array_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_array_by_path->proc~json_clear_exceptions none~get~2->proc~json_get_array_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->proc~flag_not_found proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_array_by_path~~CalledByGraph proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2 json_core%get proc~json_get_array_by_path->none~get~2 none~get~2->proc~json_get_array_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code recursive subroutine json_get_array_by_path ( json , me , path , array_callback , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path procedure ( json_array_callback_func ) :: array_callback logical ( LK ), intent ( out ), optional :: found type ( json_value ), pointer :: p if ( json % exception_thrown ) then if ( present ( found ) ) found = . false . return end if nullify ( p ) ! resolve the path to the value call json % get ( me = me , path = path , p = p ) if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_get_array:' // & ' Unable to resolve path: ' // trim ( path ), found ) else call json % get ( me = p , array_callback = array_callback ) nullify ( p ) end if if ( json % exception_thrown ) then if ( present ( found ) ) then found = . false . call json % clear_exceptions () end if else if ( present ( found ) ) found = . true . end if end subroutine json_get_array_by_path","tags":"","loc":"proc/json_get_array_by_path.html"},{"title":"json_get_by_path – JSON-Fortran","text":"private subroutine json_get_by_path(json, me, path, p, found) Returns the json_value pointer given the path string. It uses one of three methods: The original JSON -Fortran defaults RFC 6901 JSONPath “bracket-notation” Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable type( json_value ), intent(out), pointer :: p pointer to the variable\nspecified by path logical(kind=LK), intent(out), optional :: found true if it was found Calls proc~~json_get_by_path~~CallsGraph proc~json_get_by_path json_core%json_get_by_path none~throw_exception json_core%throw_exception proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode none~get~2 json_core%get proc~wrap_json_value_get_child_by_name->none~get~2 none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 proc~json_info_by_path->none~get~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_by_path~~CalledByGraph proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_by_path ( json , me , path , p , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me !! a JSON linked list character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable type ( json_value ), pointer , intent ( out ) :: p !! pointer to the variable !! specified by `path` logical ( LK ), intent ( out ), optional :: found !! true if it was found character ( kind = CK , len = max_integer_str_len ), allocatable :: path_mode_str !! string version !! of `json%path_mode` nullify ( p ) if (. not . json % exception_thrown ) then select case ( json % path_mode ) case ( 1_IK ) call json % json_get_by_path_default ( me , path , p , found ) case ( 2_IK ) call json % json_get_by_path_rfc6901 ( me , path , p , found ) case ( 3_IK ) call json % json_get_by_path_jsonpath_bracket ( me , path , p , found ) case default call integer_to_string ( json % path_mode , int_fmt , path_mode_str ) call json % throw_exception ( 'Error in json_get_by_path: Unsupported path_mode: ' // & trim ( path_mode_str )) if ( present ( found )) found = . false . end select if ( present ( found )) then if (. not . found ) call json % clear_exceptions () end if else if ( present ( found )) found = . false . end if end subroutine json_get_by_path","tags":"","loc":"proc/json_get_by_path.html"},{"title":"json_get_by_path_default – JSON-Fortran","text":"private subroutine json_get_by_path_default(json, me, path, p, found, create_it, was_created) Returns the json_value pointer given the path string. Example type ( json_core ) :: json type ( json_value ), pointer :: dat , p logical :: found !... call json % initialize ( path_mode = 1 ) ! this is the default so not strictly necessary. call json % get ( dat , 'data(2).version' , p , found ) Notes The syntax used here is a subset of the http://goessner.net/articles/JsonPath/ “dot–notation”.\n The following special characters are used to denote paths: $ - root @ - this . - child object member (note this can be changed using json%path_separator ) [] or () - child array element (note that indices are 1-based) Thus, if any of these characters are present in the name key,\n this routine cannot be used to get the value.\n In that case, the get_child methods would need to be used.\n Or, the alternate json_get_by_path_rfc6901 could be used. See also json_get_by_path_rfc6901 json_get_by_path_jsonpath_bracket Note The syntax is inherited from FSON, and is basically a subset\n of JSONPath “dot-notation”, with the additional allowance of\n () for array elements. Note JSON null values are used here for unknown variables when create_it is True.\n So, it is possible that an existing null variable can be converted to another\n type (object or array) if a child is specified in the path. Doing it this way\n to avoid having to use another type (say json_unknown ) that would have to be\n converted to null once all the variables have been created (user would have\n had to do this). Warning See (**) in code. I think we need to protect for memory leaks when\n changing the type of a variable that already exists. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable type( json_value ), intent(out), pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if it was found logical(kind=LK), intent(in), optional :: create_it if a variable is not present\nin the path, then it is created.\nthe leaf node is returned as\na null json type and can be\nchanged by the caller. logical(kind=LK), intent(out), optional :: was_created if create_it is true, this\nwill be true if the variable\nwas actually created. Otherwise\nit will be false. Calls proc~~json_get_by_path_default~~CallsGraph proc~json_get_by_path_default json_core%json_get_by_path_default none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child none~throw_exception json_core%throw_exception proc~json_get_by_path_default->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_value_get_child_by_name->interface~to_unicode none~get~2 json_core%get proc~wrap_json_value_get_child_by_name->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_by_path_default~~CalledByGraph proc~json_get_by_path_default json_core%json_get_by_path_default none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create none~info~2 json_core%info proc~json_add_integer_by_path->none~info~2 proc~json_value_replace json_core%json_value_replace proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~convert json_core%convert proc~convert->none~info~2 proc~convert->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_by_path_default ( json , me , path , p , found , create_it , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me !! a JSON linked list character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable type ( json_value ), pointer , intent ( out ) :: p !! pointer to the variable !! specify by `path` logical ( LK ), intent ( out ), optional :: found !! true if it was found logical ( LK ), intent ( in ), optional :: create_it !! if a variable is not present !! in the path, then it is created. !! the leaf node is returned as !! a `null` json type and can be !! changed by the caller. logical ( LK ), intent ( out ), optional :: was_created !! if `create_it` is true, this !! will be true if the variable !! was actually created. Otherwise !! it will be false. integer ( IK ) :: i !! counter of characters in `path` integer ( IK ) :: length !! significant length of `path` integer ( IK ) :: child_i !! index for getting children character ( kind = CK , len = 1 ) :: c !! a character in the `path` logical ( LK ) :: array !! flag when searching for array index in `path` type ( json_value ), pointer :: tmp !! temp variables for getting child objects logical ( LK ) :: child_found !! if the child value was found logical ( LK ) :: create !! if the object is to be created logical ( LK ) :: created !! if `create` is true, then this will be !! true if the leaf object had to be created integer ( IK ) :: j !! counter of children when creating object logical ( LK ) :: status_ok !! integer to string conversion flag nullify ( p ) if (. not . json % exception_thrown ) then if ( present ( create_it )) then create = create_it else create = . false . end if ! default to assuming relative to me p => me child_i = 1 array = . false . created = . false . !keep trailing space or not: if ( json % trailing_spaces_significant ) then length = len ( path ) else length = len_trim ( path ) end if do i = 1 , length c = path ( i : i ) select case ( c ) case ( root ) ! root do while ( associated ( p % parent )) p => p % parent end do child_i = i + 1 if ( create ) created = . false . ! should always exist case ( this ) ! this p => me child_i = i + 1 if ( create ) created = . false . ! should always exist case ( start_array , start_array_alt ) ! start looking for the array element index array = . true . ! get child member from p if ( child_i < i ) then nullify ( tmp ) if ( create ) then ! Example: ! 'aaa.bbb(1)' ! -> and aaa is a null, need to make it an object ! ! What about the case: aaa.bbb(1)(3) ? ! Is that already handled? if ( p % var_type == json_null ) then ! (**) ! if p was also created, then we need to ! convert it into an object here: p % var_type = json_object end if ! don't want to throw exceptions in this case call json % get_child ( p , path ( child_i : i - 1 ), tmp , child_found ) if (. not . child_found ) then ! have to create this child ! [make it an array] call json_value_create ( tmp ) call json % to_array ( tmp , path ( child_i : i - 1 )) call json % add ( p , tmp ) created = . true . else created = . false . end if else ! call the normal way call json % get_child ( p , path ( child_i : i - 1 ), tmp ) end if p => tmp else child_i = i + 1 ! say, '@(' cycle end if if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_get_by_path_default:' // & ' Error getting array element' , found ) exit end if child_i = i + 1 case ( end_array , end_array_alt ) if (. not . array ) then call json % throw_exception ( 'Error in json_get_by_path_default:' // & ' Unexpected ' // c , found ) exit end if array = . false . call string_to_integer ( path ( child_i : i - 1 ), child_i , status_ok ) if (. not . status_ok ) then call json % throw_exception ( 'Error in json_get_by_path_default:' // & ' Could not convert array index to integer: ' // & trim ( path ( child_i : i - 1 )), found ) exit end if nullify ( tmp ) if ( create ) then ! don't want to throw exceptions in this case call json % get_child ( p , child_i , tmp , child_found ) if (. not . child_found ) then if ( p % var_type == json_null ) then ! (**) ! if p was also created, then we need to ! convert it into an array here: p % var_type = json_array end if ! have to create this element ! [make it a null] ! (and any missing ones before it) do j = 1 , child_i nullify ( tmp ) call json % get_child ( p , j , tmp , child_found ) if (. not . child_found ) then call json_value_create ( tmp ) call json % to_null ( tmp ) ! array element doesn't need a name call json % add ( p , tmp ) if ( j == child_i ) created = . true . else if ( j == child_i ) created = . false . end if end do else created = . false . end if else ! call the normal way: call json % get_child ( p , child_i , tmp ) end if p => tmp child_i = i + 1 case default if ( c == json % path_separator ) then ! get child member from p if ( child_i < i ) then nullify ( tmp ) if ( create ) then if ( p % var_type == json_null ) then ! (**) ! if p was also created, then we need to ! convert it into an object here: p % var_type = json_object end if ! don't want to throw exceptions in this case call json % get_child ( p , path ( child_i : i - 1 ), tmp , child_found ) if (. not . child_found ) then ! have to create this child ! [make it an object] call json_value_create ( tmp ) call json % to_object ( tmp , path ( child_i : i - 1 )) call json % add ( p , tmp ) created = . true . else created = . false . end if else ! call the normal way call json % get_child ( p , path ( child_i : i - 1 ), tmp ) end if p => tmp else child_i = i + 1 ! say '$.', '@.', or ').' cycle end if if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_get_by_path_default:' // & ' Error getting child member.' , found ) exit end if child_i = i + 1 end if end select end do if ( json % exception_thrown ) then if ( present ( found )) then nullify ( p ) ! just in case found = . false . call json % clear_exceptions () end if else ! grab the last child if present in the path if ( child_i <= length ) then nullify ( tmp ) if ( create ) then if ( p % var_type == json_null ) then ! (**) ! if p was also created, then we need to ! convert it into an object here: p % var_type = json_object end if call json % get_child ( p , path ( child_i : i - 1 ), tmp , child_found ) if (. not . child_found ) then ! have to create this child ! (make it a null since it is the leaf) call json_value_create ( tmp ) call json % to_null ( tmp , path ( child_i : i - 1 )) call json % add ( p , tmp ) created = . true . else created = . false . end if else ! call the normal way call json % get_child ( p , path ( child_i : i - 1 ), tmp ) end if p => tmp else ! we already have p if ( create . and . created ) then ! make leaf p a null, but only ! if it wasn't there call json % to_null ( p ) end if end if ! error checking if ( associated ( p )) then if ( present ( found )) found = . true . !everything seems to be ok else call json % throw_exception ( 'Error in json_get_by_path_default:' // & ' variable not found: ' // trim ( path ), found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if end if end if ! if it had to be created: if ( present ( was_created )) was_created = created else if ( present ( found )) found = . false . if ( present ( was_created )) was_created = . false . end if end subroutine json_get_by_path_default","tags":"","loc":"proc/json_get_by_path_default.html"},{"title":"json_get_by_path_jsonpath_bracket – JSON-Fortran","text":"private subroutine json_get_by_path_jsonpath_bracket(json, me, path, p, found, create_it, was_created) Returns the json_value pointer given the path string,\n using the “ JSON Pointer” path specification defined by the\n JSONPath “bracket-notation”. The first character $ is optional, and signifies the root\n of the structure. If it is not present, then the first key\n is taken to be in the me object. Single or real quotes may be used. Example type ( json_core ) :: json type ( json_value ), pointer :: dat , p logical :: found !... call json % initialize ( path_mode = 3 ) call json % get ( dat , \"$['store']['book'][1]['title']\" , p , found ) See also json_get_by_path_default json_get_by_path_rfc6901 Reference JSONPath Note Uses 1-based array indices (same as json_get_by_path_default ,\n but unlike json_get_by_path_rfc6901 which uses 0-based indices). Note When create_it=True , if the variable already exists and is a type\n that is not compatible with the usage in the path , then it is\n destroyed and replaced with what is specified in the path . Note that\n this applies the all variables in the path as it is created. Currently,\n this behavior is different from json_get_by_path_default . Note JSON null values are used here for unknown variables\n when create_it is True. Warning Note that if using single quotes, this routine cannot parse\n a key containing '] . If using real quotes, this routine\n cannot parse a key containing \"] . If the key contains both '] and \"] , there is no way to parse it using this routine. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable\n(using JSONPath\n“bracket-notation”) type( json_value ), intent(out), pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if it was found logical(kind=LK), intent(in), optional :: create_it if a variable is not present\nin the path, then it is created.\nthe leaf node is returned as\na null json type and can be\nchanged by the caller. logical(kind=LK), intent(out), optional :: was_created if create_it is true, this\nwill be true if the variable\nwas actually created. Otherwise\nit will be false. Calls proc~~json_get_by_path_jsonpath_bracket~~CallsGraph proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket none~add~4 json_core%add proc~json_get_by_path_jsonpath_bracket->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_jsonpath_bracket->none~get_child none~throw_exception json_core%throw_exception proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_value_create json_value_create proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~string_to_integer string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_null->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_value_get_child_by_name->interface~to_unicode none~get~2 json_core%get proc~wrap_json_value_get_child_by_name->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 proc~json_info_by_path->none~get~2 proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~wrap_json_value_create_object->interface~to_unicode proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~to_array->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~string_to_integer proc~json_get_by_path_default->proc~to_null proc~json_get_by_path_default->proc~to_array proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_by_path_jsonpath_bracket~~CalledByGraph proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket none~get_child json_core%get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create none~info~2 json_core%info proc~json_add_integer_by_path->none~info~2 proc~json_value_replace json_core%json_value_replace proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~convert->none~info~2 proc~convert->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_by_path_jsonpath_bracket ( json , me , path , p , found , create_it , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me !! a JSON linked list character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable !! (using JSONPath !! \"bracket-notation\") type ( json_value ), pointer , intent ( out ) :: p !! pointer to the variable !! specify by `path` logical ( LK ), intent ( out ), optional :: found !! true if it was found logical ( LK ), intent ( in ), optional :: create_it !! if a variable is not present !! in the path, then it is created. !! the leaf node is returned as !! a `null` json type and can be !! changed by the caller. logical ( LK ), intent ( out ), optional :: was_created !! if `create_it` is true, this !! will be true if the variable !! was actually created. Otherwise !! it will be false. character ( kind = CK , len = :), allocatable :: token !! a token in the path !! (between the `['']` or !! `[]` characters) integer ( IK ) :: istart !! location of current '[' !! character in the path integer ( IK ) :: iend !! location of current ']' !! character in the path integer ( IK ) :: ival !! integer array index value logical ( LK ) :: status_ok !! error flag type ( json_value ), pointer :: tmp !! temporary variable for !! traversing the structure integer ( IK ) :: i !! counter integer ( IK ) :: ilen !! length of `path` string logical ( LK ) :: real_quotes !! if the keys are enclosed in `\"`, !! rather than `'` tokens. logical ( LK ) :: create !! if the object is to be created logical ( LK ) :: created !! if `create` is true, then this will be !! true if the leaf object had to be created integer ( IK ) :: j !! counter of children when creating object !TODO instead of reallocating `token` all the time, just ! allocate a big size and keep track of the length, ! then just reallocate only if necessary. ! [would probably be inefficient if there was a very large token, ! and then a bunch of small ones... but for similarly-sized ones ! it should be way more efficient since it would avoid most ! reallocations.] nullify ( p ) if (. not . json % exception_thrown ) then if ( present ( create_it )) then create = create_it else create = . false . end if p => me ! initialize created = . false . if ( path == CK_ '' ) then call json % throw_exception ( 'Error in json_get_by_path_jsonpath_bracket: ' // & 'invalid path specification: ' // trim ( path ), found ) else if ( path ( 1 : 1 ) == root . or . path ( 1 : 1 ) == start_array ) then ! the first character must be ! a `$` (root) or a `[` ! (element of `me`) if ( path ( 1 : 1 ) == root ) then ! go to the root do while ( associated ( p % parent )) p => p % parent end do if ( create ) created = . false . ! should always exist end if !path length (don't need trailing spaces:) ilen = len_trim ( path ) if ( ilen > 1 ) then istart = 2 ! initialize first '[' location index do if ( istart > ilen ) exit ! finished ! must be the next start bracket: if ( path ( istart : istart ) /= start_array ) then call json % throw_exception (& 'Error in json_get_by_path_jsonpath_bracket: ' // & 'expecting \"[\", found: \"' // trim ( path ( istart : istart )) // & '\" in path: ' // trim ( path ), found ) exit end if ! get the next token by checking: ! ! * [''] -- is the token after istart a quote? ! if so, then search for the next `']` ! ! * [1] -- if not, then maybe it is a number, ! so search for the next `]` ! verify length of remaining string if ( istart + 2 <= ilen ) then real_quotes = path ( istart + 1 : istart + 1 ) == quotation_mark ! [\" if ( real_quotes . or . path ( istart + 1 : istart + 1 ) == single_quote ) then ! [' ! it might be a key value: ['abc'] istart = istart + 1 ! move counter to ' index if ( real_quotes ) then iend = istart + index ( path ( istart + 1 : ilen ),& quotation_mark // end_array ) ! \"] else iend = istart + index ( path ( istart + 1 : ilen ),& single_quote // end_array ) ! '] end if if ( iend > istart ) then ! istart iend ! | | ! ['p']['abcdefg'] if ( iend > istart + 1 ) then token = path ( istart + 1 : iend - 1 ) else token = CK_ '' ! blank string end if ! remove trailing spaces in ! the token here if necessary: if (. not . json % trailing_spaces_significant ) & token = trim ( token ) if ( create ) then ! have a token, create it if necessary ! we need to convert it into an object here ! (e.g., if p was also just created) ! and destroy its data to prevent a memory leak call json % convert ( p , json_object ) ! don't want to throw exceptions in this case call json % get_child ( p , token , tmp , status_ok ) if (. not . status_ok ) then ! have to create this child ! [make it a null since we don't ! know what it is yet] call json_value_create ( tmp ) call json % to_null ( tmp , token ) call json % add ( p , tmp ) status_ok = . true . created = . true . else ! it was already there. created = . false . end if else ! have a token, see if it is valid: call json % get_child ( p , token , tmp , status_ok ) end if if ( status_ok ) then ! it was found p => tmp else call json % throw_exception (& 'Error in json_get_by_path_jsonpath_bracket: ' // & 'invalid token found: \"' // token // & '\" in path: ' // trim ( path ), found ) exit end if iend = iend + 1 ! move counter to ] index else call json % throw_exception (& 'Error in json_get_by_path_jsonpath_bracket: ' // & 'invalid path: ' // trim ( path ), found ) exit end if else ! it might be an integer value: [123] iend = istart + index ( path ( istart + 1 : ilen ), end_array ) ! ] if ( iend > istart + 1 ) then ! this should be an integer: token = path ( istart + 1 : iend - 1 ) ! verify that there are no spaces or other ! characters in the string: status_ok = . true . do i = 1 , len ( token ) ! It must only contain (0..9) characters ! (it must be unsigned) if ( scan ( token ( i : i ), CK_ '0123456789' ) < 1 ) then status_ok = . false . exit end if end do if ( status_ok ) then call string_to_integer ( token , ival , status_ok ) if ( status_ok ) status_ok = ival > 0 ! assuming 1-based array indices end if if ( status_ok ) then ! have a valid integer to use as an index ! see if this element is really there: call json % get_child ( p , ival , tmp , status_ok ) if ( create . and . . not . status_ok ) then ! have to create it: if (. not .( p % var_type == json_object . or . p % var_type == json_array )) then ! we need to convert it into an array here ! (e.g., if p was also just created) ! and destroy its data to prevent a memory leak call json % convert ( p , json_array ) end if ! have to create this element ! [make it a null] ! (and any missing ones before it) do j = 1 , ival nullify ( tmp ) call json % get_child ( p , j , tmp , status_ok ) if (. not . status_ok ) then call json_value_create ( tmp ) call json % to_null ( tmp ) ! array element doesn't need a name call json % add ( p , tmp ) if ( j == ival ) created = . true . else if ( j == ival ) created = . false . end if end do status_ok = . true . else created = . false . end if if ( status_ok ) then ! found it p => tmp else ! not found call json % throw_exception (& 'Error in json_get_by_path_jsonpath_bracket: ' // & 'invalid array index found: \"' // token // & '\" in path: ' // trim ( path ), found ) exit end if else call json % throw_exception (& 'Error in json_get_by_path_jsonpath_bracket: ' // & 'invalid token: \"' // token // & '\" in path: ' // trim ( path ), found ) exit end if else call json % throw_exception (& 'Error in json_get_by_path_jsonpath_bracket: ' // & 'invalid path: ' // trim ( path ), found ) exit end if end if else call json % throw_exception (& 'Error in json_get_by_path_jsonpath_bracket: ' // & 'invalid path: ' // trim ( path ), found ) exit end if ! set up for next token: istart = iend + 1 end do end if else call json % throw_exception (& 'Error in json_get_by_path_jsonpath_bracket: ' // & 'expecting \"' // root // '\", found: \"' // path ( 1 : 1 ) // & '\" in path: ' // trim ( path ), found ) end if end if if ( json % exception_thrown ) then nullify ( p ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if else if ( present ( found )) found = . true . end if ! if it had to be created: if ( present ( was_created )) was_created = created else if ( present ( found )) found = . false . if ( present ( was_created )) was_created = . false . end if end subroutine json_get_by_path_jsonpath_bracket","tags":"","loc":"proc/json_get_by_path_jsonpath_bracket.html"},{"title":"json_get_by_path_rfc6901 – JSON-Fortran","text":"private subroutine json_get_by_path_rfc6901(json, me, path, p, found) Returns the json_value pointer given the path string,\n using the “ JSON Pointer” path specification defined by RFC 6901. Note that trailing whitespace significance and case sensitivity\n are user-specified. To fully conform to the RFC 6901 standard,\n should probably set (via initialize ): case_sensitive_keys = .true. [this is the default setting] trailing_spaces_significant = .true. [this is not the default setting] allow_duplicate_keys = .false. [this is not the default setting] Example type ( json_core ) :: json type ( json_value ), pointer :: dat , p logical :: found !... call json % initialize ( path_mode = 2 ) call json % get ( dat , '/data/2/version' , p , found ) See also json_get_by_path_default json_get_by_path_jsonpath_bracket Reference JavaScript Object Notation ( JSON ) Pointer Note Not doing anything special about the - character to index an array.\n This is considered a normal error. Note Unlike in the default path mode, the array indices here are 0-based\n (in accordance with the RFC 6901 standard) Warning Not checking if the member that is referenced is unique.\n (according to the standard, evaluation of non-unique references\n should fail). Like json_get_by_path_default , this one will just return\n the first instance it encounters. This might be changed in the future. Warning I think the standard indicates that the input paths should use\n escaped JSON strings (currently we are assuming they are not escaped). Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable\n(an RFC 6901 “ JSON Pointer”) type( json_value ), intent(out), pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if it was found Calls proc~~json_get_by_path_rfc6901~~CallsGraph proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 none~get_child json_core%get_child proc~json_get_by_path_rfc6901->none~get_child none~throw_exception json_core%throw_exception proc~json_get_by_path_rfc6901->none~throw_exception proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~string_to_integer string_to_integer proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_value_get_child_by_name->interface~to_unicode none~get~2 json_core%get proc~wrap_json_value_get_child_by_name->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~get_child proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_by_path_rfc6901~~CalledByGraph proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 none~get_child json_core%get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_by_path_rfc6901 ( json , me , path , p , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me !! a JSON linked list character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable !! (an RFC 6901 \"JSON Pointer\") type ( json_value ), pointer , intent ( out ) :: p !! pointer to the variable !! specify by `path` logical ( LK ), intent ( out ), optional :: found !! true if it was found character ( kind = CK , len = :), allocatable :: token !! a token in the path (between the `/` characters) integer ( IK ) :: i !! counter integer ( IK ) :: islash_curr !! location of current '/' character in the path integer ( IK ) :: islash_next !! location of next '/' character in the path integer ( IK ) :: ilen !! length of `path` string type ( json_value ), pointer :: tmp !! temporary variable for traversing the structure integer ( IK ) :: ival !! integer array index value (0-based) logical ( LK ) :: status_ok !! error flag logical ( LK ) :: child_found !! for getting child values nullify ( p ) if (. not . json % exception_thrown ) then p => me ! initialize if ( path /= CK_ '' ) then if ( path ( 1 : 1 ) == slash ) then ! the first character must be a slash islash_curr = 1 ! initialize current slash index !keep trailing space or not: if ( json % trailing_spaces_significant ) then ilen = len ( path ) else ilen = len_trim ( path ) end if do ! get the next token by finding the slashes ! ! 1 2 3 ! /abc/d/efg if ( islash_curr == ilen ) then !the last token is an empty string token = CK_ '' islash_next = 0 ! will signal to stop else ! . ! '/123/567/' ! index in remaining string: islash_next = index ( path ( islash_curr + 1 : ilen ), slash ) if ( islash_next <= 0 ) then !last token: token = path ( islash_curr + 1 : ilen ) else ! convert to actual index in path: islash_next = islash_curr + index ( path ( islash_curr + 1 : ilen ), slash ) if ( islash_next > islash_curr + 1 ) then token = path ( islash_curr + 1 : islash_next - 1 ) else !empty token: token = CK_ '' end if end if end if ! remove trailing spaces in the token here if necessary: if (. not . json % trailing_spaces_significant ) & token = trim ( token ) ! decode the token: token = decode_rfc6901 ( token ) ! now, parse the token: ! first see if there is a child with this name call json % get_child ( p , token , tmp , child_found ) if ( child_found ) then ! it was found p => tmp else ! No key with this name. ! Is it an integer? If so, ! it might be an array index. status_ok = ( len ( token ) > 0 ) if ( status_ok ) then do i = 1 , len ( token ) ! It must only contain (0..9) characters ! (it must be unsigned) if ( scan ( token ( i : i ), CK_ '0123456789' ) < 1 ) then status_ok = . false . exit end if end do if ( status_ok ) then if ( len ( token ) > 1 . and . token ( 1 : 1 ) == CK_ '0' ) then ! leading zeros not allowed for some reason status_ok = . false . end if end if if ( status_ok ) then ! if we make it this far, it should be ! convertible to an integer, so do it. call string_to_integer ( token , ival , status_ok ) end if end if if ( status_ok ) then ! ival is an array index (0-based) call json % get_child ( p , ival + 1_IK , tmp , child_found ) if ( child_found ) then p => tmp else ! not found status_ok = . false . end if end if if (. not . status_ok ) then call json % throw_exception ( 'Error in json_get_by_path_rfc6901: ' // & 'invalid path specification: ' // trim ( path ), found ) exit end if end if if ( islash_next <= 0 ) exit ! finished ! set up for next token: islash_curr = islash_next end do else call json % throw_exception ( 'Error in json_get_by_path_rfc6901: ' // & 'invalid path specification: ' // trim ( path ), found ) end if end if if ( json % exception_thrown ) then nullify ( p ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if else if ( present ( found )) found = . true . end if else if ( present ( found )) found = . false . end if end subroutine json_get_by_path_rfc6901","tags":"","loc":"proc/json_get_by_path_rfc6901.html"},{"title":"json_get_integer – JSON-Fortran","text":"private subroutine json_get_integer(json, me, value) Get an integer value from a json_value . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me integer(kind=IK), intent(out) :: value the integer value Calls proc~~json_get_integer~~CallsGraph proc~json_get_integer json_core%json_get_integer none~throw_exception json_core%throw_exception proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_integer~~CalledByGraph proc~json_get_integer json_core%json_get_integer none~get~2 json_core%get none~get~2->proc~json_get_integer proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_integer ( json , me , value ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me integer ( IK ), intent ( out ) :: value !! the integer value logical ( LK ) :: status_ok !! for [[string_to_integer]] value = 0_IK if ( json % exception_thrown ) return if ( me % var_type == json_integer ) then value = me % int_value else if ( json % strict_type_checking ) then if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_integer:' // & ' Unable to resolve value to integer: ' // me % name ) else call json % throw_exception ( 'Error in json_get_integer:' // & ' Unable to resolve value to integer' ) end if else !type conversions select case ( me % var_type ) case ( json_real ) value = int ( me % dbl_value , IK ) case ( json_logical ) if ( me % log_value ) then value = 1_IK else value = 0_IK end if case ( json_string ) call string_to_integer ( me % str_value , value , status_ok ) if (. not . status_ok ) then value = 0_IK if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_integer:' // & ' Unable to convert string value to integer: ' // & me % name // ' = ' // trim ( me % str_value )) else call json % throw_exception ( 'Error in json_get_integer:' // & ' Unable to convert string value to integer: ' // & trim ( me % str_value )) end if end if case default if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_integer:' // & ' Unable to resolve value to integer: ' // me % name ) else call json % throw_exception ( 'Error in json_get_integer:' // & ' Unable to resolve value to integer' ) end if end select end if end if end subroutine json_get_integer","tags":"","loc":"proc/json_get_integer.html"},{"title":"json_get_integer_by_path – JSON-Fortran","text":"private subroutine json_get_integer_by_path(json, me, path, value, found, default) Get an integer value from a json_value , given the path string. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path integer(kind=IK), intent(out) :: value logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(in), optional :: default default value if not found Calls proc~~json_get_integer_by_path~~CallsGraph proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2 json_core%get proc~json_get_integer_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_integer_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_integer_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_integer_by_path->proc~json_clear_exceptions none~get~2->proc~json_get_integer_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_integer_by_path~~CalledByGraph proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2 json_core%get proc~json_get_integer_by_path->none~get~2 none~get~2->proc~json_get_integer_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_integer_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path integer ( IK ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found integer ( IK ), intent ( in ), optional :: default !! default value if not found integer ( IK ), parameter :: default_if_not_specified = 0_IK character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_integer_by_path' #include \"json_get_scalar_by_path.inc\" end subroutine json_get_integer_by_path","tags":"","loc":"proc/json_get_integer_by_path.html"},{"title":"json_get_integer_vec – JSON-Fortran","text":"private subroutine json_get_integer_vec(json, me, vec) Get an integer vector from a json_value . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me integer(kind=IK), intent(out), dimension(:), allocatable :: vec Calls proc~~json_get_integer_vec~~CallsGraph proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2 json_core%get proc~json_get_integer_vec->none~get~2 none~get~2->proc~json_get_integer_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_integer_vec~~CalledByGraph proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2 json_core%get proc~json_get_integer_vec->none~get~2 none~get~2->proc~json_get_integer_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_integer_vec ( json , me , vec ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me integer ( IK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ) :: initialized if ( json % exception_thrown ) return ! check for 0-length arrays first: select case ( me % var_type ) case ( json_array ) if ( json % count ( me ) == 0 ) then allocate ( vec ( 0 )) return end if end select initialized = . false . !the callback function is called for each element of the array: call json % get ( me , array_callback = get_int_from_array ) if ( json % exception_thrown . and . allocated ( vec )) deallocate ( vec ) contains subroutine get_int_from_array ( json , element , i , count ) !! callback function for integer implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: element integer ( IK ), intent ( in ) :: i !! index integer ( IK ), intent ( in ) :: count !! size of array !size the output array: if (. not . initialized ) then allocate ( vec ( count )) initialized = . true . end if !populate the elements: call json % get ( element , value = vec ( i )) end subroutine get_int_from_array end subroutine json_get_integer_vec","tags":"","loc":"proc/json_get_integer_vec.html"},{"title":"json_get_integer_vec_by_path – JSON-Fortran","text":"private subroutine json_get_integer_vec_by_path(json, me, path, vec, found, default) Get an integer vector from a json_value , given the path string. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path integer(kind=IK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(in), optional, dimension(:) :: default default value if not found Calls proc~~json_get_integer_vec_by_path~~CallsGraph proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2 json_core%get proc~json_get_integer_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_integer_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_integer_vec_by_path->proc~json_clear_exceptions none~get~2->proc~json_get_integer_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_integer_vec_by_path~~CalledByGraph proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2 json_core%get proc~json_get_integer_vec_by_path->none~get~2 none~get~2->proc~json_get_integer_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_integer_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path integer ( IK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found integer ( IK ), dimension (:), intent ( in ), optional :: default !! default value if not found character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_integer_vec_by_path' #include \"json_get_vec_by_path.inc\" end subroutine json_get_integer_vec_by_path","tags":"","loc":"proc/json_get_integer_vec_by_path.html"},{"title":"json_get_logical – JSON-Fortran","text":"private subroutine json_get_logical(json, me, value) Get a logical value from a json_value . Note If strict_type_checking is False, then the following assumptions are made: For integers: a value > 0 is True For reals: a value > 0 is True For strings: ‘true’ is True, and everything else is false. [case sensitive match] Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me logical(kind=LK), intent(out) :: value Calls proc~~json_get_logical~~CallsGraph proc~json_get_logical json_core%json_get_logical none~throw_exception json_core%throw_exception proc~json_get_logical->none~throw_exception proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_logical~~CalledByGraph proc~json_get_logical json_core%json_get_logical none~get~2 json_core%get none~get~2->proc~json_get_logical proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_logical ( json , me , value ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me logical ( LK ), intent ( out ) :: value value = . false . if ( json % exception_thrown ) return if ( me % var_type == json_logical ) then value = me % log_value else if ( json % strict_type_checking ) then if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_logical: ' // & 'Unable to resolve value to logical: ' // & me % name ) else call json % throw_exception ( 'Error in json_get_logical: ' // & 'Unable to resolve value to logical' ) end if else !type conversions select case ( me % var_type ) case ( json_integer ) value = ( me % int_value > 0_IK ) case ( json_real ) value = ( me % dbl_value > 0.0_RK ) case ( json_string ) value = ( me % str_value == true_str ) case default if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_logical: ' // & 'Unable to resolve value to logical: ' // & me % name ) else call json % throw_exception ( 'Error in json_get_logical: ' // & 'Unable to resolve value to logical' ) end if end select end if end if end subroutine json_get_logical","tags":"","loc":"proc/json_get_logical.html"},{"title":"json_get_logical_by_path – JSON-Fortran","text":"private subroutine json_get_logical_by_path(json, me, path, value, found, default) Get a logical value from a json_value , given the path. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path logical(kind=LK), intent(out) :: value logical(kind=LK), intent(out), optional :: found logical(kind=LK), intent(in), optional :: default default value if not found Calls proc~~json_get_logical_by_path~~CallsGraph proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2 json_core%get proc~json_get_logical_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_logical_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_logical_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_logical_by_path->proc~json_clear_exceptions none~get~2->proc~json_get_logical_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_logical_by_path~~CalledByGraph proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2 json_core%get proc~json_get_logical_by_path->none~get~2 none~get~2->proc~json_get_logical_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_logical_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path logical ( LK ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found logical ( LK ), intent ( in ), optional :: default !! default value if not found logical ( LK ), parameter :: default_if_not_specified = . false . character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_logical_by_path' #include \"json_get_scalar_by_path.inc\" end subroutine json_get_logical_by_path","tags":"","loc":"proc/json_get_logical_by_path.html"},{"title":"json_get_logical_vec – JSON-Fortran","text":"private subroutine json_get_logical_vec(json, me, vec) Get a logical vector from json_value . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me logical(kind=LK), intent(out), dimension(:), allocatable :: vec Calls proc~~json_get_logical_vec~~CallsGraph proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2 json_core%get proc~json_get_logical_vec->none~get~2 none~get~2->proc~json_get_logical_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_logical_vec~~CalledByGraph proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2 json_core%get proc~json_get_logical_vec->none~get~2 none~get~2->proc~json_get_logical_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_logical_vec ( json , me , vec ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me logical ( LK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ) :: initialized if ( json % exception_thrown ) return ! check for 0-length arrays first: select case ( me % var_type ) case ( json_array ) if ( json % count ( me ) == 0 ) then allocate ( vec ( 0 )) return end if end select initialized = . false . !the callback function is called for each element of the array: call json % get ( me , array_callback = get_logical_from_array ) if ( json % exception_thrown . and . allocated ( vec )) deallocate ( vec ) contains subroutine get_logical_from_array ( json , element , i , count ) !! callback function for logical implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: element integer ( IK ), intent ( in ) :: i !! index integer ( IK ), intent ( in ) :: count !! size of array !size the output array: if (. not . initialized ) then allocate ( vec ( count )) initialized = . true . end if !populate the elements: call json % get ( element , value = vec ( i )) end subroutine get_logical_from_array end subroutine json_get_logical_vec","tags":"","loc":"proc/json_get_logical_vec.html"},{"title":"json_get_logical_vec_by_path – JSON-Fortran","text":"private subroutine json_get_logical_vec_by_path(json, me, path, vec, found, default) Get a logical vector from a json_value , given the path. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path logical(kind=LK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found logical(kind=LK), intent(in), optional, dimension(:) :: default Calls proc~~json_get_logical_vec_by_path~~CallsGraph proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2 json_core%get proc~json_get_logical_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_logical_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_logical_vec_by_path->proc~json_clear_exceptions none~get~2->proc~json_get_logical_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_logical_vec_by_path~~CalledByGraph proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2 json_core%get proc~json_get_logical_vec_by_path->none~get~2 none~get~2->proc~json_get_logical_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_logical_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path logical ( LK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found logical ( LK ), dimension (:), intent ( in ), optional :: default character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_logical_vec_by_path' #include \"json_get_vec_by_path.inc\" end subroutine json_get_logical_vec_by_path","tags":"","loc":"proc/json_get_logical_vec_by_path.html"},{"title":"json_get_next – JSON-Fortran","text":"private subroutine json_get_next(json, p, next) Returns a pointer to the next of a json_value .\nIf there is no next, then a null() pointer is returned. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p JSON object type( json_value ), intent(out), pointer :: next pointer to next Calls proc~~json_get_next~~CallsGraph proc~json_get_next json_core%json_get_next none~throw_exception json_core%throw_exception proc~json_get_next->none~throw_exception proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_next ( json , p , next ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! JSON object type ( json_value ), pointer , intent ( out ) :: next !! pointer to `next` if ( associated ( p )) then next => p % next else nullify ( next ) call json % throw_exception ( 'Error in json_get_next: ' // & 'pointer is not associated.' ) end if end subroutine json_get_next","tags":"","loc":"proc/json_get_next.html"},{"title":"json_get_parent – JSON-Fortran","text":"private subroutine json_get_parent(json, p, parent) Returns a pointer to the parent of a json_value .\nIf there is no parent, then a null() pointer is returned. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p JSON object type( json_value ), intent(out), pointer :: parent pointer to parent Calls proc~~json_get_parent~~CallsGraph proc~json_get_parent json_core%json_get_parent none~throw_exception json_core%throw_exception proc~json_get_parent->none~throw_exception proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_parent ( json , p , parent ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! JSON object type ( json_value ), pointer , intent ( out ) :: parent !! pointer to `parent` if ( associated ( p )) then parent => p % parent else nullify ( parent ) call json % throw_exception ( 'Error in json_get_parent: ' // & 'pointer is not associated.' ) end if end subroutine json_get_parent","tags":"","loc":"proc/json_get_parent.html"},{"title":"json_get_path – JSON-Fortran","text":"private subroutine json_get_path(json, p, path, found, use_alt_array_tokens, path_sep) Returns the path to a JSON object that is part\n of a linked list structure. The path returned would be suitable for input to json_get_by_path and related routines. Note If an error occurs (which in this case means a malformed JSON structure) then an exception will be thrown, unless found is present, which will be set to false . path will be a blank string. Note If json%path_mode/=1 , then the use_alt_array_tokens and path_sep inputs are ignored if present. Note http://goessner.net/articles/JsonPath/ ( path_mode=3 )\n does not specify whether or not the keys should be escaped (this routine\n assumes not, as does http://jsonpath.com).\n Also, we are using Fortran-style 1-based array indices,\n not 0-based, to agree with the assumption in path_mode=1 Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list object character(kind=CK, len=:), intent(out), allocatable :: path path to the variable logical(kind=LK), intent(out), optional :: found true if there were no problems logical(kind=LK), intent(in), optional :: use_alt_array_tokens if true, then ‘()’ are used for array elements\notherwise, ‘[]’ are used [default]\n(only used if path_mode=1 ) character(kind=CK, len=1), intent(in), optional :: path_sep character to use for path separator\n(otherwise use json%path_separator )\n(only used if path_mode=1 ) Calls proc~~json_get_path~~CallsGraph proc~json_get_path json_core%json_get_path none~info~2 json_core%info proc~json_get_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_get_path->none~throw_exception proc~encode_rfc6901 encode_rfc6901 proc~json_get_path->proc~encode_rfc6901 proc~integer_to_string integer_to_string proc~json_get_path->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_path->proc~json_clear_exceptions proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~replace_string replace_string proc~encode_rfc6901->proc~replace_string proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~wrap_json_info_by_path->none~info~2 interface~to_unicode to_unicode proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_path~~CalledByGraph proc~json_get_path json_core%json_get_path none~get_path json_core%get_path none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_path proc~wrap_json_get_path->none~get_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_path ( json , p , path , found , use_alt_array_tokens , path_sep ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! a JSON linked list object character ( kind = CK , len = :), allocatable , intent ( out ) :: path !! path to the variable logical ( LK ), intent ( out ), optional :: found !! true if there were no problems logical ( LK ), intent ( in ), optional :: use_alt_array_tokens !! if true, then '()' are used for array elements !! otherwise, '[]' are used [default] !! (only used if `path_mode=1`) character ( kind = CK , len = 1 ), intent ( in ), optional :: path_sep !! character to use for path separator !! (otherwise use `json%path_separator`) !! (only used if `path_mode=1`) character ( kind = CK , len = :), allocatable :: name !! variable name character ( kind = CK , len = :), allocatable :: parent_name !! variable's parent name character ( kind = CK , len = max_integer_str_len ) :: istr !! for integer to string conversion !! (array indices) type ( json_value ), pointer :: tmp !! for traversing the structure type ( json_value ), pointer :: element !! for traversing the structure integer ( IK ) :: var_type !! JSON variable type flag integer ( IK ) :: i !! counter integer ( IK ) :: n_children !! number of children for parent logical ( LK ) :: use_brackets !! to use '[]' characters for arrays logical ( LK ) :: parent_is_root !! if the parent is the root character ( kind = CK , len = 1 ) :: array_start !! for `path_mode=1`, the character to start arrays character ( kind = CK , len = 1 ) :: array_end !! for `path_mode=1`, the character to end arrays logical :: consecutive_arrays !! check for array of array case integer ( IK ) :: parents_parent_var_type !! `var_type` for parent's parent !optional input: if ( present ( use_alt_array_tokens )) then use_brackets = . not . use_alt_array_tokens else use_brackets = . true . end if if ( json % path_mode == 1_IK ) then if ( use_brackets ) then array_start = start_array array_end = end_array else array_start = start_array_alt array_end = end_array_alt end if end if ! initialize: consecutive_arrays = . false . if ( associated ( p )) then !traverse the structure via parents up to the root tmp => p do if (. not . associated ( tmp )) exit !finished !get info about the current variable: call json % info ( tmp , name = name ) if ( json % path_mode == 2_IK ) then name = encode_rfc6901 ( name ) end if ! if tmp a child of an object, or an element of an array if ( associated ( tmp % parent )) then !get info about the parent: call json % info ( tmp % parent , var_type = var_type ,& n_children = n_children , name = parent_name ) if ( json % path_mode == 2_IK ) then parent_name = encode_rfc6901 ( parent_name ) end if if ( associated ( tmp % parent % parent )) then call json % info ( tmp % parent % parent , var_type = parents_parent_var_type ) consecutive_arrays = parents_parent_var_type == json_array . and . & var_type == json_array else consecutive_arrays = . false . end if select case ( var_type ) case ( json_array ) !get array index of this element: element => tmp % parent % children do i = 1 , n_children if (. not . associated ( element )) then call json % throw_exception ( 'Error in json_get_path: ' // & 'malformed JSON structure. ' , found ) exit end if if ( associated ( element , tmp )) then exit else element => element % next end if if ( i == n_children ) then ! it wasn't found (should never happen) call json % throw_exception ( 'Error in json_get_path: ' // & 'malformed JSON structure. ' , found ) exit end if end do select case ( json % path_mode ) case ( 3_IK ) ! JSONPath \"bracket-notation\" ! example: `$['key'][1]` ! [note: this uses 1-based indices] call integer_to_string ( i , int_fmt , istr ) if ( consecutive_arrays ) then call add_to_path ( start_array // trim ( adjustl ( istr )) // end_array , CK_ '' ) else call add_to_path ( start_array // single_quote // parent_name // & single_quote // end_array // & start_array // trim ( adjustl ( istr )) // end_array , CK_ '' ) end if case ( 2_IK ) ! rfc6901 ! Example: '/key/0' call integer_to_string ( i - 1_IK , int_fmt , istr ) ! 0-based index if ( consecutive_arrays ) then call add_to_path ( trim ( adjustl ( istr ))) else call add_to_path ( parent_name // slash // trim ( adjustl ( istr ))) end if case ( 1_IK ) ! default ! Example: `key[1]` call integer_to_string ( i , int_fmt , istr ) if ( consecutive_arrays ) then call add_to_path ( array_start // trim ( adjustl ( istr )) // array_end , path_sep ) else call add_to_path ( parent_name // array_start // & trim ( adjustl ( istr )) // array_end , path_sep ) end if end select if (. not . consecutive_arrays ) tmp => tmp % parent ! already added parent name case ( json_object ) if (. not . consecutive_arrays ) then ! idea is not to print the array name if ! it was already printed with the array !process parent on the next pass select case ( json % path_mode ) case ( 3_IK ) call add_to_path ( start_array // single_quote // name // & single_quote // end_array , CK_ '' ) case default call add_to_path ( name , path_sep ) end select end if case default call json % throw_exception ( 'Error in json_get_path: ' // & 'malformed JSON structure. ' // & 'A variable that is not an object ' // & 'or array should not have a child.' , found ) exit end select else !the last one: select case ( json % path_mode ) case ( 3_IK ) call add_to_path ( start_array // single_quote // name // & single_quote // end_array , CK_ '' ) case default call add_to_path ( name , path_sep ) end select end if if ( associated ( tmp % parent )) then !check if the parent is the root: parent_is_root = (. not . associated ( tmp % parent % parent )) if ( parent_is_root ) exit end if !go to parent: tmp => tmp % parent end do else call json % throw_exception ( 'Error in json_get_path: ' // & 'input pointer is not associated' , found ) end if !for errors, return blank string: if ( json % exception_thrown . or . . not . allocated ( path )) then path = CK_ '' else select case ( json % path_mode ) case ( 3_IK ) ! add the outer level object identifier: path = root // path case ( 2_IK ) ! add the root slash: path = slash // path end select end if !optional output: if ( present ( found )) then if ( json % exception_thrown ) then found = . false . call json % clear_exceptions () else found = . true . end if end if contains subroutine add_to_path ( str , path_sep ) !! prepend the string to the path implicit none character ( kind = CK , len =* ), intent ( in ) :: str !! string to prepend to `path` character ( kind = CK , len =* ), intent ( in ), optional :: path_sep !! path separator (default is '.'). !! (ignored if `json%path_mode/=1`) select case ( json % path_mode ) case ( 3_IK ) ! in this case, the options are ignored if (. not . allocated ( path )) then path = str else path = str // path end if case ( 2_IK ) ! in this case, the options are ignored if (. not . allocated ( path )) then path = str else path = str // slash // path end if case ( 1_IK ) ! default path format if (. not . allocated ( path )) then path = str else ! shouldn't add the path_sep for cases like x[1][2] ! [if current is an array element, and the previous was ! also an array element] so check for that here: if (. not . ( str ( len ( str ): len ( str )) == array_end . and . & path ( 1 : 1 ) == array_start )) then if ( present ( path_sep )) then ! use user specified: path = str // path_sep // path else ! use the default: path = str // json % path_separator // path end if else path = str // path end if end if end select end subroutine add_to_path end subroutine json_get_path","tags":"","loc":"proc/json_get_path.html"},{"title":"json_get_previous – JSON-Fortran","text":"private subroutine json_get_previous(json, p, previous) Returns a pointer to the previous of a json_value .\nIf there is no previous, then a null() pointer is returned. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p JSON object type( json_value ), intent(out), pointer :: previous pointer to previous Calls proc~~json_get_previous~~CallsGraph proc~json_get_previous json_core%json_get_previous none~throw_exception json_core%throw_exception proc~json_get_previous->none~throw_exception proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_previous ( json , p , previous ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! JSON object type ( json_value ), pointer , intent ( out ) :: previous !! pointer to `previous` if ( associated ( p )) then previous => p % previous else nullify ( previous ) call json % throw_exception ( 'Error in json_get_previous: ' // & 'pointer is not associated.' ) end if end subroutine json_get_previous","tags":"","loc":"proc/json_get_previous.html"},{"title":"json_get_real – JSON-Fortran","text":"private subroutine json_get_real(json, me, value) Get a real value from a json_value . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me real(kind=RK), intent(out) :: value Calls proc~~json_get_real~~CallsGraph proc~json_get_real json_core%json_get_real none~throw_exception json_core%throw_exception proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_real~~CalledByGraph proc~json_get_real json_core%json_get_real none~get~2 json_core%get none~get~2->proc~json_get_real proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_real ( json , me , value ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me real ( RK ), intent ( out ) :: value logical ( LK ) :: status_ok !! for [[string_to_real]] value = 0.0_RK if ( json % exception_thrown ) return if ( me % var_type == json_real ) then value = me % dbl_value else if ( json % strict_type_checking ) then if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_real:' // & ' Unable to resolve value to real: ' // me % name ) else call json % throw_exception ( 'Error in json_get_real:' // & ' Unable to resolve value to real' ) end if else !type conversions select case ( me % var_type ) case ( json_integer ) value = real ( me % int_value , RK ) case ( json_logical ) if ( me % log_value ) then value = 1.0_RK else value = 0.0_RK end if case ( json_string ) call string_to_real ( me % str_value , json % use_quiet_nan , value , status_ok ) if (. not . status_ok ) then value = 0.0_RK if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_real:' // & ' Unable to convert string value to real: ' // & me % name // ' = ' // trim ( me % str_value )) else call json % throw_exception ( 'Error in json_get_real:' // & ' Unable to convert string value to real: ' // & trim ( me % str_value )) end if end if case ( json_null ) if ( ieee_support_nan ( value ) . and . json % null_to_real_mode /= 1_IK ) then select case ( json % null_to_real_mode ) case ( 2_IK ) if ( json % use_quiet_nan ) then value = ieee_value ( value , ieee_quiet_nan ) else value = ieee_value ( value , ieee_signaling_nan ) end if case ( 3_IK ) value = 0.0_RK end select else if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_real:' // & ' Cannot convert null to NaN: ' // me % name ) else call json % throw_exception ( 'Error in json_get_real:' // & ' Cannot convert null to NaN' ) end if end if case default if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_real:' // & ' Unable to resolve value to real: ' // me % name ) else call json % throw_exception ( 'Error in json_get_real:' // & ' Unable to resolve value to real' ) end if end select end if end if end subroutine json_get_real","tags":"","loc":"proc/json_get_real.html"},{"title":"json_get_real32 – JSON-Fortran","text":"private subroutine json_get_real32(json, me, value) Alternate version of json_get_real where value=real32. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me real(kind=real32), intent(out) :: value Calls proc~~json_get_real32~~CallsGraph proc~json_get_real32 json_core%json_get_real32 none~get~2 json_core%get proc~json_get_real32->none~get~2 none~get~2->proc~json_get_real32 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_real32~~CalledByGraph proc~json_get_real32 json_core%json_get_real32 none~get~2 json_core%get proc~json_get_real32->none~get~2 none~get~2->proc~json_get_real32 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_real32 ( json , me , value ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me real ( real32 ), intent ( out ) :: value real ( RK ) :: tmp call json % get ( me , tmp ) value = real ( tmp , real32 ) end subroutine json_get_real32","tags":"","loc":"proc/json_get_real32.html"},{"title":"json_get_real32_by_path – JSON-Fortran","text":"private subroutine json_get_real32_by_path(json, me, path, value, found, default) Alternate version of json_get_real_by_path where value=real32. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CK, len=*), intent(in) :: path real(kind=real32), intent(out) :: value logical(kind=LK), intent(out), optional :: found real(kind=real32), intent(in), optional :: default default value if not found Calls proc~~json_get_real32_by_path~~CallsGraph proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2 json_core%get proc~json_get_real32_by_path->none~get~2 none~get~2->proc~json_get_real32_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_real32_by_path~~CalledByGraph proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2 json_core%get proc~json_get_real32_by_path->none~get~2 none~get~2->proc~json_get_real32_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_real32_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CK , len =* ), intent ( in ) :: path real ( real32 ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found real ( real32 ), intent ( in ), optional :: default !! default value if not found real ( RK ) :: tmp real ( RK ) :: tmp_default if ( present ( default )) then tmp_default = real ( default , RK ) call json % get ( me , path , tmp , found , tmp_default ) else call json % get ( me , path , tmp , found ) end if value = real ( tmp , real32 ) end subroutine json_get_real32_by_path","tags":"","loc":"proc/json_get_real32_by_path.html"},{"title":"json_get_real32_vec – JSON-Fortran","text":"private subroutine json_get_real32_vec(json, me, vec) Alternate version of json_get_real_vec where vec is real32 . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me real(kind=real32), intent(out), dimension(:), allocatable :: vec Calls proc~~json_get_real32_vec~~CallsGraph proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2 json_core%get proc~json_get_real32_vec->none~get~2 none~get~2->proc~json_get_real32_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_real32_vec~~CalledByGraph proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2 json_core%get proc~json_get_real32_vec->none~get~2 none~get~2->proc~json_get_real32_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_real32_vec ( json , me , vec ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me real ( real32 ), dimension (:), allocatable , intent ( out ) :: vec real ( RK ), dimension (:), allocatable :: tmp call json % get ( me , tmp ) if ( allocated ( tmp )) vec = real ( tmp , real32 ) end subroutine json_get_real32_vec","tags":"","loc":"proc/json_get_real32_vec.html"},{"title":"json_get_real32_vec_by_path – JSON-Fortran","text":"private subroutine json_get_real32_vec_by_path(json, me, path, vec, found, default) Alternate version of json_get_real_vec_by_path where vec is real32 . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path real(kind=real32), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found real(kind=real32), intent(in), optional, dimension(:) :: default default value if not found Calls proc~~json_get_real32_vec_by_path~~CallsGraph proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2 json_core%get proc~json_get_real32_vec_by_path->none~get~2 none~get~2->proc~json_get_real32_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_real32_vec_by_path~~CalledByGraph proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2 json_core%get proc~json_get_real32_vec_by_path->none~get~2 none~get~2->proc~json_get_real32_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_real32_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path real ( real32 ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found real ( real32 ), dimension (:), intent ( in ), optional :: default !! default value if not found real ( RK ), dimension (:), allocatable :: tmp real ( RK ), dimension (:), allocatable :: tmp_default if ( present ( default )) then tmp_default = real ( default , RK ) call json % get ( me , path , tmp , found , tmp_default ) else call json % get ( me , path , tmp , found ) end if if ( allocated ( tmp )) vec = real ( tmp , real32 ) end subroutine json_get_real32_vec_by_path","tags":"","loc":"proc/json_get_real32_vec_by_path.html"},{"title":"json_get_real_by_path – JSON-Fortran","text":"private subroutine json_get_real_by_path(json, me, path, value, found, default) Get a real value from a json_value , given the path. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CK, len=*), intent(in) :: path real(kind=RK), intent(out) :: value logical(kind=LK), intent(out), optional :: found real(kind=RK), intent(in), optional :: default default value if not found Calls proc~~json_get_real_by_path~~CallsGraph proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2 json_core%get proc~json_get_real_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_real_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_real_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_real_by_path->proc~json_clear_exceptions none~get~2->proc~json_get_real_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_real_by_path~~CalledByGraph proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2 json_core%get proc~json_get_real_by_path->none~get~2 none~get~2->proc~json_get_real_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_real_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CK , len =* ), intent ( in ) :: path real ( RK ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found real ( RK ), intent ( in ), optional :: default !! default value if not found real ( RK ), parameter :: default_if_not_specified = 0.0_RK character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_real_by_path' #include \"json_get_scalar_by_path.inc\" end subroutine json_get_real_by_path","tags":"","loc":"proc/json_get_real_by_path.html"},{"title":"json_get_real_vec – JSON-Fortran","text":"private subroutine json_get_real_vec(json, me, vec) Get a real vector from a json_value . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me real(kind=RK), intent(out), dimension(:), allocatable :: vec Calls proc~~json_get_real_vec~~CallsGraph proc~json_get_real_vec json_core%json_get_real_vec none~get~2 json_core%get proc~json_get_real_vec->none~get~2 none~get~2->proc~json_get_real_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_real_vec~~CalledByGraph proc~json_get_real_vec json_core%json_get_real_vec none~get~2 json_core%get proc~json_get_real_vec->none~get~2 none~get~2->proc~json_get_real_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_real_vec ( json , me , vec ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me real ( RK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ) :: initialized if ( json % exception_thrown ) return ! check for 0-length arrays first: select case ( me % var_type ) case ( json_array ) if ( json % count ( me ) == 0 ) then allocate ( vec ( 0 )) return end if end select initialized = . false . !the callback function is called for each element of the array: call json % get ( me , array_callback = get_real_from_array ) if ( json % exception_thrown . and . allocated ( vec )) deallocate ( vec ) contains subroutine get_real_from_array ( json , element , i , count ) !! callback function for real implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: element integer ( IK ), intent ( in ) :: i !! index integer ( IK ), intent ( in ) :: count !! size of array !size the output array: if (. not . initialized ) then allocate ( vec ( count )) initialized = . true . end if !populate the elements: call json % get ( element , value = vec ( i )) end subroutine get_real_from_array end subroutine json_get_real_vec","tags":"","loc":"proc/json_get_real_vec.html"},{"title":"json_get_real_vec_by_path – JSON-Fortran","text":"private subroutine json_get_real_vec_by_path(json, me, path, vec, found, default) Get a real vector from a json_value , given the path. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path real(kind=RK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found real(kind=RK), intent(in), optional, dimension(:) :: default default value if not found Calls proc~~json_get_real_vec_by_path~~CallsGraph proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2 json_core%get proc~json_get_real_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_real_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_real_vec_by_path->proc~json_clear_exceptions none~get~2->proc~json_get_real_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_real_vec_by_path~~CalledByGraph proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2 json_core%get proc~json_get_real_vec_by_path->none~get~2 none~get~2->proc~json_get_real_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_real_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path real ( RK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found real ( RK ), dimension (:), intent ( in ), optional :: default !! default value if not found character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_real_vec_by_path' #include \"json_get_vec_by_path.inc\" end subroutine json_get_real_vec_by_path","tags":"","loc":"proc/json_get_real_vec_by_path.html"},{"title":"json_get_string – JSON-Fortran","text":"private subroutine json_get_string(json, me, value) Get a character string from a json_value . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=:), intent(out), allocatable :: value Calls proc~~json_get_string~~CallsGraph proc~json_get_string json_core%json_get_string none~throw_exception json_core%throw_exception proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~integer_to_string integer_to_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_string~~CalledByGraph proc~json_get_string json_core%json_get_string none~get~2 json_core%get none~get~2->proc~json_get_string proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_string ( json , me , value ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len = :), allocatable , intent ( out ) :: value value = CK_ '' if (. not . json % exception_thrown ) then if ( me % var_type == json_string ) then if ( allocated ( me % str_value )) then if ( json % unescaped_strings ) then ! default: it is stored already unescaped: value = me % str_value else ! return the escaped version: call escape_string ( me % str_value , value , json % escape_solidus ) end if else call json % throw_exception ( 'Error in json_get_string: ' // & 'me%str_value not allocated' ) end if else if ( json % strict_type_checking ) then if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_string:' // & ' Unable to resolve value to string: ' // me % name ) else call json % throw_exception ( 'Error in json_get_string:' // & ' Unable to resolve value to string' ) end if else select case ( me % var_type ) case ( json_integer ) if ( allocated ( me % int_value )) then value = repeat ( space , max_integer_str_len ) call integer_to_string ( me % int_value , int_fmt , value ) value = trim ( value ) else call json % throw_exception ( 'Error in json_get_string: ' // & 'me%int_value not allocated' ) end if case ( json_real ) if ( allocated ( me % dbl_value )) then value = repeat ( space , max_numeric_str_len ) call real_to_string ( me % dbl_value , json % real_fmt ,& json % non_normals_to_null ,& json % compact_real , value ) value = trim ( value ) else call json % throw_exception ( 'Error in json_get_string: ' // & 'me%int_value not allocated' ) end if case ( json_logical ) if ( allocated ( me % log_value )) then if ( me % log_value ) then value = true_str else value = false_str end if else call json % throw_exception ( 'Error in json_get_string: ' // & 'me%log_value not allocated' ) end if case ( json_null ) value = null_str case default if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_string: ' // & 'Unable to resolve value to characters: ' // & me % name ) else call json % throw_exception ( 'Error in json_get_string: ' // & 'Unable to resolve value to characters' ) end if end select end if end if end if end subroutine json_get_string","tags":"","loc":"proc/json_get_string.html"},{"title":"json_get_string_by_path – JSON-Fortran","text":"private subroutine json_get_string_by_path(json, me, path, value, found, default) Get a character string from a json_value , given the path. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path character(kind=CK, len=:), intent(out), allocatable :: value logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional :: default Calls proc~~json_get_string_by_path~~CallsGraph proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2 json_core%get proc~json_get_string_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_string_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_string_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_string_by_path->proc~json_clear_exceptions none~get~2->proc~json_get_string_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_string_by_path~~CalledByGraph proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2 json_core%get proc~json_get_string_by_path->none~get~2 none~get~2->proc~json_get_string_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_string_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path character ( kind = CK , len = :), allocatable , intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found character ( kind = CK , len =* ), intent ( in ), optional :: default character ( kind = CK , len =* ), parameter :: default_if_not_specified = CK_ '' character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_string_by_path' #include \"json_get_scalar_by_path.inc\" end subroutine json_get_string_by_path","tags":"","loc":"proc/json_get_string_by_path.html"},{"title":"json_get_string_vec – JSON-Fortran","text":"private subroutine json_get_string_vec(json, me, vec) Get a string vector from a json_value . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec Calls proc~~json_get_string_vec~~CallsGraph proc~json_get_string_vec json_core%json_get_string_vec none~get~2 json_core%get proc~json_get_string_vec->none~get~2 none~get~2->proc~json_get_string_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_string_vec~~CalledByGraph proc~json_get_string_vec json_core%json_get_string_vec none~get~2 json_core%get proc~json_get_string_vec->none~get~2 none~get~2->proc~json_get_string_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_string_vec ( json , me , vec ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ) :: initialized if ( json % exception_thrown ) return ! check for 0-length arrays first: select case ( me % var_type ) case ( json_array ) if ( json % count ( me ) == 0 ) then allocate ( vec ( 0 )) return end if end select initialized = . false . !the callback function is called for each element of the array: call json % get ( me , array_callback = get_chars_from_array ) if ( json % exception_thrown . and . allocated ( vec )) deallocate ( vec ) contains subroutine get_chars_from_array ( json , element , i , count ) !! callback function for chars implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: element integer ( IK ), intent ( in ) :: i !! index integer ( IK ), intent ( in ) :: count !! size of array character ( kind = CK , len = :), allocatable :: cval !size the output array: if (. not . initialized ) then allocate ( vec ( count )) initialized = . true . end if !populate the elements: call json % get ( element , value = cval ) if ( allocated ( cval )) then vec ( i ) = cval deallocate ( cval ) else vec ( i ) = CK_ '' end if end subroutine get_chars_from_array end subroutine json_get_string_vec","tags":"","loc":"proc/json_get_string_vec.html"},{"title":"json_get_string_vec_by_path – JSON-Fortran","text":"private subroutine json_get_string_vec_by_path(json, me, path, vec, found, default) Get a string vector from a json_value , given the path. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default Calls proc~~json_get_string_vec_by_path~~CallsGraph proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2 json_core%get proc~json_get_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_string_vec_by_path->proc~json_clear_exceptions none~get~2->proc~json_get_string_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_get_string_vec_by_path~~CalledByGraph proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2 json_core%get proc~json_get_string_vec_by_path->none~get~2 none~get~2->proc~json_get_string_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_string_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path character ( kind = CK , len =* ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found character ( kind = CK , len =* ), dimension (:), intent ( in ), optional :: default character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_string_vec_by_path' #include \"json_get_vec_by_path.inc\" end subroutine json_get_string_vec_by_path","tags":"","loc":"proc/json_get_string_vec_by_path.html"},{"title":"json_get_tail – JSON-Fortran","text":"private subroutine json_get_tail(json, p, tail) Returns a pointer to the tail of a json_value (the last child of an array of object).\nIf there is no tail, then a null() pointer is returned. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p JSON object type( json_value ), intent(out), pointer :: tail pointer to tail Calls proc~~json_get_tail~~CallsGraph proc~json_get_tail json_core%json_get_tail none~throw_exception json_core%throw_exception proc~json_get_tail->none~throw_exception proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_get_tail ( json , p , tail ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! JSON object type ( json_value ), pointer , intent ( out ) :: tail !! pointer to `tail` if ( associated ( p )) then tail => p % tail else nullify ( tail ) call json % throw_exception ( 'Error in json_get_tail: ' // & 'pointer is not associated.' ) end if end subroutine json_get_tail","tags":"","loc":"proc/json_get_tail.html"},{"title":"json_info – JSON-Fortran","text":"private subroutine json_info(json, p, var_type, n_children, name) Returns information about a json_value . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(out), optional :: var_type variable type integer(kind=IK), intent(out), optional :: n_children number of children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name Calls proc~~json_info~~CallsGraph proc~json_info json_core%json_info none~throw_exception json_core%throw_exception proc~json_info->none~throw_exception proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_info~~CalledByGraph proc~json_info json_core%json_info none~info~2 json_core%info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info json_core%json_matrix_info proc~json_matrix_info->none~info~2 none~get_child json_core%get_child proc~json_matrix_info->none~get_child proc~json_string_info json_core%json_string_info proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_info_by_path->none~info~2 none~get_path json_core%get_path none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~matrix_info~2 json_core%matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~string_info json_core%string_info none~string_info->proc~json_string_info proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_path proc~json_check_children_for_duplicate_keys->none~get_child proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec->none~get~2 proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_matrix_info_by_path->none~get~2 proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_variable_info->none~info proc~wrap_json_get_path->none~get_path proc~wrap_json_matrix_info_by_path->none~matrix_info~2 none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2->proc~json_get_alloc_string_vec none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~insert_after->proc~json_value_insert_after_child_by_index none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_value_replace->none~insert_after proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_info ( json , p , var_type , n_children , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p integer ( IK ), intent ( out ), optional :: var_type !! variable type integer ( IK ), intent ( out ), optional :: n_children !! number of children character ( kind = CK , len = :), allocatable , intent ( out ), optional :: name !! variable name if (. not . json % exception_thrown . and . associated ( p )) then if ( present ( var_type )) var_type = p % var_type if ( present ( n_children )) n_children = json % count ( p ) if ( present ( name )) then if ( allocated ( p % name )) then name = p % name else name = CK_ '' end if end if else ! error if (. not . json % exception_thrown ) then call json % throw_exception ( 'Error in json_info: ' // & 'pointer is not associated.' ) end if if ( present ( var_type )) var_type = json_unknown if ( present ( n_children )) n_children = 0 if ( present ( name )) name = CK_ '' end if end subroutine json_info","tags":"","loc":"proc/json_info.html"},{"title":"json_info_by_path – JSON-Fortran","text":"private subroutine json_info_by_path(json, p, path, found, var_type, n_children, name) Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable logical(kind=LK), intent(out), optional :: found true if it was found integer(kind=IK), intent(out), optional :: var_type variable type integer(kind=IK), intent(out), optional :: n_children number of children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name Calls proc~~json_info_by_path~~CallsGraph proc~json_info_by_path json_core%json_info_by_path none~get~2 json_core%get proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path none~info~2->proc~json_info_by_path proc~json_info json_core%json_info none~info~2->proc~json_info proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_info->none~throw_exception proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_info_by_path~~CalledByGraph proc~json_info_by_path json_core%json_info_by_path none~info~2 json_core%info proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info json_core%json_matrix_info proc~json_matrix_info->none~info~2 none~get_child json_core%get_child proc~json_matrix_info->none~get_child proc~json_string_info json_core%json_string_info proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_info_by_path->none~info~2 none~get_path json_core%get_path none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~matrix_info~2 json_core%matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~string_info json_core%string_info none~string_info->proc~json_string_info proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_path proc~json_check_children_for_duplicate_keys->none~get_child proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec->none~get~2 proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_matrix_info_by_path->none~get~2 proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_variable_info->none~info proc~wrap_json_get_path->none~get_path proc~wrap_json_matrix_info_by_path->none~matrix_info~2 none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2->proc~json_get_alloc_string_vec none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~insert_after->proc~json_value_insert_after_child_by_index none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_value_replace->none~insert_after proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_info_by_path ( json , p , path , found , var_type , n_children , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! a JSON linked list character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable logical ( LK ), intent ( out ), optional :: found !! true if it was found integer ( IK ), intent ( out ), optional :: var_type !! variable type integer ( IK ), intent ( out ), optional :: n_children !! number of children character ( kind = CK , len = :), allocatable , intent ( out ), optional :: name !! variable name type ( json_value ), pointer :: p_var !! temporary pointer logical ( LK ) :: ok !! if the variable was found #if defined __GFORTRAN__ character ( kind = CK , len = :), allocatable :: p_name !! temporary variable for getting name #endif call json % get ( p , path , p_var , found ) !check if it was found: if ( present ( found )) then ok = found else ok = . not . json % exception_thrown end if if (. not . ok ) then if ( present ( var_type )) var_type = json_unknown if ( present ( n_children )) n_children = 0 if ( present ( name )) name = CK_ '' else !get info: #if defined __GFORTRAN__ call json % info ( p_var , var_type , n_children ) if ( present ( name )) then !workaround for gfortran bug if ( allocated ( p_var % name )) then p_name = p_var % name name = p_name else name = CK_ '' end if end if #else call json % info ( p_var , var_type , n_children , name ) #endif end if end subroutine json_info_by_path","tags":"","loc":"proc/json_info_by_path.html"},{"title":"json_initialize – JSON-Fortran","text":"private subroutine json_initialize(me, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) Initialize the json_core instance. The routine may be called before any of the json_core methods are used in\n order to specify certain parameters. If it is not called, then the defaults\n are used. This routine is also called internally by various routines.\n It can also be called to clear exceptions, or to reset some\n of the variables (note that only the arguments present are changed). Modified Izaak Beekman : 02/24/2015 Note initialize_json_core , json_initialize , initialize_json_core_in_file , and initialize_json_file all have a similar interface. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: me logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: 1 : Default mode (see json_get_by_path_default ) 2 : as RFC 6901 “ JSON Pointer” paths\n (see json_get_by_path_rfc6901 ) 3 : JSONPath “bracket-notation”\n see json_get_by_path_jsonpath_bracket ) character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys If True [default] then no special checks\n are done to check for duplicate keys. If False, then after parsing, if any duplicate\n keys are found, an error is thrown. A call to json_value_validate will also check for\n duplicates. logical(kind=LK), intent(in), optional :: escape_solidus If True then the solidus “ / ” is always escaped\n “ \\/ ” when serializing JSON If False [default], then it is not escaped. Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : 1 : an exception will be raised if\n try to retrieve a null as a real. 2 : a null retrieved as a real\n will return a NaN. [default] 3 : a null retrieved as a real\n will return 0.0. integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: 1 : as strings (e.g., “NaN”,\n “Infinity”, “-Infinity”) [default] 2 : as JSON null values logical(kind=LK), intent(in), optional :: use_quiet_nan If true [default], null_to_real_mode=2 and string_to_real will use ieee_quiet_nan for NaN values. If false, ieee_signaling_nan will be used. logical(kind=LK), intent(in), optional :: strict_integer_type_checking If false, when parsing JSON , if an integer numeric value\n cannot be converted to an integer ( integer(IK) ),\n then an attempt is then make to convert it\n to a real ( real(RK) ). If true, an exception will be raised if the integer\n value cannot be read. (default is true) logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Calls proc~~json_initialize~~CallsGraph proc~json_initialize json_core%json_initialize none~throw_exception json_core%throw_exception proc~json_initialize->none~throw_exception proc~integer_to_string integer_to_string proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_initialize~~CalledByGraph proc~json_initialize json_core%json_initialize proc~initialize_json_core initialize_json_core proc~initialize_json_core->proc~json_initialize proc~initialize_json_core_in_file json_file%initialize_json_core_in_file proc~initialize_json_core_in_file->proc~json_initialize proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~json_initialize proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~json_initialize interface~json_core json_core interface~json_core->proc~initialize_json_core none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~initialize json_file%initialize none~initialize->proc~initialize_json_core_in_file none~load~2 json_core%load none~load~2->proc~json_parse_file proc~initialize_json_file initialize_json_file proc~initialize_json_file->none~initialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~initialize none~deserialize json_file%deserialize proc~initialize_json_file_from_string->none~deserialize proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~json_file_move_pointer json_file%json_file_move_pointer proc~json_file_move_pointer->none~initialize proc~wrap_json_parse_string->none~deserialize~2 interface~json_file json_file interface~json_file->proc~initialize_json_file interface~json_file->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_initialize ( me ,& #include \"json_initialize_dummy_arguments.inc\" ) implicit none class ( json_core ), intent ( inout ) :: me #include \"json_initialize_arguments.inc\" character ( kind = CDK , len = 10 ) :: w !! max string length character ( kind = CDK , len = 10 ) :: d !! real precision digits character ( kind = CDK , len = 10 ) :: e !! real exponent digits character ( kind = CDK , len = 2 ) :: sgn !! sign flag: `ss` or `sp` character ( kind = CDK , len = 2 ) :: rl_edit_desc !! `G`, `E`, `EN`, or `ES` integer ( IK ) :: istat !! `iostat` flag for !! write statements logical ( LK ) :: sgn_prnt !! print sign flag character ( kind = CK , len = max_integer_str_len ) :: istr !! for integer to !! string conversion !reset exception to false: call me % clear_exceptions () !Just in case, clear these global variables also: me % pushed_index = 0 me % pushed_char = CK_ '' me % char_count = 0 me % line_count = 1 me % ipos = 1 if ( use_unformatted_stream ) then me % filesize = 0 me % ichunk = 0 me % chunk = repeat ( space , stream_chunk_size ) ! default chunk size end if #ifdef USE_UCS4 ! reopen stdout and stderr with utf-8 encoding open ( output_unit , encoding = 'utf-8' ) open ( error_unit , encoding = 'utf-8' ) #endif !various optional inputs: if ( present ( spaces_per_tab )) & me % spaces_per_tab = spaces_per_tab if ( present ( stop_on_error )) & me % stop_on_error = stop_on_error if ( present ( verbose )) & me % is_verbose = verbose if ( present ( strict_type_checking )) & me % strict_type_checking = strict_type_checking if ( present ( trailing_spaces_significant )) & me % trailing_spaces_significant = trailing_spaces_significant if ( present ( case_sensitive_keys )) & me % case_sensitive_keys = case_sensitive_keys if ( present ( no_whitespace )) & me % no_whitespace = no_whitespace if ( present ( unescape_strings )) & me % unescaped_strings = unescape_strings if ( present ( path_mode )) then if ( path_mode == 1_IK . or . path_mode == 2_IK . or . path_mode == 3_IK ) then me % path_mode = path_mode else me % path_mode = 1_IK ! just to have a valid value call me % throw_exception ( 'Invalid path_mode.' ) end if end if ! if we are allowing comments in the file: ! [an empty string disables comments] if ( present ( comment_char )) then me % allow_comments = comment_char /= CK_ '' me % comment_char = trim ( adjustl ( comment_char )) end if ! path separator: if ( present ( path_separator )) then me % path_separator = path_separator end if ! printing vectors in compressed form: if ( present ( compress_vectors )) then me % compress_vectors = compress_vectors end if ! checking for duplicate keys: if ( present ( allow_duplicate_keys )) then me % allow_duplicate_keys = allow_duplicate_keys end if ! if escaping the forward slash: if ( present ( escape_solidus )) then me % escape_solidus = escape_solidus end if ! how to handle null to real conversions: if ( present ( null_to_real_mode )) then select case ( null_to_real_mode ) case ( 1_IK : 3_IK ) me % null_to_real_mode = null_to_real_mode case default me % null_to_real_mode = 2_IK ! just to have a valid value call integer_to_string ( null_to_real_mode , int_fmt , istr ) call me % throw_exception ( 'Invalid null_to_real_mode: ' // istr ) end select end if ! how to handle NaN and Infinities: if ( present ( non_normal_mode )) then select case ( non_normal_mode ) case ( 1_IK ) ! use strings me % non_normals_to_null = . false . case ( 2_IK ) ! use null me % non_normals_to_null = . true . case default call integer_to_string ( non_normal_mode , int_fmt , istr ) call me % throw_exception ( 'Invalid non_normal_mode: ' // istr ) end select end if if ( present ( use_quiet_nan )) then me % use_quiet_nan = use_quiet_nan end if if ( present ( strict_integer_type_checking )) then me % strict_integer_type_checking = strict_integer_type_checking end if if ( present ( allow_trailing_comma )) then me % allow_trailing_comma = allow_trailing_comma end if !Set the format for real numbers: ! [if not changing it, then it remains the same] if ( (. not . allocated ( me % real_fmt )) . or . & ! if this hasn't been done yet present ( compact_reals ) . or . & present ( print_signs ) . or . & present ( real_format ) ) then !allow the special case where real format is '*': ! [this overrides the other options] if ( present ( real_format )) then if ( real_format == star ) then if ( present ( compact_reals )) then ! we will also allow for compact reals with ! '*' format, if both arguments are present. me % compact_real = compact_reals else me % compact_real = . false . end if me % real_fmt = star return end if end if if ( present ( compact_reals )) me % compact_real = compact_reals !set defaults sgn_prnt = . false . if ( present ( print_signs ) ) sgn_prnt = print_signs if ( sgn_prnt ) then sgn = 'sp' else sgn = 'ss' end if rl_edit_desc = 'E' if ( present ( real_format ) ) then select case ( real_format ) case ( 'g' , 'G' , 'e' , 'E' , 'en' , 'EN' , 'es' , 'ES' ) rl_edit_desc = real_format case default call me % throw_exception ( 'Invalid real format, \"' // & trim ( real_format ) // '\", passed to json_initialize.' // & new_line ( 'a' ) // 'Acceptable formats are: \"G\", \"E\", \"EN\", and \"ES\".' ) end select end if ! set the default output/input format for reals: write ( w , '(ss,I0)' , iostat = istat ) max_numeric_str_len if ( istat == 0 ) write ( d , '(ss,I0)' , iostat = istat ) real_precision if ( istat == 0 ) write ( e , '(ss,I0)' , iostat = istat ) real_exponent_digits if ( istat == 0 ) then me % real_fmt = '(' // sgn // ',' // trim ( rl_edit_desc ) // & trim ( w ) // '.' // trim ( d ) // 'E' // trim ( e ) // ')' else me % real_fmt = '(' // sgn // ',' // trim ( rl_edit_desc ) // & '27.17E4)' !just use this one (should never happen) end if end if end subroutine json_initialize","tags":"","loc":"proc/json_initialize.html"},{"title":"json_matrix_info – JSON-Fortran","text":"private subroutine json_matrix_info(json, p, is_matrix, var_type, n_sets, set_size, name) Alternate version of json_info that returns matrix\n information about a json_value . A json_value is a valid rank 2 matrix if all of the following are true: The var_type is json_array Each child is also a json_array , each of which has the same number of elements Each individual element has the same variable type (integer, logical, etc.) The idea here is that if it is a valid matrix, it can be interoperable with\n a Fortran rank 2 array of the same type. Example The following example is an array with var_type=json_integer , n_sets=3 , and set_size=4 { \"matrix\" : [ [ 1 , 2 , 3 , 4 ], [ 5 , 6 , 7 , 8 ], [ 9 , 10 , 11 , 12 ] ] } Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a JSON linked list logical(kind=LK), intent(out) :: is_matrix true if it is a valid matrix integer(kind=IK), intent(out), optional :: var_type variable type of data in the matrix\n(if all elements have the same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name Calls proc~~json_matrix_info~~CallsGraph proc~json_matrix_info json_core%json_matrix_info none~get_child json_core%get_child proc~json_matrix_info->none~get_child none~info~2 json_core%info proc~json_matrix_info->none~info~2 none~throw_exception json_core%throw_exception proc~json_matrix_info->none~throw_exception proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~wrap_json_info_by_path->none~info~2 interface~to_unicode to_unicode proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->proc~flag_not_found proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~get_child proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~convert->none~info~2 proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->none~get~2 proc~json_string_info->proc~json_clear_exceptions proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_matrix_info~~CalledByGraph proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2 json_core%matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info->none~matrix_info Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_matrix_info ( json , p , is_matrix , var_type , n_sets , set_size , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! a JSON linked list logical ( LK ), intent ( out ) :: is_matrix !! true if it is a valid matrix 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 type ( json_value ), pointer :: p_row !! for getting a set type ( json_value ), pointer :: p_element !! for getting an element in a set integer ( IK ) :: vartype !! json variable type of `p` integer ( IK ) :: row_vartype !! json variable type of a row integer ( IK ) :: element_vartype !! json variable type of an element in a row integer ( IK ) :: nr !! number of children of `p` integer ( IK ) :: nc !! number of elements in first child of `p` integer ( IK ) :: icount !! number of elements in a set integer ( IK ) :: i !! counter integer ( IK ) :: j !! counter #if defined __GFORTRAN__ character ( kind = CK , len = :), allocatable :: p_name !! temporary variable for getting name #endif !get info about the variable: #if defined __GFORTRAN__ call json % info ( p , vartype , nr ) if ( present ( name )) then !workaround for gfortran bug if ( allocated ( p % name )) then p_name = p % name name = p_name else name = CK_ '' end if end if #else call json % info ( p , vartype , nr , name ) #endif is_matrix = ( vartype == json_array ) if ( is_matrix ) then main : do i = 1 , nr nullify ( p_row ) call json % get_child ( p , i , p_row ) if (. not . associated ( p_row )) then is_matrix = . false . call json % throw_exception ( 'Error in json_matrix_info: ' // & 'Malformed JSON linked list' ) exit main end if call json % info ( p_row , var_type = row_vartype , n_children = icount ) if ( row_vartype == json_array ) then if ( i == 1 ) nc = icount !number of columns in first row if ( icount == nc ) then !make sure each row has the same number of columns !see if all the variables in this row are the same type: do j = 1 , icount nullify ( p_element ) call json % get_child ( p_row , j , p_element ) if (. not . associated ( p_element )) then is_matrix = . false . call json % throw_exception ( 'Error in json_matrix_info: ' // & 'Malformed JSON linked list' ) exit main end if call json % info ( p_element , var_type = element_vartype ) if ( i == 1 . and . j == 1 ) vartype = element_vartype !type of first element !in the row if ( vartype /= element_vartype ) then !not all variables are the same time is_matrix = . false . exit main end if end do else is_matrix = . false . exit main end if else is_matrix = . false . exit main end if end do main end if if ( is_matrix ) then if ( present ( var_type )) var_type = vartype if ( present ( n_sets )) n_sets = nr if ( present ( set_size )) set_size = nc else if ( present ( var_type )) var_type = json_unknown if ( present ( n_sets )) n_sets = 0 if ( present ( set_size )) set_size = 0 end if end subroutine json_matrix_info","tags":"","loc":"proc/json_matrix_info.html"},{"title":"json_matrix_info_by_path – JSON-Fortran","text":"private subroutine json_matrix_info_by_path(json, p, path, is_matrix, found, var_type, n_sets, set_size, name) Returns matrix information about a json_value , given the path. See also json_matrix_info Note If found is present, no exceptions will be thrown if an\n error occurs. Otherwise, an exception will be thrown if the\n variable is not found. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a JSON linked list character(kind=CK, 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\nthe matrix (if all elements have\nthe same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name Calls proc~~json_matrix_info_by_path~~CallsGraph proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~get~2 json_core%get proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_matrix_info_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found none~get_child json_core%get_child proc~json_matrix_info->none~get_child none~info~2 json_core%info proc~json_matrix_info->none~info~2 proc~json_matrix_info->none~throw_exception proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_matrix_info_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->none~get_child proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~convert->none~info~2 proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_string_info->none~get~2 proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_matrix_info_by_path~~CalledByGraph proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 none~matrix_info~2->proc~json_matrix_info_by_path proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info->none~matrix_info Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_matrix_info_by_path ( json , p , path , is_matrix , found ,& var_type , n_sets , set_size , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! a JSON linked list character ( kind = CK , 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 type ( json_value ), pointer :: p_var logical ( LK ) :: ok #if defined __GFORTRAN__ character ( kind = CK , len = :), allocatable :: p_name !! temporary variable for getting name #endif call json % get ( p , path , p_var , found ) !check if it was found: if ( present ( found )) then ok = found else ok = . not . json % exception_thrown end if if (. not . ok ) then if ( present ( var_type )) var_type = json_unknown if ( present ( n_sets )) n_sets = 0 if ( present ( set_size )) set_size = 0 if ( present ( name )) name = CK_ '' else !get info about the variable: #if defined __GFORTRAN__ call json % matrix_info ( p_var , is_matrix , var_type , n_sets , set_size ) if ( present ( name )) then !workaround for gfortran bug if ( allocated ( p_var % name )) then p_name = p_var % name name = p_name else name = CK_ '' end if end if #else call json % matrix_info ( p_var , is_matrix , var_type , n_sets , set_size , name ) #endif if ( json % exception_thrown . and . present ( found )) then found = . false . call json % clear_exceptions () end if end if end subroutine json_matrix_info_by_path","tags":"","loc":"proc/json_matrix_info_by_path.html"},{"title":"json_parse_end – JSON-Fortran","text":"private subroutine json_parse_end(json, unit, str) An error checking routine to call after a file (or string) has been parsed.\nIt will throw an exception if there are any other non-whitespace characters\nin the file. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number character(kind=CK, len=*), intent(in) :: str string containing JSON data (only used if unit=0 ) Calls proc~~json_parse_end~~CallsGraph proc~json_parse_end json_core%json_parse_end none~throw_exception json_core%throw_exception proc~json_parse_end->none~throw_exception proc~pop_char json_core%pop_char proc~json_parse_end->proc~pop_char proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_parse_end~~CalledByGraph proc~json_parse_end json_core%json_parse_end proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~json_parse_end proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~json_parse_end none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_parse_end ( json , unit , str ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: unit !! file unit number character ( kind = CK , len =* ), intent ( in ) :: str !! string containing JSON !! data (only used if `unit=0`) logical ( LK ) :: eof !! end-of-file flag character ( kind = CK , len = 1 ) :: c !! character read from file !! (or string) by [[pop_char]] ! first check for exceptions: if ( json % exception_thrown ) return ! pop the next non whitespace character off the file call json % pop_char ( unit , str = str , eof = eof , skip_ws = . true ., & skip_comments = json % allow_comments , popped = c ) if (. not . eof ) then call json % throw_exception ( 'Error in json_parse_end:' // & ' Unexpected character found after parsing value. \"' // & c // '\"' ) end if end subroutine json_parse_end","tags":"","loc":"proc/json_parse_end.html"},{"title":"json_parse_file – JSON-Fortran","text":"private subroutine json_parse_file(json, file, p, unit) Parse the JSON file and populate the json_value tree. Inputs The inputs can be: file & unit : the specified unit is used to read JSON from file.\n [note if unit is already open, then the filename is ignored] file : JSON is read from file using internal unit number Example type ( json_core ) :: json type ( json_value ), pointer :: p call json % load ( file = 'myfile.json' , p = p ) History Jacob Williams : 01/13/2015 : added read from string option. Izaak Beekman : 03/08/2015 : moved read from string to separate\n subroutine, and error annotation to separate subroutine. Note When calling this routine, any exceptions thrown from previous\n calls will automatically be cleared. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CDK, len=*), intent(in) :: file JSON file name type( json_value ), pointer :: p output structure integer(kind=IK), intent(in), optional :: unit file unit number (/= 0) Calls proc~~json_parse_file~~CallsGraph proc~json_parse_file json_core%json_parse_file none~throw_exception json_core%throw_exception proc~json_parse_file->none~throw_exception proc~annotate_invalid_json json_core%annotate_invalid_json proc~json_parse_file->proc~annotate_invalid_json proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_file->proc~json_check_all_for_duplicate_keys proc~json_initialize json_core%json_initialize proc~json_parse_file->proc~json_initialize proc~json_parse_end json_core%json_parse_end proc~json_parse_file->proc~json_parse_end proc~json_prepare_parser json_core%json_prepare_parser proc~json_parse_file->proc~json_prepare_parser proc~json_value_create json_value_create proc~json_parse_file->proc~json_value_create proc~parse_value json_core%parse_value proc~json_parse_file->proc~parse_value proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~get_current_line_from_file_sequential json_core%get_current_line_from_file_sequential proc~annotate_invalid_json->proc~get_current_line_from_file_sequential proc~get_current_line_from_file_stream json_core%get_current_line_from_file_stream proc~annotate_invalid_json->proc~get_current_line_from_file_stream proc~integer_to_string integer_to_string proc~annotate_invalid_json->proc~integer_to_string proc~json_traverse json_core%json_traverse proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_initialize->none~throw_exception proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions proc~json_parse_end->none~throw_exception proc~pop_char json_core%pop_char proc~json_parse_end->proc~pop_char proc~parse_value->none~throw_exception proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_for_chars json_core%parse_for_chars proc~parse_value->proc~parse_for_chars proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~parse_string json_core%parse_string proc~parse_value->proc~parse_string proc~parse_value->proc~pop_char proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~to_array json_core%to_array proc~parse_value->proc~to_array proc~to_logical json_core%to_logical proc~parse_value->proc~to_logical proc~to_null json_core%to_null proc~parse_value->proc~to_null proc~to_object json_core%to_object proc~parse_value->proc~to_object proc~to_string json_core%to_string proc~parse_value->proc~to_string proc~json_traverse->none~throw_exception proc~parse_array->none~throw_exception proc~parse_array->proc~json_value_create proc~parse_array->proc~parse_value proc~parse_array->proc~pop_char none~add~4 json_core%add proc~parse_array->none~add~4 none~destroy~3 json_core%destroy proc~parse_array->none~destroy~3 proc~parse_for_chars->none~throw_exception proc~parse_for_chars->proc~pop_char proc~parse_number->proc~json_clear_exceptions proc~parse_number->proc~pop_char proc~parse_number->proc~push_char proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real proc~parse_object->none~throw_exception proc~parse_object->proc~json_value_create proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~pop_char proc~parse_object->none~add~4 proc~parse_object->none~destroy~3 proc~parse_string->none~throw_exception proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~push_char->none~throw_exception proc~push_char->proc~integer_to_string proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_logical->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_parse_file~~CalledByGraph proc~json_parse_file json_core%json_parse_file none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_parse_file ( json , file , p , unit ) implicit none class ( json_core ), intent ( inout ) :: json character ( kind = CDK , len =* ), intent ( in ) :: file !! JSON file name type ( json_value ), pointer :: p !! output structure integer ( IK ), intent ( in ), optional :: unit !! file unit number (/= 0) integer ( IK ) :: iunit !! file unit actually used integer ( IK ) :: istat !! iostat flag logical ( LK ) :: is_open !! if the file is already open logical ( LK ) :: has_duplicate !! if checking for duplicate keys character ( kind = CK , len = :), allocatable :: path !! path to any duplicate key ! clear any exceptions and initialize: call json % initialize () call json % prepare_parser () if ( present ( unit ) ) then if ( unit == 0 ) then call json % throw_exception ( 'Error in json_parse_file: unit number must not be 0.' ) return end if iunit = unit ! check to see if the file is already open ! if it is, then use it, otherwise open the file with the name given. inquire ( unit = iunit , opened = is_open , iostat = istat ) if ( istat == 0 . and . . not . is_open ) then ! open the file open ( unit = iunit , & file = file , & status = 'OLD' , & action = 'READ' , & form = form_spec , & access = access_spec , & iostat = istat & FILE_ENCODING ) else ! if the file is already open, then we need to make sure ! that it is open with the correct form/access/etc... end if else ! open the file with a new unit number: open ( newunit = iunit , & file = file , & status = 'OLD' , & action = 'READ' , & form = form_spec , & access = access_spec , & iostat = istat & FILE_ENCODING ) end if if ( istat == 0 ) then if ( use_unformatted_stream ) then ! save the file size to be read: inquire ( unit = iunit , size = json % filesize , iostat = istat ) end if ! create the value and associate the pointer call json_value_create ( p ) ! Note: the name of the root json_value doesn't really matter, ! but we'll allocate something here just in case. p % name = trim ( file ) !use the file name ! parse as a value call json % parse_value ( unit = iunit , str = CK_ '' , value = p ) call json % parse_end ( unit = iunit , str = CK_ '' ) ! check for errors: if ( json % exception_thrown ) then call json % annotate_invalid_json ( iunit , CK_ '' ) else if (. not . json % allow_duplicate_keys ) then call json % check_for_duplicate_keys ( p , has_duplicate , path = path ) if (. not . json % exception_thrown ) then if ( has_duplicate ) then call json % throw_exception ( 'Error in json_parse_file: ' // & 'Duplicate key found: ' // path ) end if end if end if end if ! close the file: close ( unit = iunit , iostat = istat ) else call json % throw_exception ( 'Error in json_parse_file: Error opening file: ' // trim ( file )) nullify ( p ) end if end subroutine json_parse_file","tags":"","loc":"proc/json_parse_file.html"},{"title":"json_parse_string – JSON-Fortran","text":"private subroutine json_parse_string(json, p, str) Parse the JSON string and populate the json_value tree. See also json_parse_file Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p output structure character(kind=CK, len=*), intent(in) :: str string with JSON data Calls proc~~json_parse_string~~CallsGraph proc~json_parse_string json_core%json_parse_string none~throw_exception json_core%throw_exception proc~json_parse_string->none~throw_exception proc~annotate_invalid_json json_core%annotate_invalid_json proc~json_parse_string->proc~annotate_invalid_json proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_initialize json_core%json_initialize proc~json_parse_string->proc~json_initialize proc~json_parse_end json_core%json_parse_end proc~json_parse_string->proc~json_parse_end proc~json_prepare_parser json_core%json_prepare_parser proc~json_parse_string->proc~json_prepare_parser proc~json_value_create json_value_create proc~json_parse_string->proc~json_value_create proc~parse_value json_core%parse_value proc~json_parse_string->proc~parse_value proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~get_current_line_from_file_sequential json_core%get_current_line_from_file_sequential proc~annotate_invalid_json->proc~get_current_line_from_file_sequential proc~get_current_line_from_file_stream json_core%get_current_line_from_file_stream proc~annotate_invalid_json->proc~get_current_line_from_file_stream proc~integer_to_string integer_to_string proc~annotate_invalid_json->proc~integer_to_string proc~json_traverse json_core%json_traverse proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_initialize->none~throw_exception proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions proc~json_parse_end->none~throw_exception proc~pop_char json_core%pop_char proc~json_parse_end->proc~pop_char proc~parse_value->none~throw_exception proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_for_chars json_core%parse_for_chars proc~parse_value->proc~parse_for_chars proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~parse_string json_core%parse_string proc~parse_value->proc~parse_string proc~parse_value->proc~pop_char proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~to_array json_core%to_array proc~parse_value->proc~to_array proc~to_logical json_core%to_logical proc~parse_value->proc~to_logical proc~to_null json_core%to_null proc~parse_value->proc~to_null proc~to_object json_core%to_object proc~parse_value->proc~to_object proc~to_string json_core%to_string proc~parse_value->proc~to_string proc~json_traverse->none~throw_exception proc~parse_array->none~throw_exception proc~parse_array->proc~json_value_create proc~parse_array->proc~parse_value proc~parse_array->proc~pop_char none~add~4 json_core%add proc~parse_array->none~add~4 none~destroy~3 json_core%destroy proc~parse_array->none~destroy~3 proc~parse_for_chars->none~throw_exception proc~parse_for_chars->proc~pop_char proc~parse_number->proc~json_clear_exceptions proc~parse_number->proc~pop_char proc~parse_number->proc~push_char proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real proc~parse_object->none~throw_exception proc~parse_object->proc~json_value_create proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~pop_char proc~parse_object->none~add~4 proc~parse_object->none~destroy~3 proc~parse_string->none~throw_exception proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~push_char->none~throw_exception proc~push_char->proc~integer_to_string proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_logical->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_parse_string~~CalledByGraph proc~json_parse_string json_core%json_parse_string none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_parse_string ( json , p , str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! output structure character ( kind = CK , len =* ), intent ( in ) :: str !! string with JSON data integer ( IK ), parameter :: iunit = 0 !! indicates that json data will be read from buffer logical ( LK ) :: has_duplicate !! if checking for duplicate keys character ( kind = CK , len = :), allocatable :: path !! path to any duplicate key ! clear any exceptions and initialize: call json % initialize () call json % prepare_parser () ! create the value and associate the pointer call json_value_create ( p ) ! Note: the name of the root json_value doesn't really matter, ! but we'll allocate something here just in case. p % name = CK_ '' ! parse as a value call json % parse_value ( unit = iunit , str = str , value = p ) call json % parse_end ( unit = iunit , str = str ) if ( json % exception_thrown ) then call json % annotate_invalid_json ( iunit , str ) else if (. not . json % allow_duplicate_keys ) then call json % check_for_duplicate_keys ( p , has_duplicate , path = path ) if (. not . json % exception_thrown ) then if ( has_duplicate ) then call json % throw_exception ( 'Error in json_parse_string: ' // & 'Duplicate key found: ' // path ) end if end if end if end if end subroutine json_parse_string","tags":"","loc":"proc/json_parse_string.html"},{"title":"json_prepare_parser – JSON-Fortran","text":"private subroutine json_prepare_parser(json) Internal routine to be called before parsing JSON .\nCurrently, all this does it allocate the comment_char if none was specified. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json Called by proc~~json_prepare_parser~~CalledByGraph proc~json_prepare_parser json_core%json_prepare_parser proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~json_prepare_parser proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~json_prepare_parser none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_prepare_parser ( json ) implicit none class ( json_core ), intent ( inout ) :: json if ( json % allow_comments . and . . not . allocated ( json % comment_char )) then ! comments are enabled, but user hasn't set the comment char, ! so in this case use the default: json % comment_char = CK_ '/!#' end if end subroutine json_prepare_parser","tags":"","loc":"proc/json_prepare_parser.html"},{"title":"json_print_error_message – JSON-Fortran","text":"private subroutine json_print_error_message(json, io_unit) Print any error message, and then clear the exceptions. Note This routine is used by the unit tests.\n It was originally in json_example.f90, and was\n moved here 2/26/2015 by Izaak Beekman. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer, intent(in), optional :: io_unit unit number for\nprinting error message Calls proc~~json_print_error_message~~CallsGraph proc~json_print_error_message json_core%json_print_error_message proc~json_check_for_errors json_core%json_check_for_errors proc~json_print_error_message->proc~json_check_for_errors proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_print_error_message->proc~json_clear_exceptions Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_print_error_message~~CalledByGraph proc~json_print_error_message json_core%json_print_error_message proc~json_file_print_error_message json_file%json_file_print_error_message proc~json_file_print_error_message->proc~json_print_error_message Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_print_error_message ( json , io_unit ) implicit none class ( json_core ), intent ( inout ) :: json integer , intent ( in ), optional :: io_unit !! unit number for !! printing error message character ( kind = CK , len = :), allocatable :: error_msg !! error message logical :: status_ok !! false if there were any errors thrown !get error message: call json % check_for_errors ( status_ok , error_msg ) !print it if there is one: if (. not . status_ok ) then if ( present ( io_unit )) then write ( io_unit , '(A)' ) error_msg else write ( output_unit , '(A)' ) error_msg end if deallocate ( error_msg ) call json % clear_exceptions () end if end subroutine json_print_error_message","tags":"","loc":"proc/json_print_error_message.html"},{"title":"json_print_to_console – JSON-Fortran","text":"private subroutine json_print_to_console(json, p) Print the json_value structure to the console ( output_unit ). Note Just a wrapper for json_print_to_unit . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p Source Code subroutine json_print_to_console ( json , p ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p call json % print ( p , int ( output_unit , IK )) end subroutine json_print_to_console","tags":"","loc":"proc/json_print_to_console.html"},{"title":"json_print_to_filename – JSON-Fortran","text":"private subroutine json_print_to_filename(json, p, filename) Print the json_value structure to a file. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CDK, len=*), intent(in) :: filename the filename to print to\n(should not already be open) Calls proc~~json_print_to_filename~~CallsGraph proc~json_print_to_filename json_core%json_print_to_filename none~throw_exception json_core%throw_exception proc~json_print_to_filename->none~throw_exception proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_print_to_filename ( json , p , filename ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p character ( kind = CDK , len =* ), intent ( in ) :: filename !! the filename to print to !! (should not already be open) integer ( IK ) :: iunit !! file unit for `open` statement integer ( IK ) :: istat !! `iostat` code for `open` statement open ( newunit = iunit , file = filename , status = 'REPLACE' , iostat = istat FILE_ENCODING ) if ( istat == 0 ) then call json % print ( p , iunit ) close ( iunit , iostat = istat ) else call json % throw_exception ( 'Error in json_print_to_filename: could not open file: ' // & trim ( filename )) end if end subroutine json_print_to_filename","tags":"","loc":"proc/json_print_to_filename.html"},{"title":"json_print_to_unit – JSON-Fortran","text":"private subroutine json_print_to_unit(json, p, iunit) Print the json_value structure to a file. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p integer(kind=IK), intent(in) :: iunit the file unit (the file must\nalready have been opened, can’t be -1). Calls proc~~json_print_to_unit~~CallsGraph proc~json_print_to_unit json_core%json_print_to_unit none~throw_exception json_core%throw_exception proc~json_print_to_unit->none~throw_exception proc~json_value_print json_core%json_value_print proc~json_print_to_unit->proc~json_value_print proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_value_print->none~throw_exception proc~json_value_print->proc~json_value_print proc~escape_string escape_string proc~json_value_print->proc~escape_string proc~integer_to_string integer_to_string proc~json_value_print->proc~integer_to_string proc~json_failed json_core%json_failed proc~json_value_print->proc~json_failed proc~json_is_vector json_core%json_is_vector proc~json_value_print->proc~json_is_vector proc~real_to_string real_to_string proc~json_value_print->proc~real_to_string proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_is_vector->none~throw_exception none~info~2 json_core%info proc~json_is_vector->none~info~2 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception proc~convert->none~info~2 none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~throw_exception proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_string_info->proc~json_clear_exceptions proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_print_to_unit ( json , p , iunit ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p integer ( IK ), intent ( in ) :: iunit !! the file unit (the file must !! already have been opened, can't be -1). character ( kind = CK , len = :), allocatable :: dummy !! dummy for `str` argument !! to [[json_value_print]] integer ( IK ) :: idummy !! dummy for `iloc` argument !! to [[json_value_print]] if ( iunit /= unit2str ) then idummy = 0_IK call json % json_value_print ( p , iunit , str = dummy , iloc = idummy , indent = 1_IK , colon = . true .) else call json % throw_exception ( 'Error in json_print_to_unit: iunit must not be -1.' ) end if end subroutine json_print_to_unit","tags":"","loc":"proc/json_print_to_unit.html"},{"title":"json_rename_by_path – JSON-Fortran","text":"private subroutine json_rename_by_path(json, me, path, name, found) Rename a json_value , given the path. Note this is a wrapper for json_value_rename . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path path to the variable to rename character(kind=CK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if there were no errors Calls proc~~json_rename_by_path~~CallsGraph proc~json_rename_by_path json_core%json_rename_by_path none~get~2 json_core%get proc~json_rename_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_rename_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_rename_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->proc~flag_not_found proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_rename_by_path ( json , me , path , name , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable to rename character ( kind = CK , len =* ), intent ( in ) :: name !! the new name logical ( LK ), intent ( out ), optional :: found !! if there were no errors type ( json_value ), pointer :: p if ( json % exception_thrown ) then if ( present ( found ) ) found = . false . return end if nullify ( p ) call json % get ( me = me , path = path , p = p ) if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_rename_by_path:' // & ' Unable to resolve path: ' // trim ( path ), found ) else call json % rename ( p , name ) nullify ( p ) end if if ( json % exception_thrown ) then if ( present ( found )) then found = . false . call json % clear_exceptions () end if else if ( present ( found )) found = . true . end if end subroutine json_rename_by_path","tags":"","loc":"proc/json_rename_by_path.html"},{"title":"json_rename_by_path_name_ascii – JSON-Fortran","text":"private subroutine json_rename_by_path_name_ascii(json, me, path, name, found) Alternate version of json_rename_by_path , where “name” is kind=CDK Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path character(kind=CDK, len=*), intent(in) :: name logical(kind=LK), intent(out), optional :: found Calls proc~~json_rename_by_path_name_ascii~~CallsGraph proc~json_rename_by_path_name_ascii json_core%json_rename_by_path_name_ascii interface~to_unicode to_unicode proc~json_rename_by_path_name_ascii->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_rename_by_path_name_ascii ( json , me , path , name , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path character ( kind = CDK , len =* ), intent ( in ) :: name logical ( LK ), intent ( out ), optional :: found call json % rename ( me , path , to_unicode ( name ), found ) end subroutine json_rename_by_path_name_ascii","tags":"","loc":"proc/json_rename_by_path_name_ascii.html"},{"title":"json_rename_by_path_path_ascii – JSON-Fortran","text":"private subroutine json_rename_by_path_path_ascii(json, me, path, name, found) Alternate version of json_rename_by_path , where “path” is kind=CDK Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=*), intent(in) :: name logical(kind=LK), intent(out), optional :: found Calls proc~~json_rename_by_path_path_ascii~~CallsGraph proc~json_rename_by_path_path_ascii json_core%json_rename_by_path_path_ascii interface~to_unicode to_unicode proc~json_rename_by_path_path_ascii->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_rename_by_path_path_ascii ( json , me , path , name , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path character ( kind = CK , len =* ), intent ( in ) :: name logical ( LK ), intent ( out ), optional :: found call json % rename ( me , to_unicode ( path ), name , found ) end subroutine json_rename_by_path_path_ascii","tags":"","loc":"proc/json_rename_by_path_path_ascii.html"},{"title":"json_string_info – JSON-Fortran","text":"private subroutine json_string_info(json, p, ilen, max_str_len, found) Returns information about character strings returned from a json_value . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(out), optional, dimension(:), allocatable :: ilen if p is an array, this\nis the actual length\nof each character\nstring in the array.\nif not an array, this\nis returned unallocated. integer(kind=IK), intent(out), optional :: max_str_len The maximum length required to\nhold the string representation returned\nby a call to a get routine. If a scalar,\nthis is just the length of the scalar. If\na vector, this is the maximum length of\nany element. logical(kind=LK), intent(out), optional :: found true if there were no errors.\nif not present, an error will\nthrow an exception Calls proc~~json_string_info~~CallsGraph proc~json_string_info json_core%json_string_info none~get~2 json_core%get proc~json_string_info->none~get~2 none~info~2 json_core%info proc~json_string_info->none~info~2 none~throw_exception json_core%throw_exception proc~json_string_info->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_string_info->proc~json_clear_exceptions proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_string_info~~CalledByGraph proc~json_string_info json_core%json_string_info none~get~2 json_core%get proc~json_string_info->none~get~2 none~info~2 json_core%info proc~json_string_info->none~info~2 none~string_info json_core%string_info none~string_info->proc~json_string_info proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec->none~get~2 none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_string_info ( json , p , ilen , max_str_len , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p integer ( IK ), dimension (:), allocatable , intent ( out ), optional :: ilen !! if `p` is an array, this !! is the actual length !! of each character !! string in the array. !! if not an array, this !! is returned unallocated. integer ( IK ), intent ( out ), optional :: max_str_len !! The maximum length required to !! hold the string representation returned !! by a call to a `get` routine. If a scalar, !! this is just the length of the scalar. If !! a vector, this is the maximum length of !! any element. logical ( LK ), intent ( out ), optional :: found !! true if there were no errors. !! if not present, an error will !! throw an exception character ( kind = CK , len = :), allocatable :: cval !! for getting values as strings. logical ( LK ) :: initialized !! if the output array has been sized logical ( LK ) :: get_max_len !! if we are returning the `max_str_len` logical ( LK ) :: get_ilen !! if we are returning the `ilen` array integer ( IK ) :: var_type !! variable type get_max_len = present ( max_str_len ) get_ilen = present ( ilen ) if (. not . json % exception_thrown ) then if ( present ( found )) found = . true . initialized = . false . if ( get_max_len ) max_str_len = 0 select case ( p % var_type ) case ( json_array ) ! it's an array ! call routine for each element call json % get ( p , array_callback = get_string_lengths ) case default ! not an array if ( json % strict_type_checking ) then ! only allowing strings to be returned ! as strings, so we can check size directly call json % info ( p , var_type = var_type ) if ( var_type == json_string ) then if ( allocated ( p % str_value ) . and . get_max_len ) & max_str_len = len ( p % str_value ) else ! it isn't a string, so there is no length call json % throw_exception ( 'Error in json_string_info: ' // & 'When strict_type_checking is true ' // & 'the variable must be a character string.' ,& found ) end if else ! in this case, we have to get the value ! as a string to know what size it is. call json % get ( p , value = cval ) if (. not . json % exception_thrown ) then if ( allocated ( cval ) . and . get_max_len ) & max_str_len = len ( cval ) end if end if end select end if if ( json % exception_thrown ) then if ( present ( found )) then call json % clear_exceptions () found = . false . end if if ( get_max_len ) max_str_len = 0 if ( get_ilen ) then if ( allocated ( ilen )) deallocate ( ilen ) end if end if contains subroutine get_string_lengths ( json , element , i , count ) !! callback function to call for each element in the array. implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: element integer ( IK ), intent ( in ) :: i !! index integer ( IK ), intent ( in ) :: count !! size of array character ( kind = CK , len = :), allocatable :: cval integer ( IK ) :: var_type if ( json % exception_thrown ) return if (. not . initialized ) then if ( get_ilen ) allocate ( ilen ( count )) initialized = . true . end if if ( json % strict_type_checking ) then ! only allowing strings to be returned ! as strings, so we can check size directly call json % info ( element , var_type = var_type ) if ( var_type == json_string ) then if ( allocated ( element % str_value )) then if ( get_max_len ) then if ( len ( element % str_value ) > max_str_len ) & max_str_len = len ( element % str_value ) end if if ( get_ilen ) ilen ( i ) = len ( element % str_value ) else if ( get_ilen ) ilen ( i ) = 0 end if else ! it isn't a string, so there is no length call json % throw_exception ( 'Error in json_string_info: ' // & 'When strict_type_checking is true ' // & 'the array must contain only ' // & 'character strings.' , found ) end if else ! in this case, we have to get the value ! as a string to know what size it is. call json % get ( element , value = cval ) if ( json % exception_thrown ) return if ( allocated ( cval )) then if ( get_max_len ) then if ( len ( cval ) > max_str_len ) max_str_len = len ( cval ) end if if ( get_ilen ) ilen ( i ) = len ( cval ) else if ( get_ilen ) ilen ( i ) = 0 end if end if end subroutine get_string_lengths end subroutine json_string_info","tags":"","loc":"proc/json_string_info.html"},{"title":"json_throw_exception – JSON-Fortran","text":"private subroutine json_throw_exception(json, msg, found) Throw an exception in the json_core .\n This routine sets the error flag, and prevents any subsequent routine\n from doing anything, until json_clear_exceptions is called. Note If is_verbose is true, this will also print a\n traceback if the Intel compiler is used. Note If stop_on_error is true, then the program is stopped. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CK, len=*), intent(in) :: msg the error message logical(kind=LK), intent(inout), optional :: found if the caller is handling the\nexception with an optimal return\nargument. If so, json%stop_on_error is ignored. Called by proc~~json_throw_exception~~CalledByGraph proc~json_throw_exception json_core%json_throw_exception none~throw_exception json_core%throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~convert json_core%convert proc~convert->none~throw_exception none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~throw_exception none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~throw_exception proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~throw_exception proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~throw_exception proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~throw_exception proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~throw_exception none~get_child json_core%get_child proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_count json_core%json_count proc~json_count->none~throw_exception proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->none~throw_exception proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_file_move_pointer json_file%json_file_move_pointer proc~json_file_move_pointer->none~throw_exception none~initialize json_file%initialize proc~json_file_move_pointer->none~initialize proc~json_file_print_to_unit json_file%json_file_print_to_unit proc~json_file_print_to_unit->none~throw_exception proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path proc~json_get_alloc_string_vec_by_path->none~throw_exception none~get~2 json_core%get proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array json_core%json_get_array proc~json_get_array->none~throw_exception proc~json_get_array_by_path json_core%json_get_array_by_path proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->none~get_child proc~json_get_integer json_core%json_get_integer proc~json_get_integer->none~throw_exception proc~json_get_integer_by_path json_core%json_get_integer_by_path proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical json_core%json_get_logical proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path json_core%json_get_logical_by_path proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_next json_core%json_get_next proc~json_get_next->none~throw_exception proc~json_get_parent json_core%json_get_parent proc~json_get_parent->none~throw_exception proc~json_get_path json_core%json_get_path proc~json_get_path->none~throw_exception proc~json_get_path->none~info~2 proc~json_get_previous json_core%json_get_previous proc~json_get_previous->none~throw_exception proc~json_get_real json_core%json_get_real proc~json_get_real->none~throw_exception proc~json_get_real_by_path json_core%json_get_real_by_path proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string json_core%json_get_string proc~json_get_string->none~throw_exception proc~json_get_string_by_path json_core%json_get_string_by_path proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->none~get~2 proc~json_get_tail json_core%json_get_tail proc~json_get_tail->none~throw_exception proc~json_info json_core%json_info proc~json_info->none~throw_exception proc~json_initialize json_core%json_initialize proc~json_initialize->none~throw_exception proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~throw_exception proc~json_is_vector->none~info~2 proc~json_matrix_info json_core%json_matrix_info proc~json_matrix_info->none~throw_exception proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_parse_end json_core%json_parse_end proc~json_parse_end->none~throw_exception proc~json_parse_file json_core%json_parse_file proc~json_parse_file->none~throw_exception proc~json_parse_file->proc~json_initialize proc~json_parse_file->proc~json_parse_end proc~parse_value json_core%parse_value proc~json_parse_file->proc~parse_value proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_file->proc~json_check_all_for_duplicate_keys proc~json_parse_string json_core%json_parse_string proc~json_parse_string->none~throw_exception proc~json_parse_string->proc~json_initialize proc~json_parse_string->proc~json_parse_end proc~json_parse_string->proc~parse_value proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_print_to_filename json_core%json_print_to_filename proc~json_print_to_filename->none~throw_exception proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->none~throw_exception proc~json_value_print json_core%json_value_print proc~json_print_to_unit->proc~json_value_print proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~throw_exception proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~throw_exception proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_traverse json_core%json_traverse proc~json_traverse->none~throw_exception proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~throw_exception proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~throw_exception proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~throw_exception proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~throw_exception proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~throw_exception proc~json_value_add_member->none~info~2 proc~json_value_get_child json_core%json_value_get_child proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index json_core%json_value_get_child_by_index proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_name json_core%json_value_get_child_by_name proc~json_value_get_child_by_name->none~throw_exception proc~json_value_print->none~throw_exception proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~json_value_swap json_core%json_value_swap proc~json_value_swap->none~throw_exception proc~json_value_is_child_of json_core%json_value_is_child_of proc~json_value_swap->proc~json_value_is_child_of proc~json_value_validate json_core%json_value_validate proc~json_value_validate->none~throw_exception proc~json_value_validate->proc~json_check_all_for_duplicate_keys proc~parse_array json_core%parse_array proc~parse_array->none~throw_exception proc~parse_array->proc~parse_value proc~parse_for_chars json_core%parse_for_chars proc~parse_for_chars->none~throw_exception proc~parse_object json_core%parse_object proc~parse_object->none~throw_exception proc~parse_object->proc~parse_object proc~parse_string json_core%parse_string proc~parse_object->proc~parse_string proc~parse_object->proc~parse_value proc~parse_string->none~throw_exception proc~parse_value->none~throw_exception proc~parse_value->proc~parse_array proc~parse_value->proc~parse_for_chars proc~parse_value->proc~parse_object proc~parse_value->proc~parse_string proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~push_char->none~throw_exception proc~string_to_dble json_core%string_to_dble proc~string_to_dble->none~throw_exception proc~string_to_int json_core%string_to_int proc~string_to_int->none~throw_exception proc~wrap_json_throw_exception->none~throw_exception none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~get_child->proc~json_value_get_child none~get_child->proc~json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~get~2->proc~json_get_alloc_string_vec_by_path none~get~2->proc~json_get_array none~get~2->proc~json_get_array_by_path none~get~2->proc~json_get_by_path none~get~2->proc~json_get_integer none~get~2->proc~json_get_integer_by_path none~get~2->proc~json_get_integer_vec_by_path none~get~2->proc~json_get_logical none~get~2->proc~json_get_logical_by_path none~get~2->proc~json_get_logical_vec_by_path none~get~2->proc~json_get_real none~get~2->proc~json_get_real_by_path none~get~2->proc~json_get_real_vec_by_path none~get~2->proc~json_get_string none~get~2->proc~json_get_string_by_path none~get~2->proc~json_get_string_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~load~2 json_core%load none~load~2->proc~json_parse_file none~matrix_info~2 json_core%matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~string_info json_core%string_info none~string_info->proc~json_string_info proc~initialize_json_core initialize_json_core proc~initialize_json_core->proc~json_initialize proc~initialize_json_core_in_file json_file%initialize_json_core_in_file proc~initialize_json_core_in_file->proc~json_initialize proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_file_traverse json_file%json_file_traverse proc~json_file_traverse->proc~json_traverse proc~json_value_is_child_of->proc~json_traverse proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~parse_number->proc~push_char proc~parse_number->proc~string_to_dble proc~parse_number->proc~string_to_int proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path interface~json_core json_core interface~json_core->proc~initialize_json_core none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~initialize->proc~initialize_json_core_in_file proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_alloc_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~string_info proc~json_get_integer_vec->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path->none~get~2 proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_path->none~get_path proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_parse_string->none~deserialize~2 proc~wrap_json_value_get_child_by_name->none~get~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~initialize_json_file initialize_json_file proc~initialize_json_file->none~initialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~initialize proc~initialize_json_file_from_string->none~deserialize proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path interface~json_file json_file interface~json_file->proc~initialize_json_file interface~json_file->proc~initialize_json_file_from_string proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string_v2->none~deserialize proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_value_replace->none~insert_after proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_file_load_from_string->none~deserialize proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_throw_exception ( json , msg , found ) #ifdef __INTEL_COMPILER use ifcore , only : tracebackqq #endif implicit none class ( json_core ), intent ( inout ) :: json character ( kind = CK , len =* ), intent ( in ) :: msg !! the error message logical ( LK ), intent ( inout ), optional :: found !! if the caller is handling the !! exception with an optimal return !! argument. If so, `json%stop_on_error` !! is ignored. logical ( LK ) :: stop_on_error json % exception_thrown = . true . json % err_message = trim ( msg ) stop_on_error = json % stop_on_error . and . . not . present ( found ) if ( stop_on_error ) then #ifdef __INTEL_COMPILER ! for Intel, we raise a traceback and quit call tracebackqq ( string = trim ( msg ), user_exit_code = 0 ) #else write ( error_unit , '(A)' ) 'JSON-Fortran Exception: ' // trim ( msg ) error stop 1 #endif elseif ( json % is_verbose ) then write ( output_unit , '(A)' ) '***********************' write ( output_unit , '(A)' ) 'JSON-Fortran Exception: ' // trim ( msg ) !#if defined __GFORTRAN__ ! call backtrace() ! (have to compile with -fbacktrace -fall-intrinsics flags) !#endif #ifdef __INTEL_COMPILER call tracebackqq ( user_exit_code =- 1 ) ! print a traceback and return #endif write ( output_unit , '(A)' ) '***********************' end if end subroutine json_throw_exception","tags":"","loc":"proc/json_throw_exception.html"},{"title":"json_traverse – JSON-Fortran","text":"private subroutine json_traverse(json, p, traverse_callback) Traverse a JSON structure.\nThis routine calls the user-specified json_traverse_callback_func for each element of the structure. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p procedure( json_traverse_callback_func ) :: traverse_callback Calls proc~~json_traverse~~CallsGraph proc~json_traverse json_core%json_traverse none~throw_exception json_core%throw_exception proc~json_traverse->none~throw_exception proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_traverse~~CalledByGraph proc~json_traverse json_core%json_traverse proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_file_traverse json_file%json_file_traverse proc~json_file_traverse->proc~json_traverse proc~json_value_is_child_of json_core%json_value_is_child_of proc~json_value_is_child_of->proc~json_traverse proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~json_check_all_for_duplicate_keys proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_value_swap json_core%json_value_swap proc~json_value_swap->proc~json_value_is_child_of proc~json_value_validate json_core%json_value_validate proc~json_value_validate->proc~json_check_all_for_duplicate_keys none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_traverse ( json , p , traverse_callback ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p procedure ( json_traverse_callback_func ) :: traverse_callback logical ( LK ) :: finished !! can be used to stop the process if (. not . json % exception_thrown ) call traverse ( p ) contains recursive subroutine traverse ( p ) !! recursive [[json_value]] traversal. implicit none type ( json_value ), pointer , intent ( in ) :: p type ( json_value ), pointer :: element !! a child element integer ( IK ) :: i !! counter integer ( IK ) :: icount !! number of children if ( json % exception_thrown ) return call traverse_callback ( json , p , finished ) ! first call for this object if ( finished ) return !for arrays and objects, have to also call for all children: if ( p % var_type == json_array . or . p % var_type == json_object ) then icount = json % count ( p ) ! number of children if ( icount > 0 ) then element => p % children ! first one do i = 1 , icount ! call for each child if (. not . associated ( element )) then call json % throw_exception ( 'Error in json_traverse: ' // & 'Malformed JSON linked list' ) return end if call traverse ( element ) if ( finished . or . json % exception_thrown ) exit element => element % next end do end if nullify ( element ) end if end subroutine traverse end subroutine json_traverse","tags":"","loc":"proc/json_traverse.html"},{"title":"json_update_integer – JSON-Fortran","text":"private subroutine json_update_integer(json, p, path, val, found) Given the path string, if the variable is present,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Note If the variable is not a scalar, an exception will be thrown. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure integer(kind=IK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. Calls proc~~json_update_integer~~CallsGraph proc~json_update_integer json_core%json_update_integer none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 none~get~2 json_core%get proc~json_update_integer->none~get~2 none~info~2 json_core%info proc~json_update_integer->none~info~2 none~throw_exception json_core%throw_exception proc~json_update_integer->none~throw_exception proc~to_integer json_core%to_integer proc~json_update_integer->proc~to_integer proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~destroy_json_data destroy_json_data proc~to_integer->proc~destroy_json_data interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~throw_exception proc~json_add_string_by_path->proc~json_clear_exceptions none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->none~create_array proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~integer_to_string proc~json_create_by_path->proc~json_clear_exceptions proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~to_string->proc~destroy_json_data proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_update_integer ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable in the structure integer ( IK ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. type ( json_value ), pointer :: p_var integer ( IK ) :: var_type call json % get ( p , path , p_var , found ) if ( found ) then call json % info ( p_var , var_type ) select case ( var_type ) case ( json_null , json_logical , json_integer , json_real , json_string ) call json % to_integer ( p_var , val ) !update the value case default found = . false . call json % throw_exception ( 'Error in json_update_integer: ' // & 'the variable is not a scalar value' , found ) end select else call json % add_by_path ( p , path , val ) !add the new element end if end subroutine json_update_integer","tags":"","loc":"proc/json_update_integer.html"},{"title":"json_update_logical – JSON-Fortran","text":"private subroutine json_update_logical(json, p, path, val, found) Given the path string, if the variable is present,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Note If the variable is not a scalar, an exception will be thrown. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure logical(kind=LK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. Calls proc~~json_update_logical~~CallsGraph proc~json_update_logical json_core%json_update_logical none~add_by_path~2 json_core%add_by_path proc~json_update_logical->none~add_by_path~2 none~get~2 json_core%get proc~json_update_logical->none~get~2 none~info~2 json_core%info proc~json_update_logical->none~info~2 none~throw_exception json_core%throw_exception proc~json_update_logical->none~throw_exception proc~to_logical json_core%to_logical proc~json_update_logical->proc~to_logical proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~destroy_json_data destroy_json_data proc~to_logical->proc~destroy_json_data interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~throw_exception proc~json_add_string_by_path->proc~json_clear_exceptions none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->none~create_array proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~integer_to_string proc~json_create_by_path->proc~json_clear_exceptions proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~to_string->proc~destroy_json_data proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_update_logical ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable in the structure logical ( LK ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. type ( json_value ), pointer :: p_var integer ( IK ) :: var_type call json % get ( p , path , p_var , found ) if ( found ) then call json % info ( p_var , var_type ) select case ( var_type ) case ( json_null , json_logical , json_integer , json_real , json_string ) call json % to_logical ( p_var , val ) !update the value case default found = . false . call json % throw_exception ( 'Error in json_update_logical: ' // & 'the variable is not a scalar value' , found ) end select else call json % add_by_path ( p , path , val ) !add the new element end if end subroutine json_update_logical","tags":"","loc":"proc/json_update_logical.html"},{"title":"json_update_real – JSON-Fortran","text":"private subroutine json_update_real(json, p, path, val, found) Given the path string, if the variable is present,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Note If the variable is not a scalar, an exception will be thrown. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure real(kind=RK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. Calls proc~~json_update_real~~CallsGraph proc~json_update_real json_core%json_update_real none~add_by_path~2 json_core%add_by_path proc~json_update_real->none~add_by_path~2 none~get~2 json_core%get proc~json_update_real->none~get~2 none~info~2 json_core%info proc~json_update_real->none~info~2 none~throw_exception json_core%throw_exception proc~json_update_real->none~throw_exception proc~to_real json_core%to_real proc~json_update_real->proc~to_real proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~destroy_json_data destroy_json_data proc~to_real->proc~destroy_json_data interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~throw_exception proc~json_add_string_by_path->proc~json_clear_exceptions none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->none~create_array proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~integer_to_string proc~json_create_by_path->proc~json_clear_exceptions proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~to_string->proc~destroy_json_data proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_update_real ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable in the structure real ( RK ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. type ( json_value ), pointer :: p_var integer ( IK ) :: var_type call json % get ( p , path , p_var , found ) if ( found ) then call json % info ( p_var , var_type ) select case ( var_type ) case ( json_null , json_logical , json_integer , json_real , json_string ) call json % to_real ( p_var , val ) !update the value case default found = . false . call json % throw_exception ( 'Error in json_update_real: ' // & 'the variable is not a scalar value' , found ) end select else call json % add_by_path ( p , path , val ) !add the new element end if end subroutine json_update_real","tags":"","loc":"proc/json_update_real.html"},{"title":"json_update_real32 – JSON-Fortran","text":"private subroutine json_update_real32(json, p, path, val, found) Alternate version of json_update_real , where val is real32 . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure real(kind=real32), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. Calls proc~~json_update_real32~~CallsGraph proc~json_update_real32 json_core%json_update_real32 none~update~4 json_core%update proc~json_update_real32->none~update~4 proc~json_update_string_name_ascii json_core%json_update_string_name_ascii none~update~4->proc~json_update_string_name_ascii proc~json_update_string_val_ascii json_core%json_update_string_val_ascii none~update~4->proc~json_update_string_val_ascii proc~json_update_string_name_ascii->none~update~4 interface~to_unicode to_unicode proc~json_update_string_name_ascii->interface~to_unicode proc~json_update_string_val_ascii->none~update~4 proc~json_update_string_val_ascii->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_update_real32 ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable in the structure real ( real32 ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. call json % update ( p , path , real ( val , RK ), found ) end subroutine json_update_real32","tags":"","loc":"proc/json_update_real32.html"},{"title":"json_update_string – JSON-Fortran","text":"private subroutine json_update_string(json, p, path, val, found, trim_str, adjustl_str) Given the path string, if the variable is present,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Note If the variable is not a scalar, an exception will be thrown. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure character(kind=CK, len=*), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) Calls proc~~json_update_string~~CallsGraph proc~json_update_string json_core%json_update_string none~add_by_path~2 json_core%add_by_path proc~json_update_string->none~add_by_path~2 none~get~2 json_core%get proc~json_update_string->none~get~2 none~info~2 json_core%info proc~json_update_string->none~info~2 none~throw_exception json_core%throw_exception proc~json_update_string->none~throw_exception proc~to_string json_core%to_string proc~json_update_string->proc~to_string proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~destroy_json_data destroy_json_data proc~to_string->proc~destroy_json_data interface~to_unicode to_unicode proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~throw_exception proc~json_add_string_by_path->proc~json_clear_exceptions none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->none~create_array proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~integer_to_string proc~json_create_by_path->proc~json_clear_exceptions proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~to_string proc~json_value_create_string->proc~json_value_create proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_update_string ( json , p , path , val , found , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable in the structure character ( kind = CK , len =* ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` !! (only used if `val` is present) logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (only used if `val` is present) !! (note that ADJUSTL is done before TRIM) type ( json_value ), pointer :: p_var integer ( IK ) :: var_type call json % get ( p , path , p_var , found ) if ( found ) then call json % info ( p_var , var_type ) select case ( var_type ) case ( json_null , json_logical , json_integer , json_real , json_string ) call json % to_string ( p_var , val , trim_str = trim_str , adjustl_str = adjustl_str ) ! update the value case default found = . false . call json % throw_exception ( 'Error in json_update_string: ' // & 'the variable is not a scalar value' , found ) end select else call json % add_by_path ( p , path , val ) !add the new element end if end subroutine json_update_string","tags":"","loc":"proc/json_update_string.html"},{"title":"json_update_string_name_ascii – JSON-Fortran","text":"private subroutine json_update_string_name_ascii(json, p, path, val, found, trim_str, adjustl_str) Alternate version of json_update_string , where path is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure character(kind=CK, len=*), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) Calls proc~~json_update_string_name_ascii~~CallsGraph proc~json_update_string_name_ascii json_core%json_update_string_name_ascii interface~to_unicode to_unicode proc~json_update_string_name_ascii->interface~to_unicode none~update~4 json_core%update proc~json_update_string_name_ascii->none~update~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~update~4->proc~json_update_string_name_ascii proc~json_update_string_val_ascii json_core%json_update_string_val_ascii none~update~4->proc~json_update_string_val_ascii proc~json_update_string_val_ascii->interface~to_unicode proc~json_update_string_val_ascii->none~update~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_update_string_name_ascii~~CalledByGraph proc~json_update_string_name_ascii json_core%json_update_string_name_ascii none~update~4 json_core%update proc~json_update_string_name_ascii->none~update~4 none~update~4->proc~json_update_string_name_ascii proc~json_update_string_val_ascii json_core%json_update_string_val_ascii none~update~4->proc~json_update_string_val_ascii proc~json_file_update_integer json_file%json_file_update_integer proc~json_file_update_integer->none~update~4 proc~json_file_update_logical json_file%json_file_update_logical proc~json_file_update_logical->none~update~4 proc~json_file_update_real json_file%json_file_update_real proc~json_file_update_real->none~update~4 proc~json_file_update_string json_file%json_file_update_string proc~json_file_update_string->none~update~4 proc~json_update_real32 json_core%json_update_real32 proc~json_update_real32->none~update~4 proc~json_update_string_val_ascii->none~update~4 proc~wrap_json_update_integer json_core%wrap_json_update_integer proc~wrap_json_update_integer->none~update~4 proc~wrap_json_update_logical json_core%wrap_json_update_logical proc~wrap_json_update_logical->none~update~4 proc~wrap_json_update_real json_core%wrap_json_update_real proc~wrap_json_update_real->none~update~4 proc~wrap_json_update_real32 json_core%wrap_json_update_real32 proc~wrap_json_update_real32->none~update~4 proc~wrap_json_update_string json_core%wrap_json_update_string proc~wrap_json_update_string->none~update~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_update_string_name_ascii ( json , p , path , val , found , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable in the structure character ( kind = CK , len =* ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` !! (only used if `val` is present) logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (only used if `val` is present) !! (note that ADJUSTL is done before TRIM) call json % update ( p , to_unicode ( path ), val , found , trim_str , adjustl_str ) end subroutine json_update_string_name_ascii","tags":"","loc":"proc/json_update_string_name_ascii.html"},{"title":"json_update_string_val_ascii – JSON-Fortran","text":"private subroutine json_update_string_val_ascii(json, p, path, val, found, trim_str, adjustl_str) Alternate version of json_update_string , where val is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure character(kind=CDK, len=*), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) Calls proc~~json_update_string_val_ascii~~CallsGraph proc~json_update_string_val_ascii json_core%json_update_string_val_ascii interface~to_unicode to_unicode proc~json_update_string_val_ascii->interface~to_unicode none~update~4 json_core%update proc~json_update_string_val_ascii->none~update~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~update~4->proc~json_update_string_val_ascii proc~json_update_string_name_ascii json_core%json_update_string_name_ascii none~update~4->proc~json_update_string_name_ascii proc~json_update_string_name_ascii->interface~to_unicode proc~json_update_string_name_ascii->none~update~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_update_string_val_ascii~~CalledByGraph proc~json_update_string_val_ascii json_core%json_update_string_val_ascii none~update~4 json_core%update proc~json_update_string_val_ascii->none~update~4 none~update~4->proc~json_update_string_val_ascii proc~json_update_string_name_ascii json_core%json_update_string_name_ascii none~update~4->proc~json_update_string_name_ascii proc~json_file_update_integer json_file%json_file_update_integer proc~json_file_update_integer->none~update~4 proc~json_file_update_logical json_file%json_file_update_logical proc~json_file_update_logical->none~update~4 proc~json_file_update_real json_file%json_file_update_real proc~json_file_update_real->none~update~4 proc~json_file_update_string json_file%json_file_update_string proc~json_file_update_string->none~update~4 proc~json_update_real32 json_core%json_update_real32 proc~json_update_real32->none~update~4 proc~json_update_string_name_ascii->none~update~4 proc~wrap_json_update_integer json_core%wrap_json_update_integer proc~wrap_json_update_integer->none~update~4 proc~wrap_json_update_logical json_core%wrap_json_update_logical proc~wrap_json_update_logical->none~update~4 proc~wrap_json_update_real json_core%wrap_json_update_real proc~wrap_json_update_real->none~update~4 proc~wrap_json_update_real32 json_core%wrap_json_update_real32 proc~wrap_json_update_real32->none~update~4 proc~wrap_json_update_string json_core%wrap_json_update_string proc~wrap_json_update_string->none~update~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_update_string_val_ascii ( json , p , path , val , found , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable in the structure character ( kind = CDK , len =* ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` !! (only used if `val` is present) logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (only used if `val` is present) !! (note that ADJUSTL is done before TRIM) call json % update ( p , path , to_unicode ( val ), found , trim_str , adjustl_str ) end subroutine json_update_string_val_ascii","tags":"","loc":"proc/json_update_string_val_ascii.html"},{"title":"json_value_add_integer – JSON-Fortran","text":"private subroutine json_value_add_integer(json, p, name, val) Add an integer value child to the json_value variable. Note This routine is part of the public API that can be\n used to build a JSON structure using json_value pointers. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name integer(kind=IK), intent(in) :: val Calls proc~~json_value_add_integer~~CallsGraph proc~json_value_add_integer json_core%json_value_add_integer none~add~4 json_core%add proc~json_value_add_integer->none~add~4 none~create_integer json_core%create_integer proc~json_value_add_integer->none~create_integer proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_create_integer json_core%json_value_create_integer none~create_integer->proc~json_value_create_integer proc~wrap_json_value_create_integer json_core%wrap_json_value_create_integer none~create_integer->proc~wrap_json_value_create_integer proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_create json_value_create proc~json_value_create_integer->proc~json_value_create proc~to_integer json_core%to_integer proc~json_value_create_integer->proc~to_integer proc~wrap_json_value_create_integer->none~create_integer proc~wrap_json_value_create_integer->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_data destroy_json_data proc~to_integer->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_add_integer ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name integer ( IK ), intent ( in ) :: val type ( json_value ), pointer :: var !create the variable: call json % create_integer ( var , val , name ) !add it: call json % add ( p , var ) end subroutine json_value_add_integer","tags":"","loc":"proc/json_value_add_integer.html"},{"title":"json_value_add_integer_vec – JSON-Fortran","text":"private subroutine json_value_add_integer_vec(json, p, name, val) Add a integer vector child to the json_value variable. Note This routine is part of the public API that can be\n used to build a JSON structure using json_value pointers. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the variable integer(kind=IK), intent(in), dimension(:) :: val value Calls proc~~json_value_add_integer_vec~~CallsGraph proc~json_value_add_integer_vec json_core%json_value_add_integer_vec none~add~4 json_core%add proc~json_value_add_integer_vec->none~add~4 none~create_array json_core%create_array proc~json_value_add_integer_vec->none~create_array proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_array->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_add_integer_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! name of the variable integer ( IK ), dimension (:), intent ( in ) :: val !! value type ( json_value ), pointer :: var integer ( IK ) :: i !! counter !create a variable as an array: call json % create_array ( var , name ) !populate the array: do i = 1 , size ( val ) call json % add ( var , CK_ '' , val ( i )) end do !add it: call json % add ( p , var ) end subroutine json_value_add_integer_vec","tags":"","loc":"proc/json_value_add_integer_vec.html"},{"title":"json_value_add_logical – JSON-Fortran","text":"private subroutine json_value_add_logical(json, p, name, val) Add a logical value child to the json_value variable. Note This routine is part of the public API that can be\n used to build a JSON structure using json_value pointers. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the variable logical(kind=LK), intent(in) :: val value Calls proc~~json_value_add_logical~~CallsGraph proc~json_value_add_logical json_core%json_value_add_logical none~add~4 json_core%add proc~json_value_add_logical->none~add~4 none~create_logical json_core%create_logical proc~json_value_add_logical->none~create_logical proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_create_logical json_core%json_value_create_logical none~create_logical->proc~json_value_create_logical proc~wrap_json_value_create_logical json_core%wrap_json_value_create_logical none~create_logical->proc~wrap_json_value_create_logical proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_create json_value_create proc~json_value_create_logical->proc~json_value_create proc~to_logical json_core%to_logical proc~json_value_create_logical->proc~to_logical proc~wrap_json_value_create_logical->none~create_logical proc~wrap_json_value_create_logical->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_data destroy_json_data proc~to_logical->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_add_logical ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! name of the variable logical ( LK ), intent ( in ) :: val !! value type ( json_value ), pointer :: var !create the variable: call json % create_logical ( var , val , name ) !add it: call json % add ( p , var ) end subroutine json_value_add_logical","tags":"","loc":"proc/json_value_add_logical.html"},{"title":"json_value_add_logical_vec – JSON-Fortran","text":"private subroutine json_value_add_logical_vec(json, p, name, val) Add a logical vector child to the json_value variable. Note This routine is part of the public API that can be\n used to build a JSON structure using json_value pointers. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the vector logical(kind=LK), intent(in), dimension(:) :: val value Calls proc~~json_value_add_logical_vec~~CallsGraph proc~json_value_add_logical_vec json_core%json_value_add_logical_vec none~add~4 json_core%add proc~json_value_add_logical_vec->none~add~4 none~create_array json_core%create_array proc~json_value_add_logical_vec->none~create_array proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_array->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_add_logical_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! name of the vector logical ( LK ), dimension (:), intent ( in ) :: val !! value type ( json_value ), pointer :: var integer ( IK ) :: i !! counter !create the variable as an array: call json % create_array ( var , name ) !populate the array: do i = 1 , size ( val ) call json % add ( var , CK_ '' , val ( i )) end do !add it: call json % add ( p , var ) end subroutine json_value_add_logical_vec","tags":"","loc":"proc/json_value_add_logical_vec.html"},{"title":"json_value_add_member – JSON-Fortran","text":"private subroutine json_value_add_member(json, p, member) Adds member as a child of p . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p p must be a json_object or a json_array type( json_value ), pointer :: member the child member\nto add to p Calls proc~~json_value_add_member~~CallsGraph proc~json_value_add_member json_core%json_value_add_member none~info~2 json_core%info proc~json_value_add_member->none~info~2 none~throw_exception json_core%throw_exception proc~json_value_add_member->none~throw_exception proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~wrap_json_info_by_path->none~info~2 interface~to_unicode to_unicode proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->none~get~2 proc~json_string_info->proc~json_clear_exceptions proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_add_member ( json , p , member ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! `p` must be a `json_object` !! or a `json_array` type ( json_value ), pointer :: member !! the child member !! to add to `p` integer ( IK ) :: var_type !! variable type of `p` if (. not . json % exception_thrown ) then if ( associated ( p )) then call json % info ( p , var_type = var_type ) select case ( var_type ) case ( json_object , json_array ) ! associate the parent member % parent => p ! add to linked list if ( associated ( p % children )) then p % tail % next => member member % previous => p % tail else p % children => member member % previous => null () !first in the list end if ! new member is now the last one in the list p % tail => member p % n_children = p % n_children + 1 case default call json % throw_exception ( 'Error in json_value_add_member: ' // & 'can only add child to object or array' ) end select else call json % throw_exception ( 'Error in json_value_add_member: ' // & 'the pointer is not associated' ) end if end if end subroutine json_value_add_member","tags":"","loc":"proc/json_value_add_member.html"},{"title":"json_value_add_null – JSON-Fortran","text":"private subroutine json_value_add_null(json, p, name) Add a NULL value child to the json_value variable. Note This routine is part of the public API that can be\n used to build a JSON structure using json_value pointers. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name Calls proc~~json_value_add_null~~CallsGraph proc~json_value_add_null json_core%json_value_add_null none~add~4 json_core%add proc~json_value_add_null->none~add~4 none~create_null json_core%create_null proc~json_value_add_null->none~create_null proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_create json_value_create proc~json_value_create_null->proc~json_value_create proc~to_null json_core%to_null proc~json_value_create_null->proc~to_null proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_null->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_data destroy_json_data proc~to_null->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_add_null ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name type ( json_value ), pointer :: var !create the variable: call json % create_null ( var , name ) !add it: call json % add ( p , var ) end subroutine json_value_add_null","tags":"","loc":"proc/json_value_add_null.html"},{"title":"json_value_add_real – JSON-Fortran","text":"private subroutine json_value_add_real(json, p, name, val) Add a real value child to the json_value variable. Note This routine is part of the public API that can be\n used to build a JSON structure using json_value pointers. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name variable name real(kind=RK), intent(in) :: val real value Calls proc~~json_value_add_real~~CallsGraph proc~json_value_add_real json_core%json_value_add_real none~add~4 json_core%add proc~json_value_add_real->none~add~4 none~create_real~2 json_core%create_real proc~json_value_add_real->none~create_real~2 proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_create_real32 json_core%json_value_create_real32 none~create_real~2->proc~json_value_create_real32 proc~wrap_json_value_create_real32 json_core%wrap_json_value_create_real32 none~create_real~2->proc~wrap_json_value_create_real32 proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_create_real32->none~create_real~2 proc~wrap_json_value_create_real32->none~create_real~2 proc~wrap_json_value_create_real32->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_add_real ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! variable name real ( RK ), intent ( in ) :: val !! real value type ( json_value ), pointer :: var !create the variable: call json % create_real ( var , val , name ) !add it: call json % add ( p , var ) end subroutine json_value_add_real","tags":"","loc":"proc/json_value_add_real.html"},{"title":"json_value_add_real32 – JSON-Fortran","text":"private subroutine json_value_add_real32(json, p, name, val) Alternate version of json_value_add_real where val is real32 . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name variable name real(kind=real32), intent(in) :: val real value Calls proc~~json_value_add_real32~~CallsGraph proc~json_value_add_real32 json_core%json_value_add_real32 none~add~4 json_core%add proc~json_value_add_real32->none~add~4 proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_add_real32 ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! variable name real ( real32 ), intent ( in ) :: val !! real value call json % add ( p , name , real ( val , RK )) end subroutine json_value_add_real32","tags":"","loc":"proc/json_value_add_real32.html"},{"title":"json_value_add_real32_vec – JSON-Fortran","text":"private subroutine json_value_add_real32_vec(json, p, name, val) Alternate version of json_value_add_real_vec where val is real32 . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name real(kind=real32), intent(in), dimension(:) :: val Calls proc~~json_value_add_real32_vec~~CallsGraph proc~json_value_add_real32_vec json_core%json_value_add_real32_vec none~add~4 json_core%add proc~json_value_add_real32_vec->none~add~4 proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_add_real32_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name real ( real32 ), dimension (:), intent ( in ) :: val call json % add ( p , name , real ( val , RK )) end subroutine json_value_add_real32_vec","tags":"","loc":"proc/json_value_add_real32_vec.html"},{"title":"json_value_add_real_vec – JSON-Fortran","text":"private subroutine json_value_add_real_vec(json, p, name, val) Add a real vector child to the json_value variable. Note This routine is part of the public API that can be\n used to build a JSON structure using json_value pointers. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name real(kind=RK), intent(in), dimension(:) :: val Calls proc~~json_value_add_real_vec~~CallsGraph proc~json_value_add_real_vec json_core%json_value_add_real_vec none~add~4 json_core%add proc~json_value_add_real_vec->none~add~4 none~create_array json_core%create_array proc~json_value_add_real_vec->none~create_array proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_array->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_add_real_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name real ( RK ), dimension (:), intent ( in ) :: val type ( json_value ), pointer :: var integer ( IK ) :: i !! counter !create the variable as an array: call json % create_array ( var , name ) !populate the array: do i = 1 , size ( val ) call json % add ( var , CK_ '' , val ( i )) end do !add it: call json % add ( p , var ) end subroutine json_value_add_real_vec","tags":"","loc":"proc/json_value_add_real_vec.html"},{"title":"json_value_add_string – JSON-Fortran","text":"private subroutine json_value_add_string(json, p, name, val, trim_str, adjustl_str) Add a character string child to the json_value variable. Note This routine is part of the public API that can be\n used to build a JSON structure using json_value pointers. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the variable character(kind=CK, len=*), intent(in) :: val value logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val Calls proc~~json_value_add_string~~CallsGraph proc~json_value_add_string json_core%json_value_add_string none~add~4 json_core%add proc~json_value_add_string->none~add~4 none~create_string json_core%create_string proc~json_value_add_string->none~create_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_create json_value_create proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string proc~wrap_json_value_create_string->none~create_string proc~wrap_json_value_create_string->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_data destroy_json_data proc~to_string->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_add_string ( json , p , name , val , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! name of the variable character ( kind = CK , len =* ), intent ( in ) :: val !! value logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` type ( json_value ), pointer :: var !create the variable: call json % create_string ( var , val , name , trim_str , adjustl_str ) !add it: call json % add ( p , var ) end subroutine json_value_add_string","tags":"","loc":"proc/json_value_add_string.html"},{"title":"json_value_add_string_name_ascii – JSON-Fortran","text":"private subroutine json_value_add_string_name_ascii(json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string where name is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable character(kind=CK, len=*), intent(in) :: val value logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val Calls proc~~json_value_add_string_name_ascii~~CallsGraph proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode none~add~4 json_core%add proc~json_value_add_string_name_ascii->none~add~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_add_string_name_ascii~~CalledByGraph proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4 json_core%add proc~json_value_add_string_name_ascii->none~add~4 none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~add~4 none~create json_core%create proc~json_add_integer_vec_by_path->none~create none~info~2 json_core%info proc~json_add_integer_vec_by_path->none~info~2 proc~json_value_replace json_core%json_value_replace proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~add~4 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~add~4 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_value_add_integer json_core%json_value_add_integer proc~json_value_add_integer->none~add~4 proc~json_value_add_integer_vec json_core%json_value_add_integer_vec proc~json_value_add_integer_vec->none~add~4 proc~json_value_add_logical json_core%json_value_add_logical proc~json_value_add_logical->none~add~4 proc~json_value_add_logical_vec json_core%json_value_add_logical_vec proc~json_value_add_logical_vec->none~add~4 proc~json_value_add_null json_core%json_value_add_null proc~json_value_add_null->none~add~4 proc~json_value_add_real json_core%json_value_add_real proc~json_value_add_real->none~add~4 proc~json_value_add_real32 json_core%json_value_add_real32 proc~json_value_add_real32->none~add~4 proc~json_value_add_real32_vec json_core%json_value_add_real32_vec proc~json_value_add_real32_vec->none~add~4 proc~json_value_add_real_vec json_core%json_value_add_real_vec proc~json_value_add_real_vec->none~add~4 proc~json_value_add_string json_core%json_value_add_string proc~json_value_add_string->none~add~4 proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec json_core%json_value_add_string_vec proc~json_value_add_string_vec->none~add~4 proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->none~add~4 proc~parse_array json_core%parse_array proc~parse_array->none~add~4 proc~parse_value json_core%parse_value proc~parse_array->proc~parse_value proc~parse_object json_core%parse_object proc~parse_object->none~add~4 proc~parse_object->proc~parse_object proc~parse_object->proc~parse_value proc~wrap_json_value_add_integer json_core%wrap_json_value_add_integer proc~wrap_json_value_add_integer->none~add~4 proc~wrap_json_value_add_integer_vec json_core%wrap_json_value_add_integer_vec proc~wrap_json_value_add_integer_vec->none~add~4 proc~wrap_json_value_add_logical json_core%wrap_json_value_add_logical proc~wrap_json_value_add_logical->none~add~4 proc~wrap_json_value_add_logical_vec json_core%wrap_json_value_add_logical_vec proc~wrap_json_value_add_logical_vec->none~add~4 proc~wrap_json_value_add_null json_core%wrap_json_value_add_null proc~wrap_json_value_add_null->none~add~4 proc~wrap_json_value_add_real json_core%wrap_json_value_add_real proc~wrap_json_value_add_real->none~add~4 proc~wrap_json_value_add_real32 json_core%wrap_json_value_add_real32 proc~wrap_json_value_add_real32->none~add~4 proc~wrap_json_value_add_real32_vec json_core%wrap_json_value_add_real32_vec proc~wrap_json_value_add_real32_vec->none~add~4 proc~wrap_json_value_add_real_vec json_core%wrap_json_value_add_real_vec proc~wrap_json_value_add_real_vec->none~add~4 proc~wrap_json_value_add_string json_core%wrap_json_value_add_string proc~wrap_json_value_add_string->none~add~4 proc~wrap_json_value_add_string_vec json_core%wrap_json_value_add_string_vec proc~wrap_json_value_add_string_vec->none~add~4 proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~parse_value->proc~parse_array proc~parse_value->proc~parse_object proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~convert->none~info~2 proc~convert->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_add_string_name_ascii ( json , p , name , val , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! name of the variable character ( kind = CK , len =* ), intent ( in ) :: val !! value logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` call json % add ( p , to_unicode ( name ), val , trim_str , adjustl_str ) end subroutine json_value_add_string_name_ascii","tags":"","loc":"proc/json_value_add_string_name_ascii.html"},{"title":"json_value_add_string_val_ascii – JSON-Fortran","text":"private subroutine json_value_add_string_val_ascii(json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string where val is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the variable character(kind=CDK, len=*), intent(in) :: val value logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val Calls proc~~json_value_add_string_val_ascii~~CallsGraph proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii interface~to_unicode to_unicode proc~json_value_add_string_val_ascii->interface~to_unicode none~add~4 json_core%add proc~json_value_add_string_val_ascii->none~add~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_add_string_val_ascii~~CalledByGraph proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4 json_core%add proc~json_value_add_string_val_ascii->none~add~4 none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~add~4 none~create json_core%create proc~json_add_integer_vec_by_path->none~create none~info~2 json_core%info proc~json_add_integer_vec_by_path->none~info~2 proc~json_value_replace json_core%json_value_replace proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~add~4 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~add~4 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_value_add_integer json_core%json_value_add_integer proc~json_value_add_integer->none~add~4 proc~json_value_add_integer_vec json_core%json_value_add_integer_vec proc~json_value_add_integer_vec->none~add~4 proc~json_value_add_logical json_core%json_value_add_logical proc~json_value_add_logical->none~add~4 proc~json_value_add_logical_vec json_core%json_value_add_logical_vec proc~json_value_add_logical_vec->none~add~4 proc~json_value_add_null json_core%json_value_add_null proc~json_value_add_null->none~add~4 proc~json_value_add_real json_core%json_value_add_real proc~json_value_add_real->none~add~4 proc~json_value_add_real32 json_core%json_value_add_real32 proc~json_value_add_real32->none~add~4 proc~json_value_add_real32_vec json_core%json_value_add_real32_vec proc~json_value_add_real32_vec->none~add~4 proc~json_value_add_real_vec json_core%json_value_add_real_vec proc~json_value_add_real_vec->none~add~4 proc~json_value_add_string json_core%json_value_add_string proc~json_value_add_string->none~add~4 proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_vec json_core%json_value_add_string_vec proc~json_value_add_string_vec->none~add~4 proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->none~add~4 proc~parse_array json_core%parse_array proc~parse_array->none~add~4 proc~parse_value json_core%parse_value proc~parse_array->proc~parse_value proc~parse_object json_core%parse_object proc~parse_object->none~add~4 proc~parse_object->proc~parse_object proc~parse_object->proc~parse_value proc~wrap_json_value_add_integer json_core%wrap_json_value_add_integer proc~wrap_json_value_add_integer->none~add~4 proc~wrap_json_value_add_integer_vec json_core%wrap_json_value_add_integer_vec proc~wrap_json_value_add_integer_vec->none~add~4 proc~wrap_json_value_add_logical json_core%wrap_json_value_add_logical proc~wrap_json_value_add_logical->none~add~4 proc~wrap_json_value_add_logical_vec json_core%wrap_json_value_add_logical_vec proc~wrap_json_value_add_logical_vec->none~add~4 proc~wrap_json_value_add_null json_core%wrap_json_value_add_null proc~wrap_json_value_add_null->none~add~4 proc~wrap_json_value_add_real json_core%wrap_json_value_add_real proc~wrap_json_value_add_real->none~add~4 proc~wrap_json_value_add_real32 json_core%wrap_json_value_add_real32 proc~wrap_json_value_add_real32->none~add~4 proc~wrap_json_value_add_real32_vec json_core%wrap_json_value_add_real32_vec proc~wrap_json_value_add_real32_vec->none~add~4 proc~wrap_json_value_add_real_vec json_core%wrap_json_value_add_real_vec proc~wrap_json_value_add_real_vec->none~add~4 proc~wrap_json_value_add_string json_core%wrap_json_value_add_string proc~wrap_json_value_add_string->none~add~4 proc~wrap_json_value_add_string_vec json_core%wrap_json_value_add_string_vec proc~wrap_json_value_add_string_vec->none~add~4 proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~parse_value->proc~parse_array proc~parse_value->proc~parse_object proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~convert->none~info~2 proc~convert->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_add_string_val_ascii ( json , p , name , val , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! name of the variable character ( kind = CDK , len =* ), intent ( in ) :: val !! value logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` call json % add ( p , name , to_unicode ( val ), trim_str , adjustl_str ) end subroutine json_value_add_string_val_ascii","tags":"","loc":"proc/json_value_add_string_val_ascii.html"},{"title":"json_value_add_string_vec – JSON-Fortran","text":"private subroutine json_value_add_string_vec(json, p, name, val, trim_str, adjustl_str) Add a character string vector child to the json_value variable. Note This routine is part of the public API that can be\n used to build a JSON structure using json_value pointers. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name variable name character(kind=CK, len=*), intent(in), dimension(:) :: val array of strings logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element Calls proc~~json_value_add_string_vec~~CallsGraph proc~json_value_add_string_vec json_core%json_value_add_string_vec none~add~4 json_core%add proc~json_value_add_string_vec->none~add~4 none~create_array json_core%create_array proc~json_value_add_string_vec->none~create_array proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_array->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_add_string_vec ( json , p , name , val , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! variable name character ( kind = CK , len =* ), dimension (:), intent ( in ) :: val !! array of strings logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element type ( json_value ), pointer :: var integer ( IK ) :: i !! counter !create the variable as an array: call json % create_array ( var , name ) !populate the array: do i = 1 , size ( val ) call json % add ( var , CK_ '' , val ( i ), trim_str , adjustl_str ) end do !add it: call json % add ( p , var ) end subroutine json_value_add_string_vec","tags":"","loc":"proc/json_value_add_string_vec.html"},{"title":"json_value_add_string_vec_name_ascii – JSON-Fortran","text":"private subroutine json_value_add_string_vec_name_ascii(json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string_vec where name is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name character(kind=CK, len=*), intent(in), dimension(:) :: val logical(kind=LK), intent(in), optional :: trim_str logical(kind=LK), intent(in), optional :: adjustl_str Calls proc~~json_value_add_string_vec_name_ascii~~CallsGraph proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii interface~to_unicode to_unicode proc~json_value_add_string_vec_name_ascii->interface~to_unicode none~add~4 json_core%add proc~json_value_add_string_vec_name_ascii->none~add~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_add_string_vec_name_ascii~~CalledByGraph proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4 json_core%add proc~json_value_add_string_vec_name_ascii->none~add~4 none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~add~4 none~create json_core%create proc~json_add_integer_vec_by_path->none~create none~info~2 json_core%info proc~json_add_integer_vec_by_path->none~info~2 proc~json_value_replace json_core%json_value_replace proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~add~4 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~add~4 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_value_add_integer json_core%json_value_add_integer proc~json_value_add_integer->none~add~4 proc~json_value_add_integer_vec json_core%json_value_add_integer_vec proc~json_value_add_integer_vec->none~add~4 proc~json_value_add_logical json_core%json_value_add_logical proc~json_value_add_logical->none~add~4 proc~json_value_add_logical_vec json_core%json_value_add_logical_vec proc~json_value_add_logical_vec->none~add~4 proc~json_value_add_null json_core%json_value_add_null proc~json_value_add_null->none~add~4 proc~json_value_add_real json_core%json_value_add_real proc~json_value_add_real->none~add~4 proc~json_value_add_real32 json_core%json_value_add_real32 proc~json_value_add_real32->none~add~4 proc~json_value_add_real32_vec json_core%json_value_add_real32_vec proc~json_value_add_real32_vec->none~add~4 proc~json_value_add_real_vec json_core%json_value_add_real_vec proc~json_value_add_real_vec->none~add~4 proc~json_value_add_string json_core%json_value_add_string proc~json_value_add_string->none~add~4 proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec json_core%json_value_add_string_vec proc~json_value_add_string_vec->none~add~4 proc~json_value_add_string_vec_val_ascii->none~add~4 proc~parse_array json_core%parse_array proc~parse_array->none~add~4 proc~parse_value json_core%parse_value proc~parse_array->proc~parse_value proc~parse_object json_core%parse_object proc~parse_object->none~add~4 proc~parse_object->proc~parse_object proc~parse_object->proc~parse_value proc~wrap_json_value_add_integer json_core%wrap_json_value_add_integer proc~wrap_json_value_add_integer->none~add~4 proc~wrap_json_value_add_integer_vec json_core%wrap_json_value_add_integer_vec proc~wrap_json_value_add_integer_vec->none~add~4 proc~wrap_json_value_add_logical json_core%wrap_json_value_add_logical proc~wrap_json_value_add_logical->none~add~4 proc~wrap_json_value_add_logical_vec json_core%wrap_json_value_add_logical_vec proc~wrap_json_value_add_logical_vec->none~add~4 proc~wrap_json_value_add_null json_core%wrap_json_value_add_null proc~wrap_json_value_add_null->none~add~4 proc~wrap_json_value_add_real json_core%wrap_json_value_add_real proc~wrap_json_value_add_real->none~add~4 proc~wrap_json_value_add_real32 json_core%wrap_json_value_add_real32 proc~wrap_json_value_add_real32->none~add~4 proc~wrap_json_value_add_real32_vec json_core%wrap_json_value_add_real32_vec proc~wrap_json_value_add_real32_vec->none~add~4 proc~wrap_json_value_add_real_vec json_core%wrap_json_value_add_real_vec proc~wrap_json_value_add_real_vec->none~add~4 proc~wrap_json_value_add_string json_core%wrap_json_value_add_string proc~wrap_json_value_add_string->none~add~4 proc~wrap_json_value_add_string_vec json_core%wrap_json_value_add_string_vec proc~wrap_json_value_add_string_vec->none~add~4 proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~parse_value->proc~parse_array proc~parse_value->proc~parse_object proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~convert->none~info~2 proc~convert->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_add_string_vec_name_ascii ( json , p , name , val , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name character ( kind = CK , len =* ), dimension (:), intent ( in ) :: val logical ( LK ), intent ( in ), optional :: trim_str logical ( LK ), intent ( in ), optional :: adjustl_str call json % add ( p , to_unicode ( name ), val , trim_str , adjustl_str ) end subroutine json_value_add_string_vec_name_ascii","tags":"","loc":"proc/json_value_add_string_vec_name_ascii.html"},{"title":"json_value_add_string_vec_val_ascii – JSON-Fortran","text":"private subroutine json_value_add_string_vec_val_ascii(json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string_vec where val is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name character(kind=CDK, len=*), intent(in), dimension(:) :: val logical(kind=LK), intent(in), optional :: trim_str logical(kind=LK), intent(in), optional :: adjustl_str Calls proc~~json_value_add_string_vec_val_ascii~~CallsGraph proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii interface~to_unicode to_unicode proc~json_value_add_string_vec_val_ascii->interface~to_unicode none~add~4 json_core%add proc~json_value_add_string_vec_val_ascii->none~add~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_add_string_vec_val_ascii~~CalledByGraph proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4 json_core%add proc~json_value_add_string_vec_val_ascii->none~add~4 none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~add~4 none~create json_core%create proc~json_add_integer_vec_by_path->none~create none~info~2 json_core%info proc~json_add_integer_vec_by_path->none~info~2 proc~json_value_replace json_core%json_value_replace proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~add~4 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~add~4 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_value_add_integer json_core%json_value_add_integer proc~json_value_add_integer->none~add~4 proc~json_value_add_integer_vec json_core%json_value_add_integer_vec proc~json_value_add_integer_vec->none~add~4 proc~json_value_add_logical json_core%json_value_add_logical proc~json_value_add_logical->none~add~4 proc~json_value_add_logical_vec json_core%json_value_add_logical_vec proc~json_value_add_logical_vec->none~add~4 proc~json_value_add_null json_core%json_value_add_null proc~json_value_add_null->none~add~4 proc~json_value_add_real json_core%json_value_add_real proc~json_value_add_real->none~add~4 proc~json_value_add_real32 json_core%json_value_add_real32 proc~json_value_add_real32->none~add~4 proc~json_value_add_real32_vec json_core%json_value_add_real32_vec proc~json_value_add_real32_vec->none~add~4 proc~json_value_add_real_vec json_core%json_value_add_real_vec proc~json_value_add_real_vec->none~add~4 proc~json_value_add_string json_core%json_value_add_string proc~json_value_add_string->none~add~4 proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec json_core%json_value_add_string_vec proc~json_value_add_string_vec->none~add~4 proc~json_value_add_string_vec_name_ascii->none~add~4 proc~parse_array json_core%parse_array proc~parse_array->none~add~4 proc~parse_value json_core%parse_value proc~parse_array->proc~parse_value proc~parse_object json_core%parse_object proc~parse_object->none~add~4 proc~parse_object->proc~parse_object proc~parse_object->proc~parse_value proc~wrap_json_value_add_integer json_core%wrap_json_value_add_integer proc~wrap_json_value_add_integer->none~add~4 proc~wrap_json_value_add_integer_vec json_core%wrap_json_value_add_integer_vec proc~wrap_json_value_add_integer_vec->none~add~4 proc~wrap_json_value_add_logical json_core%wrap_json_value_add_logical proc~wrap_json_value_add_logical->none~add~4 proc~wrap_json_value_add_logical_vec json_core%wrap_json_value_add_logical_vec proc~wrap_json_value_add_logical_vec->none~add~4 proc~wrap_json_value_add_null json_core%wrap_json_value_add_null proc~wrap_json_value_add_null->none~add~4 proc~wrap_json_value_add_real json_core%wrap_json_value_add_real proc~wrap_json_value_add_real->none~add~4 proc~wrap_json_value_add_real32 json_core%wrap_json_value_add_real32 proc~wrap_json_value_add_real32->none~add~4 proc~wrap_json_value_add_real32_vec json_core%wrap_json_value_add_real32_vec proc~wrap_json_value_add_real32_vec->none~add~4 proc~wrap_json_value_add_real_vec json_core%wrap_json_value_add_real_vec proc~wrap_json_value_add_real_vec->none~add~4 proc~wrap_json_value_add_string json_core%wrap_json_value_add_string proc~wrap_json_value_add_string->none~add~4 proc~wrap_json_value_add_string_vec json_core%wrap_json_value_add_string_vec proc~wrap_json_value_add_string_vec->none~add~4 proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~parse_value->proc~parse_array proc~parse_value->proc~parse_object proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~convert->none~info~2 proc~convert->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_add_string_vec_val_ascii ( json , p , name , val , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name character ( kind = CDK , len =* ), dimension (:), intent ( in ) :: val logical ( LK ), intent ( in ), optional :: trim_str logical ( LK ), intent ( in ), optional :: adjustl_str call json % add ( p , name , to_unicode ( val ), trim_str , adjustl_str ) end subroutine json_value_add_string_vec_val_ascii","tags":"","loc":"proc/json_value_add_string_vec_val_ascii.html"},{"title":"json_value_clone_func – JSON-Fortran","text":"private recursive subroutine json_value_clone_func(from, to, parent, previous, tail) Recursive deep copy function called by json_clone . Note If new data is added to the json_value type,\n then this would need to be updated. Type Bound json_core Arguments Type Intent Optional Attributes Name type( json_value ), pointer :: from this is the structure to clone type( json_value ), pointer :: to the clone is put here (it\nmust not already be associated) type( json_value ), optional, pointer :: parent to%parent type( json_value ), optional, pointer :: previous to%previous logical, optional :: tail if “to” is the tail of\nits parent’s children Called by proc~~json_value_clone_func~~CalledByGraph proc~json_value_clone_func json_core%json_value_clone_func proc~json_value_clone_func->proc~json_value_clone_func proc~json_clone json_core%json_clone proc~json_clone->proc~json_value_clone_func proc~assign_json_file json_file%assign_json_file proc~assign_json_file->proc~json_clone Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code recursive subroutine json_value_clone_func ( from , to , parent , previous , tail ) implicit none type ( json_value ), pointer :: from !! this is the structure to clone type ( json_value ), pointer :: to !! the clone is put here (it !! must not already be associated) type ( json_value ), pointer , optional :: parent !! to%parent type ( json_value ), pointer , optional :: previous !! to%previous logical , optional :: tail !! if \"to\" is the tail of !! its parent's children nullify ( to ) if ( associated ( from )) then allocate ( to ) !copy over the data variables: ! [note: the allocate() statements don't work here for the ! deferred-length characters in gfortran-4.9] if ( allocated ( from % name )) to % name = from % name if ( allocated ( from % dbl_value )) allocate ( to % dbl_value , source = from % dbl_value ) if ( allocated ( from % log_value )) allocate ( to % log_value , source = from % log_value ) if ( allocated ( from % str_value )) to % str_value = from % str_value if ( allocated ( from % int_value )) allocate ( to % int_value , source = from % int_value ) to % var_type = from % var_type to % n_children = from % n_children ! allocate and associate the pointers as necessary: if ( present ( parent )) to % parent => parent if ( present ( previous )) to % previous => previous if ( present ( tail )) then if ( tail . and . associated ( to % parent )) to % parent % tail => to end if if ( associated ( from % next ) . and . associated ( to % parent )) then ! we only clone the next entry in an array ! if the parent has also been cloned call json_value_clone_func ( from = from % next ,& to = to % next ,& previous = to ,& parent = to % parent ,& tail = (. not . associated ( from % next % next ))) end if if ( associated ( from % children )) then call json_value_clone_func ( from = from % children ,& to = to % children ,& parent = to ,& tail = (. not . associated ( from % children % next ))) end if end if end subroutine json_value_clone_func","tags":"","loc":"proc/json_value_clone_func.html"},{"title":"json_value_create – JSON-Fortran","text":"private subroutine json_value_create(p) Allocate a json_value pointer variable.\n This should be called before adding data to it. Example type ( json_value ), pointer :: var call json_value_create ( var ) call json % to_real ( var , 1.0_RK ) Notes This routine does not check for exceptions. The pointer should not already be allocated, or a memory leak will occur. Arguments Type Intent Optional Attributes Name type( json_value ), pointer :: p Called by proc~~json_value_create~~CalledByGraph proc~json_value_create json_value_create proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->proc~json_value_create none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~json_value_create proc~parse_value json_core%parse_value proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~json_value_create proc~json_parse_string->proc~parse_value proc~json_value_create_array json_core%json_value_create_array proc~json_value_create_array->proc~json_value_create proc~json_value_create_integer json_core%json_value_create_integer proc~json_value_create_integer->proc~json_value_create proc~json_value_create_logical json_core%json_value_create_logical proc~json_value_create_logical->proc~json_value_create proc~json_value_create_null json_core%json_value_create_null proc~json_value_create_null->proc~json_value_create proc~json_value_create_object json_core%json_value_create_object proc~json_value_create_object->proc~json_value_create proc~json_value_create_real json_core%json_value_create_real proc~json_value_create_real->proc~json_value_create proc~json_value_create_string json_core%json_value_create_string proc~json_value_create_string->proc~json_value_create proc~parse_array json_core%parse_array proc~parse_array->proc~json_value_create proc~parse_array->proc~parse_value proc~parse_object json_core%parse_object proc~parse_object->proc~json_value_create proc~parse_object->proc~parse_object proc~parse_object->proc~parse_value none~create_array json_core%create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array none~create_integer json_core%create_integer none~create_integer->proc~json_value_create_integer proc~wrap_json_value_create_integer json_core%wrap_json_value_create_integer none~create_integer->proc~wrap_json_value_create_integer none~create_logical json_core%create_logical none~create_logical->proc~json_value_create_logical proc~wrap_json_value_create_logical json_core%wrap_json_value_create_logical none~create_logical->proc~wrap_json_value_create_logical none~create_null json_core%create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null none~create_object json_core%create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object none~create_string json_core%create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~parse_value->proc~parse_array proc~parse_value->proc~parse_object none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~convert->none~create_array proc~convert->none~create_null proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create_integer proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create_array proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create_logical proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create_array proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create_array proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create_string proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~create_object none~add_by_path~2 json_core%add_by_path proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~create_object proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~create_object proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~create_object proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~create_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~create_object proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~create_object proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~create_object proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->none~create_object proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->none~create_object proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~create_object proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~json_value_add_integer json_core%json_value_add_integer proc~json_value_add_integer->none~create_integer proc~json_value_add_integer_vec json_core%json_value_add_integer_vec proc~json_value_add_integer_vec->none~create_array proc~json_value_add_logical json_core%json_value_add_logical proc~json_value_add_logical->none~create_logical proc~json_value_add_logical_vec json_core%json_value_add_logical_vec proc~json_value_add_logical_vec->none~create_array proc~json_value_add_null json_core%json_value_add_null proc~json_value_add_null->none~create_null proc~json_value_add_real_vec json_core%json_value_add_real_vec proc~json_value_add_real_vec->none~create_array proc~json_value_add_string json_core%json_value_add_string proc~json_value_add_string->none~create_string proc~json_value_add_string_vec json_core%json_value_add_string_vec proc~json_value_add_string_vec->none~create_array proc~wrap_json_parse_string->none~deserialize~2 proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_integer->none~create_integer proc~wrap_json_value_create_logical->none~create_logical proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->none~create_object proc~wrap_json_value_create_string->none~create_string none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~info~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~info~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~info~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_create ( p ) implicit none type ( json_value ), pointer :: p nullify ( p ) allocate ( p ) end subroutine json_value_create","tags":"","loc":"proc/json_value_create.html"},{"title":"json_value_create_array – JSON-Fortran","text":"private subroutine json_value_create_array(json, p, name) Allocate a json_value pointer and make it an array variable.\n The pointer should not already be allocated. Example type ( json_value ), pointer :: p type ( json_core ) :: json call json % create_array ( p , 'arrayname' ) Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name Calls proc~~json_value_create_array~~CallsGraph proc~json_value_create_array json_core%json_value_create_array proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_create_array~~CalledByGraph proc~json_value_create_array json_core%json_value_create_array none~create_array json_core%create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~convert json_core%convert proc~convert->none~create_array none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create_array none~create json_core%create proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create_array proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create_array proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_integer_vec json_core%json_value_add_integer_vec proc~json_value_add_integer_vec->none~create_array proc~json_value_add_logical_vec json_core%json_value_add_logical_vec proc~json_value_add_logical_vec->none~create_array proc~json_value_add_real_vec json_core%json_value_add_real_vec proc~json_value_add_real_vec->none~create_array proc~json_value_add_string_vec json_core%json_value_add_string_vec proc~json_value_add_string_vec->none~create_array proc~wrap_json_value_create_array->none~create_array proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~convert none~get_child json_core%get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_create_array ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name call json_value_create ( p ) call json % to_array ( p , name ) end subroutine json_value_create_array","tags":"","loc":"proc/json_value_create_array.html"},{"title":"json_value_create_integer – JSON-Fortran","text":"private subroutine json_value_create_integer(json, p, val, name) Allocate a json_value pointer and make it an integer(IK) variable.\n The pointer should not already be allocated. Example type ( json_value ), pointer :: p type ( json_core ) :: json call json % create_integer ( p , 'value' , 1 ) Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(in) :: val character(kind=CK, len=*), intent(in) :: name Calls proc~~json_value_create_integer~~CallsGraph proc~json_value_create_integer json_core%json_value_create_integer proc~json_value_create json_value_create proc~json_value_create_integer->proc~json_value_create proc~to_integer json_core%to_integer proc~json_value_create_integer->proc~to_integer proc~destroy_json_data destroy_json_data proc~to_integer->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_create_integer~~CalledByGraph proc~json_value_create_integer json_core%json_value_create_integer none~create_integer json_core%create_integer none~create_integer->proc~json_value_create_integer proc~wrap_json_value_create_integer json_core%wrap_json_value_create_integer none~create_integer->proc~wrap_json_value_create_integer proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create_integer proc~json_value_add_integer json_core%json_value_add_integer proc~json_value_add_integer->none~create_integer proc~wrap_json_value_create_integer->none~create_integer proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_create_integer ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p integer ( IK ), intent ( in ) :: val character ( kind = CK , len =* ), intent ( in ) :: name call json_value_create ( p ) call json % to_integer ( p , val , name ) end subroutine json_value_create_integer","tags":"","loc":"proc/json_value_create_integer.html"},{"title":"json_value_create_logical – JSON-Fortran","text":"private subroutine json_value_create_logical(json, p, val, name) Allocate a json_value pointer and make it a logical(LK) variable.\n The pointer should not already be allocated. Example type ( json_value ), pointer :: p type ( json_core ) :: json call json % create_logical ( p , 'value' ,. true .) Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p logical(kind=LK), intent(in) :: val variable value character(kind=CK, len=*), intent(in) :: name variable name Calls proc~~json_value_create_logical~~CallsGraph proc~json_value_create_logical json_core%json_value_create_logical proc~json_value_create json_value_create proc~json_value_create_logical->proc~json_value_create proc~to_logical json_core%to_logical proc~json_value_create_logical->proc~to_logical proc~destroy_json_data destroy_json_data proc~to_logical->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_create_logical~~CalledByGraph proc~json_value_create_logical json_core%json_value_create_logical none~create_logical json_core%create_logical none~create_logical->proc~json_value_create_logical proc~wrap_json_value_create_logical json_core%wrap_json_value_create_logical none~create_logical->proc~wrap_json_value_create_logical proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create_logical proc~json_value_add_logical json_core%json_value_add_logical proc~json_value_add_logical->none~create_logical proc~wrap_json_value_create_logical->none~create_logical proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_create_logical ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p logical ( LK ), intent ( in ) :: val !! variable value character ( kind = CK , len =* ), intent ( in ) :: name !! variable name call json_value_create ( p ) call json % to_logical ( p , val , name ) end subroutine json_value_create_logical","tags":"","loc":"proc/json_value_create_logical.html"},{"title":"json_value_create_null – JSON-Fortran","text":"private subroutine json_value_create_null(json, p, name) Allocate a json_value pointer and make it a null variable.\n The pointer should not already be allocated. Example type ( json_value ), pointer :: p type ( json_core ) :: json call json % create_null ( p , 'value' ) Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name Calls proc~~json_value_create_null~~CallsGraph proc~json_value_create_null json_core%json_value_create_null proc~json_value_create json_value_create proc~json_value_create_null->proc~json_value_create proc~to_null json_core%to_null proc~json_value_create_null->proc~to_null proc~destroy_json_data destroy_json_data proc~to_null->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_create_null~~CalledByGraph proc~json_value_create_null json_core%json_value_create_null none~create_null json_core%create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~convert json_core%convert proc~convert->none~create_null none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_value_add_null json_core%json_value_add_null proc~json_value_add_null->none~create_null proc~wrap_json_value_create_null->none~create_null proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~convert none~get_child json_core%get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_create_null ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name call json_value_create ( p ) call json % to_null ( p , name ) end subroutine json_value_create_null","tags":"","loc":"proc/json_value_create_null.html"},{"title":"json_value_create_object – JSON-Fortran","text":"private subroutine json_value_create_object(json, p, name) Allocate a json_value pointer and make it an object variable.\n The pointer should not already be allocated. Example type ( json_value ), pointer :: p type ( json_core ) :: json call json % create_object ( p , 'objectname' ) Note The name is not significant for the root structure or an array element.\n In those cases, an empty string can be used. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name Calls proc~~json_value_create_object~~CallsGraph proc~json_value_create_object json_core%json_value_create_object proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_create_object~~CalledByGraph proc~json_value_create_object json_core%json_value_create_object none~create_object json_core%create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~convert json_core%convert proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~create_object none~add_by_path~2 json_core%add_by_path proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~create_object proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~create_object proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~create_object proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~create_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~create_object proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~create_object proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~create_object proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->none~create_object proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->none~create_object proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~create_object proc~json_file_add_string_vec->none~add_by_path~2 proc~wrap_json_value_create_object->none~create_object proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~convert none~get_child json_core%get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_create_object ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name call json_value_create ( p ) call json % to_object ( p , name ) end subroutine json_value_create_object","tags":"","loc":"proc/json_value_create_object.html"},{"title":"json_value_create_real – JSON-Fortran","text":"private subroutine json_value_create_real(json, p, val, name) Allocate a json_value pointer and make it a real(RK) variable.\n The pointer should not already be allocated. Example type ( json_value ), pointer :: p type ( json_core ) :: json call json % create_real ( p , 'value' , 1.0_RK ) Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=RK), intent(in) :: val character(kind=CK, len=*), intent(in) :: name Calls proc~~json_value_create_real~~CallsGraph proc~json_value_create_real json_core%json_value_create_real proc~json_value_create json_value_create proc~json_value_create_real->proc~json_value_create proc~to_real json_core%to_real proc~json_value_create_real->proc~to_real proc~destroy_json_data destroy_json_data proc~to_real->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_create_real ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p real ( RK ), intent ( in ) :: val character ( kind = CK , len =* ), intent ( in ) :: name call json_value_create ( p ) call json % to_real ( p , val , name ) end subroutine json_value_create_real","tags":"","loc":"proc/json_value_create_real.html"},{"title":"json_value_create_real32 – JSON-Fortran","text":"private subroutine json_value_create_real32(json, p, val, name) Alternate version of json_value_create_real where val=real32. Note The value is converted into a real(RK) variable internally. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=real32), intent(in) :: val character(kind=CK, len=*), intent(in) :: name Calls proc~~json_value_create_real32~~CallsGraph proc~json_value_create_real32 json_core%json_value_create_real32 none~create_real~2 json_core%create_real proc~json_value_create_real32->none~create_real~2 none~create_real~2->proc~json_value_create_real32 proc~wrap_json_value_create_real32 json_core%wrap_json_value_create_real32 none~create_real~2->proc~wrap_json_value_create_real32 proc~wrap_json_value_create_real32->none~create_real~2 interface~to_unicode to_unicode proc~wrap_json_value_create_real32->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_create_real32~~CalledByGraph proc~json_value_create_real32 json_core%json_value_create_real32 none~create_real~2 json_core%create_real proc~json_value_create_real32->none~create_real~2 none~create_real~2->proc~json_value_create_real32 proc~wrap_json_value_create_real32 json_core%wrap_json_value_create_real32 none~create_real~2->proc~wrap_json_value_create_real32 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create_real~2 proc~json_value_add_real json_core%json_value_add_real proc~json_value_add_real->none~create_real~2 proc~wrap_json_value_create_real json_core%wrap_json_value_create_real proc~wrap_json_value_create_real->none~create_real~2 proc~wrap_json_value_create_real32->none~create_real~2 proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_create_real32 ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p real ( real32 ), intent ( in ) :: val character ( kind = CK , len =* ), intent ( in ) :: name call json % create_real ( p , real ( val , RK ), name ) end subroutine json_value_create_real32","tags":"","loc":"proc/json_value_create_real32.html"},{"title":"json_value_create_string – JSON-Fortran","text":"private subroutine json_value_create_string(json, p, val, name, trim_str, adjustl_str) Allocate a json_value pointer and make it a string variable.\n The pointer should not already be allocated. Example type ( json_value ), pointer :: p type ( json_core ) :: json call json % create_string ( p , 'value' , 'hello' ) Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: val character(kind=CK, len=*), intent(in) :: name logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val Calls proc~~json_value_create_string~~CallsGraph proc~json_value_create_string json_core%json_value_create_string proc~json_value_create json_value_create proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string proc~destroy_json_data destroy_json_data proc~to_string->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_create_string~~CalledByGraph proc~json_value_create_string json_core%json_value_create_string none~create_string json_core%create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create_string proc~json_value_add_string json_core%json_value_add_string proc~json_value_add_string->none~create_string proc~wrap_json_value_create_string->none~create_string proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_create_string ( json , p , val , name , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: val character ( kind = CK , len =* ), intent ( in ) :: name logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` call json_value_create ( p ) call json % to_string ( p , val , name , trim_str , adjustl_str ) end subroutine json_value_create_string","tags":"","loc":"proc/json_value_create_string.html"},{"title":"json_value_destroy – JSON-Fortran","text":"private pure recursive subroutine json_value_destroy(json, p, destroy_next) Destroy a json_value linked-list structure. Note The original FSON version of this\n routine was not properly freeing the memory.\n It was rewritten. Note This routine destroys this variable, it’s children, and\n (if destroy_next is true) the subsequent elements in\n an object or array. It does not destroy the parent or\n previous elements. Note There is some protection here to enable destruction of\n improperly-created linked lists. However, likely there\n are cases not handled. Use the json_value_validate method to validate a JSON structure that was manually\n created using json_value pointers. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p variable to destroy logical(kind=LK), intent(in), optional :: destroy_next if true, then p%next is also destroyed (default is true) Calls proc~~json_value_destroy~~CallsGraph proc~json_value_destroy json_core%json_value_destroy none~destroy~3 json_core%destroy proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data none~destroy~3->proc~json_value_destroy proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_destroy~~CalledByGraph proc~json_value_destroy json_core%json_value_destroy none~destroy~3 json_core%destroy proc~json_value_destroy->none~destroy~3 none~destroy~3->proc~json_value_destroy proc~json_file_destroy json_file%json_file_destroy proc~json_file_destroy->none~destroy~3 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~destroy~3 none~valid_path~2 json_core%valid_path proc~json_file_valid_path_op->none~valid_path~2 proc~json_value_remove json_core%json_value_remove proc~json_value_remove->none~destroy~3 proc~parse_array json_core%parse_array proc~parse_array->none~destroy~3 proc~parse_value json_core%parse_value proc~parse_array->proc~parse_value proc~parse_object json_core%parse_object proc~parse_object->none~destroy~3 proc~parse_object->proc~parse_object proc~parse_object->proc~parse_value proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->proc~json_file_destroy none~deserialize json_file%deserialize proc~assign_string_to_json_file->none~deserialize proc~finalize_json_file finalize_json_file proc~finalize_json_file->proc~json_file_destroy proc~json_file_add json_file%json_file_add proc~json_file_add->proc~json_file_destroy proc~json_file_load json_file%json_file_load proc~json_file_load->proc~json_file_destroy none~load~2 json_core%load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->proc~json_file_destroy none~deserialize~2 json_core%deserialize proc~json_file_load_from_string->none~deserialize~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->proc~json_value_remove none~get~2 json_core%get proc~json_value_remove_if_present->none~get~2 proc~json_value_replace json_core%json_value_replace proc~json_value_replace->proc~json_value_remove none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~parse_value->proc~parse_array proc~parse_value->proc~parse_object none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present proc~convert json_core%convert proc~convert->proc~json_value_replace none~info~2 json_core%info proc~convert->none~info~2 proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->proc~json_value_replace none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->proc~json_value_replace proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2->proc~json_parse_file proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~convert none~get_child json_core%get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_file_load_from_string->none~deserialize proc~wrap_json_value_remove_if_present->none~remove_if_present interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_parse_string->none~deserialize~2 none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_file_remove->none~remove proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~string_info->proc~json_string_info none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure recursive subroutine json_value_destroy ( json , p , destroy_next ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! variable to destroy logical ( LK ), intent ( in ), optional :: destroy_next !! if true, then `p%next` !! is also destroyed (default is true) logical ( LK ) :: des_next !! local copy of `destroy_next` !! optional argument type ( json_value ), pointer :: child !! for getting child elements logical :: circular !! to check to malformed linked lists if ( associated ( p )) then if ( present ( destroy_next )) then des_next = destroy_next else des_next = . true . end if if ( allocated ( p % name )) deallocate ( p % name ) call destroy_json_data ( p ) if ( associated ( p % next )) then ! check for circular references: if ( associated ( p , p % next )) nullify ( p % next ) end if if ( associated ( p % children )) then do while ( p % n_children > 0 ) child => p % children if ( associated ( child )) then p % children => p % children % next p % n_children = p % n_children - 1 ! check children for circular references: circular = ( associated ( p % children ) . and . & associated ( p % children , child )) call json % destroy ( child , destroy_next = . false .) if ( circular ) exit else ! it is a malformed JSON object. But, we will ! press ahead with the destroy process, since ! otherwise, there would be no way to destroy it. exit end if end do nullify ( p % children ) nullify ( child ) end if if ( associated ( p % next ) . and . des_next ) call json % destroy ( p % next ) nullify ( p % previous ) nullify ( p % parent ) nullify ( p % tail ) if ( associated ( p )) deallocate ( p ) nullify ( p ) end if end subroutine json_value_destroy","tags":"","loc":"proc/json_value_destroy.html"},{"title":"json_value_get_child – JSON-Fortran","text":"private subroutine json_value_get_child(json, p, child) Returns pointer to the first child of the object\n(or null() if it is not associated). Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p object or array JSON data type( json_value ), pointer :: child pointer to the child Calls proc~~json_value_get_child~~CallsGraph proc~json_value_get_child json_core%json_value_get_child none~throw_exception json_core%throw_exception proc~json_value_get_child->none~throw_exception proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_get_child~~CalledByGraph proc~json_value_get_child json_core%json_value_get_child none~get_child json_core%get_child none~get_child->proc~json_value_get_child proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_matrix_info json_core%json_matrix_info proc~json_matrix_info->none~get_child none~info~2 json_core%info proc~json_matrix_info->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info~2 json_core%matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_matrix_info_by_path->none~get~2 proc~json_value_replace json_core%json_value_replace proc~json_value_replace->none~insert_after proc~wrap_json_matrix_info_by_path->none~matrix_info~2 none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~convert->proc~json_value_replace proc~convert->none~info~2 proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_member_by_path->none~info~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_by_path->none~info~2 proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~info~2 proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_by_path->none~info~2 proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~info~2 proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_file_variable_matrix_info->none~matrix_info none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_get_child ( json , p , child ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! object or array JSON data type ( json_value ), pointer :: child !! pointer to the child if ( associated ( p )) then child => p % children else nullify ( child ) call json % throw_exception ( 'Error in json_value_get_child: ' // & 'pointer is not associated.' ) end if end subroutine json_value_get_child","tags":"","loc":"proc/json_value_get_child.html"},{"title":"json_value_get_child_by_index – JSON-Fortran","text":"private subroutine json_value_get_child_by_index(json, p, idx, child, found) Returns a child in the object or array given the index. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p object or array JSON data integer(kind=IK), intent(in) :: idx index of the child\n(this is a 1-based Fortran\nstyle array index). type( json_value ), pointer :: child pointer to the child logical(kind=LK), intent(out), optional :: found true if the value was found\n(if not present, an exception\nwill be thrown if it was not\nfound. If present and not\nfound, no exception will be\nthrown). Calls proc~~json_value_get_child_by_index~~CallsGraph proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~throw_exception json_core%throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_get_child_by_index~~CalledByGraph proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child json_core%get_child none~get_child->proc~json_value_get_child_by_index proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_matrix_info json_core%json_matrix_info proc~json_matrix_info->none~get_child none~info~2 json_core%info proc~json_matrix_info->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info~2 json_core%matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_matrix_info_by_path->none~get~2 proc~json_value_replace json_core%json_value_replace proc~json_value_replace->none~insert_after proc~wrap_json_matrix_info_by_path->none~matrix_info~2 none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~convert->proc~json_value_replace proc~convert->none~info~2 proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_member_by_path->none~info~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_by_path->none~info~2 proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~info~2 proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_by_path->none~info~2 proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~info~2 proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_file_variable_matrix_info->none~matrix_info none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_get_child_by_index ( json , p , idx , child , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! object or array JSON data integer ( IK ), intent ( in ) :: idx !! index of the child !! (this is a 1-based Fortran !! style array index). type ( json_value ), pointer :: child !! pointer to the child logical ( LK ), intent ( out ), optional :: found !! true if the value was found !! (if not present, an exception !! will be thrown if it was not !! found. If present and not !! found, no exception will be !! thrown). integer ( IK ) :: i !! counter nullify ( child ) if (. not . json % exception_thrown ) then if ( associated ( p % children )) then ! If getting first or last child, we can do this quickly. ! Otherwise, traverse the list. if ( idx == 1 ) then child => p % children ! first one elseif ( idx == p % n_children ) then if ( associated ( p % tail )) then child => p % tail ! last one else call json % throw_exception ( 'Error in json_value_get_child_by_index:' // & ' child%tail is not associated.' , found ) end if elseif ( idx < 1 . or . idx > p % n_children ) then call json % throw_exception ( 'Error in json_value_get_child_by_index:' // & ' idx is out of range.' , found ) else ! if idx is closer to the end, we traverse the list backward from tail, ! otherwise we traverse it forward from children: if ( p % n_children - idx < idx ) then ! traverse backward child => p % tail do i = 1 , p % n_children - idx if ( associated ( child % previous )) then child => child % previous else call json % throw_exception ( 'Error in json_value_get_child_by_index:' // & ' child%previous is not associated.' , found ) nullify ( child ) exit end if end do else ! traverse forward child => p % children do i = 1 , idx - 1 if ( associated ( child % next )) then child => child % next else call json % throw_exception ( 'Error in json_value_get_child_by_index:' // & ' child%next is not associated.' , found ) nullify ( child ) exit end if end do end if end if else call json % throw_exception ( 'Error in json_value_get_child_by_index:' // & ' p%children is not associated.' , found ) end if ! found output: if ( json % exception_thrown ) then if ( present ( found )) then call json % clear_exceptions () found = . false . end if else if ( present ( found )) found = . true . end if else if ( present ( found )) found = . false . end if end subroutine json_value_get_child_by_index","tags":"","loc":"proc/json_value_get_child_by_index.html"},{"title":"json_value_get_child_by_name – JSON-Fortran","text":"private subroutine json_value_get_child_by_name(json, p, name, child, found) Returns a child in the object or array given the name string. The name search can be case-sensitive or not, and can have significant trailing\n whitespace or not, depending on the settings in the json_core class. Note The name input is not a path, and is not parsed like it is in json_get_by_path . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CK, len=*), intent(in) :: name the name of a child of p type( json_value ), pointer :: child pointer to the child logical(kind=LK), intent(out), optional :: found true if the value was found\n(if not present, an exception\nwill be thrown if it was not\nfound. If present and not\nfound, no exception will be\nthrown). Calls proc~~json_value_get_child_by_name~~CallsGraph proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~throw_exception json_core%throw_exception proc~json_value_get_child_by_name->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_get_child_by_name~~CalledByGraph proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child json_core%get_child none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_matrix_info json_core%json_matrix_info proc~json_matrix_info->none~get_child none~info~2 json_core%info proc~json_matrix_info->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info~2 json_core%matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_matrix_info_by_path->none~get~2 proc~json_value_replace json_core%json_value_replace proc~json_value_replace->none~insert_after proc~wrap_json_matrix_info_by_path->none~matrix_info~2 none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~convert->proc~json_value_replace proc~convert->none~info~2 proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_member_by_path->none~info~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_by_path->none~info~2 proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~info~2 proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_by_path->none~info~2 proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~info~2 proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_file_variable_matrix_info->none~matrix_info none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_get_child_by_name ( json , p , name , child , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p character ( kind = CK , len =* ), intent ( in ) :: name !! the name of a child of `p` type ( json_value ), pointer :: child !! pointer to the child logical ( LK ), intent ( out ), optional :: found !! true if the value was found !! (if not present, an exception !! will be thrown if it was not !! found. If present and not !! found, no exception will be !! thrown). integer ( IK ) :: i , n_children logical :: error nullify ( child ) if (. not . json % exception_thrown ) then if ( associated ( p )) then error = . true . ! will be false if it is found if ( p % var_type == json_object ) then n_children = json % count ( p ) child => p % children !start with first one do i = 1 , n_children if (. not . associated ( child )) then call json % throw_exception (& 'Error in json_value_get_child_by_name: ' // & 'Malformed JSON linked list' , found ) exit end if if ( allocated ( child % name )) then !name string matching routine: if ( json % name_equal ( child , name )) then error = . false . exit end if end if child => child % next end do end if if ( error ) then !did not find anything: call json % throw_exception (& 'Error in json_value_get_child_by_name: ' // & 'child variable ' // trim ( name ) // ' was not found.' , found ) nullify ( child ) end if else call json % throw_exception (& 'Error in json_value_get_child_by_name: ' // & 'pointer is not associated.' , found ) end if ! found output: if ( json % exception_thrown ) then if ( present ( found )) then call json % clear_exceptions () found = . false . end if else if ( present ( found )) found = . true . end if else if ( present ( found )) found = . false . end if end subroutine json_value_get_child_by_name","tags":"","loc":"proc/json_value_get_child_by_name.html"},{"title":"json_value_insert_after – JSON-Fortran","text":"private subroutine json_value_insert_after(json, p, element) Inserts element after p , and updates the JSON structure accordingly. Example program test use json_module implicit none logical ( json_LK ) :: found type ( json_core ) :: json type ( json_value ), pointer :: p , new , element call json % load ( file = 'myfile.json' , p = p ) call json % get ( p , 'x(3)' , element , found ) ! get pointer to an array element in the file call json % create_integer ( new , 1 , '' ) ! create a new element call json % insert_after ( element , new ) ! insert new element after x(3) call json % print ( p , 'myfile2.json' ) ! write it to a file call json % destroy ( p ) ! cleanup end program test Details This routine can be used to insert a new element (or set of elements)\n into an array or object at a specific index.\n See json_value_insert_after_child_by_index Children and subsequent elements of element are carried along. If the inserted elements are part of an existing list, then\n they are removed from that list. p\n [1] - [2] - [3] - [4]\n |\n [5] - [6] - [7] n=3 elements inserted\n element last\n\n Result is:\n\n [1] - [2] - [5] - [6] - [7] - [3] - [4] Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a value from a JSON structure\n(presumably, this is a child of\nan object or array). type( json_value ), pointer :: element the element to insert after p Called by proc~~json_value_insert_after~~CalledByGraph proc~json_value_insert_after json_core%json_value_insert_after none~insert_after json_core%insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~insert_after none~get_child json_core%get_child proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_replace json_core%json_value_replace proc~json_value_replace->none~insert_after proc~convert json_core%convert proc~convert->proc~json_value_replace none~info~2 json_core%info proc~convert->none~info~2 proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->proc~json_value_replace none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->proc~json_value_replace proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->none~get_child proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_insert_after ( json , p , element ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! a value from a JSON structure !! (presumably, this is a child of !! an object or array). type ( json_value ), pointer :: element !! the element to insert after `p` type ( json_value ), pointer :: parent !! the parent of `p` type ( json_value ), pointer :: next !! temp pointer for traversing structure type ( json_value ), pointer :: last !! the last of the items being inserted integer :: n !! number of items being inserted if (. not . json % exception_thrown ) then parent => p % parent ! set first parent of inserted list: element % parent => parent ! Count the number of inserted elements. ! and set their parents. n = 1 ! initialize counter next => element % next last => element do if (. not . associated ( next )) exit n = n + 1 next % parent => parent last => next next => next % next end do if ( associated ( parent )) then ! update parent's child counter: parent % n_children = parent % n_children + n ! if p is last of parents children then ! also have to update parent tail pointer: if ( associated ( parent % tail , p )) then parent % tail => last end if end if if ( associated ( element % previous )) then ! element is apparently part of an existing list, ! so have to update that as well. if ( associated ( element % previous % parent )) then element % previous % parent % n_children = & element % previous % parent % n_children - n element % previous % parent % tail => & element % previous ! now the last one in the list else ! this would be a memory leak if the previous entries ! are not otherwise being pointed too ! [throw an error in this case???] end if !remove element from the other list: element % previous % next => null () end if element % previous => p if ( associated ( p % next )) then ! if there are any in the list after p: last % next => p % next last % next % previous => element else last % next => null () end if p % next => element end if end subroutine json_value_insert_after","tags":"","loc":"proc/json_value_insert_after.html"},{"title":"json_value_insert_after_child_by_index – JSON-Fortran","text":"private subroutine json_value_insert_after_child_by_index(json, p, idx, element) Inserts element after the idx -th child of p ,\nand updates the JSON structure accordingly. This is just\na wrapper for json_value_insert_after . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a JSON object or array. integer(kind=IK), intent(in) :: idx the index of the child of p to\ninsert the new element after\n(this is a 1-based Fortran\nstyle array index) type( json_value ), pointer :: element the element to insert Calls proc~~json_value_insert_after_child_by_index~~CallsGraph proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~get_child json_core%get_child proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after none~throw_exception json_core%throw_exception proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal interface~to_unicode to_unicode proc~wrap_json_value_get_child_by_name->interface~to_unicode none~get~2 json_core%get proc~wrap_json_value_get_child_by_name->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->proc~flag_not_found proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~get_child proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_insert_after_child_by_index~~CalledByGraph proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after none~get_child json_core%get_child proc~json_value_insert_after_child_by_index->none~get_child none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_replace json_core%json_value_replace proc~json_value_replace->none~insert_after proc~convert json_core%convert proc~convert->proc~json_value_replace none~info~2 json_core%info proc~convert->none~info~2 proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->proc~json_value_replace none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->proc~json_value_replace proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->none~get_child proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_insert_after_child_by_index ( json , p , idx , element ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! a JSON object or array. integer ( IK ), intent ( in ) :: idx !! the index of the child of `p` to !! insert the new element after !! (this is a 1-based Fortran !! style array index) type ( json_value ), pointer :: element !! the element to insert type ( json_value ), pointer :: tmp !! for getting the `idx`-th child of `p` if (. not . json % exception_thrown ) then ! get the idx-th child of p: call json % get_child ( p , idx , tmp ) ! call json_value_insert_after: if (. not . json % exception_thrown ) call json % insert_after ( tmp , element ) end if end subroutine json_value_insert_after_child_by_index","tags":"","loc":"proc/json_value_insert_after_child_by_index.html"},{"title":"json_value_print – JSON-Fortran","text":"private recursive subroutine json_value_print(json, p, iunit, str, indent, need_comma, colon, is_array_element, is_compressed_vector, iloc) Print the JSON structure to a string or a file. Notes This is an internal routine called by the various wrapper routines. The reason the str argument is non-optional is because of a\n bug in v4.9 of the gfortran compiler. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p integer(kind=IK), intent(in) :: iunit file unit to write to (the\nfile is assumed to be open) character(kind=CK, len=:), intent(inout), allocatable :: str if iunit==unit2str (-1) then\nthe structure is printed to this\nstring rather than a file. This mode\nis used by json_value_to_string . integer(kind=IK), intent(in), optional :: indent indention level logical(kind=LK), intent(in), optional :: need_comma if it needs a comma after it logical(kind=LK), intent(in), optional :: colon if the colon was just written logical(kind=LK), intent(in), optional :: is_array_element if this is an array element logical(kind=LK), intent(in), optional :: is_compressed_vector if True, this is an element\nfrom an array being printed\non one line [default is False] integer(kind=IK), intent(inout) :: iloc current index in str . should be set to 0 initially.\n[only used when str is used.] Calls proc~~json_value_print~~CallsGraph proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_value_print none~throw_exception json_core%throw_exception proc~json_value_print->none~throw_exception proc~escape_string escape_string proc~json_value_print->proc~escape_string proc~integer_to_string integer_to_string proc~json_value_print->proc~integer_to_string proc~json_failed json_core%json_failed proc~json_value_print->proc~json_failed proc~json_is_vector json_core%json_is_vector proc~json_value_print->proc~json_is_vector proc~real_to_string real_to_string proc~json_value_print->proc~real_to_string proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_is_vector->none~throw_exception none~info~2 json_core%info proc~json_is_vector->none~info~2 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception proc~convert->none~info~2 none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~throw_exception proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_string_info->proc~json_clear_exceptions proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_print~~CalledByGraph proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_value_print proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code recursive subroutine json_value_print ( json , p , iunit , str , indent ,& need_comma , colon , is_array_element ,& is_compressed_vector , iloc ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p integer ( IK ), intent ( in ) :: iunit !! file unit to write to (the !! file is assumed to be open) integer ( IK ), intent ( in ), optional :: indent !! indention level logical ( LK ), intent ( in ), optional :: is_array_element !! if this is an array element logical ( LK ), intent ( in ), optional :: need_comma !! if it needs a comma after it logical ( LK ), intent ( in ), optional :: colon !! if the colon was just written character ( kind = CK , len = :), intent ( inout ), allocatable :: str !! if `iunit==unit2str` (-1) then !! the structure is printed to this !! string rather than a file. This mode !! is used by [[json_value_to_string]]. integer ( IK ), intent ( inout ) :: iloc !! current index in `str`. should be set to 0 initially. !! [only used when `str` is used.] logical ( LK ), intent ( in ), optional :: is_compressed_vector !! if True, this is an element !! from an array being printed !! on one line [default is False] character ( kind = CK , len = max_numeric_str_len ) :: tmp !! for value to string conversions character ( kind = CK , len = :), allocatable :: s_indent !! the string of spaces for !! indenting (see `tab` and `spaces`) character ( kind = CK , len = :), allocatable :: s !! the string appended to `str` type ( json_value ), pointer :: element !! for getting children integer ( IK ) :: tab !! number of `tabs` for indenting integer ( IK ) :: spaces !! number of spaces for indenting integer ( IK ) :: i !! counter integer ( IK ) :: count !! number of children logical ( LK ) :: print_comma !! if the comma will be printed after the value logical ( LK ) :: write_file !! if we are writing to a file logical ( LK ) :: write_string !! if we are writing to a string logical ( LK ) :: is_array !! if this is an element in an array logical ( LK ) :: is_vector !! if all elements of a vector !! are scalars of the same type character ( kind = CK , len = :), allocatable :: str_escaped !! escaped version of !! `name` or `str_value` if (. not . json % exception_thrown ) then if (. not . associated ( p )) then ! note: a null() pointer will trigger this error. ! However, if the pointer is undefined, then this will ! crash (if this wasn't here it would crash below when ! we try to access the contents) call json % throw_exception ( 'Error in json_value_print: ' // & 'the pointer is not associated' ) return end if if ( present ( is_compressed_vector )) then is_vector = is_compressed_vector else is_vector = . false . end if !whether to write a string or a file (one or the other): write_string = ( iunit == unit2str ) write_file = . not . write_string !if the comma will be printed after the value ! [comma not printed for the last elements] if ( present ( need_comma )) then print_comma = need_comma else print_comma = . false . end if !number of \"tabs\" to indent: if ( present ( indent ) . and . . not . json % no_whitespace ) then tab = indent else tab = 0 end if !convert to number of spaces: spaces = tab * json % spaces_per_tab !if this is an element in an array: if ( present ( is_array_element )) then is_array = is_array_element else is_array = . false . end if !if the colon was the last thing written if ( present ( colon )) then s_indent = CK_ '' else s_indent = repeat ( space , spaces ) end if select case ( p % var_type ) case ( json_object ) count = json % count ( p ) if ( count == 0 ) then !special case for empty object s = s_indent // start_object // end_object call write_it ( comma = print_comma ) else s = s_indent // start_object call write_it () !if an object is in an array, there is an extra tab: if ( is_array ) then if ( . not . json % no_whitespace ) tab = tab + 1 spaces = tab * json % spaces_per_tab end if nullify ( element ) element => p % children do i = 1 , count if (. not . associated ( element )) then call json % throw_exception ( 'Error in json_value_print: ' // & 'Malformed JSON linked list' ) return end if ! print the name if ( allocated ( element % name )) then call escape_string ( element % name , str_escaped , json % escape_solidus ) if ( json % no_whitespace ) then !compact printing - no extra space s = repeat ( space , spaces ) // quotation_mark // & str_escaped // quotation_mark // colon_char call write_it ( advance = . false .) else s = repeat ( space , spaces ) // quotation_mark // & str_escaped // quotation_mark // colon_char // space call write_it ( advance = . false .) end if else call json % throw_exception ( 'Error in json_value_print:' // & ' element%name not allocated' ) nullify ( element ) return end if ! recursive print of the element call json % json_value_print ( element , iunit = iunit , indent = tab + 1_IK , & need_comma = i < count , colon = . true ., str = str , iloc = iloc ) if ( json % exception_thrown ) return ! get the next child the list: element => element % next end do ! [one fewer tab if it isn't an array element] if (. not . is_array ) then s = repeat ( space , max ( 0_IK , spaces - json % spaces_per_tab )) // end_object else s = s_indent // end_object end if call write_it ( comma = print_comma ) nullify ( element ) end if case ( json_array ) count = json % count ( p ) if ( count == 0 ) then ! special case for empty array s = s_indent // start_array // end_array call write_it ( comma = print_comma ) else ! if every child is the same type & a scalar: is_vector = json % is_vector ( p ) if ( json % failed ()) return s = s_indent // start_array call write_it ( advance = (. not . is_vector ) ) !if an array is in an array, there is an extra tab: if ( is_array ) then if ( . not . json % no_whitespace ) tab = tab + 1 spaces = tab * json % spaces_per_tab end if nullify ( element ) element => p % children do i = 1 , count if (. not . associated ( element )) then call json % throw_exception ( 'Error in json_value_print: ' // & 'Malformed JSON linked list' ) return end if ! recursive print of the element if ( is_vector ) then call json % json_value_print ( element , iunit = iunit , indent = 0_IK ,& need_comma = i < count , is_array_element = . false ., & str = str , iloc = iloc ,& is_compressed_vector = . true .) else call json % json_value_print ( element , iunit = iunit , indent = tab ,& need_comma = i < count , is_array_element = . true ., & str = str , iloc = iloc ) end if if ( json % exception_thrown ) return ! get the next child the list: element => element % next end do !indent the closing array character: if ( is_vector ) then s = end_array call write_it ( comma = print_comma ) else s = repeat ( space , max ( 0_IK , spaces - json % spaces_per_tab )) // end_array call write_it ( comma = print_comma ) end if nullify ( element ) end if case ( json_null ) s = s_indent // null_str call write_it ( comma = print_comma , & advance = (. not . is_vector ),& space_after_comma = is_vector ) case ( json_string ) if ( allocated ( p % str_value )) then ! have to escape the string for printing: call escape_string ( p % str_value , str_escaped , json % escape_solidus ) s = s_indent // quotation_mark // str_escaped // quotation_mark call write_it ( comma = print_comma , & advance = (. not . is_vector ),& space_after_comma = is_vector ) else call json % throw_exception ( 'Error in json_value_print:' // & ' p%value_string not allocated' ) return end if case ( json_logical ) if ( p % log_value ) then s = s_indent // true_str call write_it ( comma = print_comma , & advance = (. not . is_vector ),& space_after_comma = is_vector ) else s = s_indent // false_str call write_it ( comma = print_comma , & advance = (. not . is_vector ),& space_after_comma = is_vector ) end if case ( json_integer ) call integer_to_string ( p % int_value , int_fmt , tmp ) s = s_indent // trim ( tmp ) call write_it ( comma = print_comma , & advance = (. not . is_vector ),& space_after_comma = is_vector ) case ( json_real ) if ( allocated ( json % real_fmt )) then call real_to_string ( p % dbl_value , json % real_fmt , json % compact_real , json % non_normals_to_null , tmp ) else !use the default format (user has not called initialize() or specified one): call real_to_string ( p % dbl_value , default_real_fmt , json % compact_real , json % non_normals_to_null , tmp ) end if s = s_indent // trim ( tmp ) call write_it ( comma = print_comma , & advance = (. not . is_vector ),& space_after_comma = is_vector ) case default call integer_to_string ( p % var_type , int_fmt , tmp ) call json % throw_exception ( 'Error in json_value_print: ' // & 'unknown data type: ' // trim ( tmp )) end select end if contains subroutine write_it ( advance , comma , space_after_comma ) !! write the string `s` to the file (or the output string) implicit none logical ( LK ), intent ( in ), optional :: advance !! to add line break or not logical ( LK ), intent ( in ), optional :: comma !! print comma after the string logical ( LK ), intent ( in ), optional :: space_after_comma !! print a space after the comma logical ( LK ) :: add_comma !! if a delimiter is to be added after string logical ( LK ) :: add_line_break !! if a line break is to be added after string logical ( LK ) :: add_space !! if a space is to be added after the comma integer ( IK ) :: n !! length of actual string `s` appended to `str` integer ( IK ) :: room_left !! number of characters left in `str` integer ( IK ) :: n_chunks_to_add !! number of chunks to add to `str` for appending `s` if ( present ( comma )) then add_comma = comma else add_comma = . false . !default is not to add comma end if if ( json % no_whitespace ) then add_space = . false . else if ( present ( space_after_comma )) then add_space = space_after_comma else add_space = . false . !default is not to add space end if end if if ( present ( advance )) then if ( json % no_whitespace ) then ! overrides input value: add_line_break = . false . else add_line_break = advance end if else add_line_break = . not . json % no_whitespace ! default is to advance if ! we are printing whitespace end if ! string to print: if ( add_comma ) then if ( add_space ) then s = s // delimiter // space else s = s // delimiter end if end if if ( write_file ) then if ( add_line_break ) then write ( iunit , fmt = '(A)' ) s else write ( iunit , fmt = '(A)' , advance = 'NO' ) s end if else !write string if ( add_line_break ) s = s // newline n = len ( s ) room_left = len ( str ) - iloc if ( room_left < n ) then ! need to add another chunk to fit this string: n_chunks_to_add = max ( 1_IK , ceiling ( real ( len ( s ) - room_left , RK ) / real ( chunk_size , RK ), IK ) ) str = str // repeat ( space , print_str_chunk_size * n_chunks_to_add ) end if ! append s to str: str ( iloc + 1 : iloc + n ) = s iloc = iloc + n end if end subroutine write_it end subroutine json_value_print","tags":"","loc":"proc/json_value_print.html"},{"title":"json_value_remove – JSON-Fortran","text":"private subroutine json_value_remove(json, p, destroy) Remove a json_value (and all its children)\n from a linked-list structure, preserving the rest of the structure. Examples To extract an object from one JSON structure, and add it to another: type ( json_core ) :: json type ( json_value ), pointer :: json1 , json2 , p logical :: found !create and populate json1 and json2 call json % get ( json1 , 'name' , p , found ) ! get pointer to name element of json1 call json % remove ( p , destroy = . false .) ! remove it from json1 (don't destroy) call json % add ( json2 , p ) ! add it to json2 To remove an object from a JSON structure (and destroy it): type ( json_core ) :: json type ( json_value ), pointer :: json1 , p logical :: found !create and populate json1 call json % get ( json1 , 'name' , p , found ) ! get pointer to name element of json1 call json % remove ( p ) ! remove and destroy it History Jacob Williams : 12/28/2014 : added destroy optional argument. Jacob Williams : 12/04/2020 : bug fix. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p logical(kind=LK), intent(in), optional :: destroy Option to destroy p after it is removed: If destroy is not present, it is also destroyed. If destroy is present and true, it is destroyed. If destroy is present and false, it is not destroyed. Calls proc~~json_value_remove~~CallsGraph proc~json_value_remove json_core%json_value_remove none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_remove~~CalledByGraph proc~json_value_remove json_core%json_value_remove proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->proc~json_value_remove none~get~2 json_core%get proc~json_value_remove_if_present->none~get~2 proc~json_value_replace json_core%json_value_replace proc~json_value_replace->proc~json_value_remove none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present proc~convert json_core%convert proc~convert->proc~json_value_replace none~info~2 json_core%info proc~convert->none~info~2 proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->proc~json_value_replace none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->proc~json_value_replace proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~convert none~get_child json_core%get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_value_remove_if_present->none~remove_if_present none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_file_remove->none~remove proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_remove ( json , p , destroy ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p logical ( LK ), intent ( in ), optional :: destroy !! Option to destroy `p` after it is removed: !! !! * If `destroy` is not present, it is also destroyed. !! * If `destroy` is present and true, it is destroyed. !! * If `destroy` is present and false, it is not destroyed. type ( json_value ), pointer :: parent !! pointer to parent type ( json_value ), pointer :: previous !! pointer to previous type ( json_value ), pointer :: next !! pointer to next logical ( LK ) :: destroy_it !! if `p` should be destroyed if ( associated ( p )) then !optional input argument: if ( present ( destroy )) then destroy_it = destroy else destroy_it = . true . end if if ( associated ( p % parent )) then parent => p % parent if ( associated ( p % next )) then !there are later items in the list: next => p % next if ( associated ( p % previous )) then !there are earlier items in the list previous => p % previous previous % next => next next % previous => previous else !this is the first item in the list parent % children => next nullify ( next % previous ) end if else if ( associated ( p % previous )) then !there are earlier items in the list: previous => p % previous nullify ( previous % next ) parent % tail => previous else !this is the only item in the list: nullify ( parent % children ) nullify ( parent % tail ) end if end if ! nullify all pointers to original structure: nullify ( p % next ) nullify ( p % previous ) nullify ( p % parent ) parent % n_children = parent % n_children - 1 end if if ( destroy_it ) call json % destroy ( p ) end if end subroutine json_value_remove","tags":"","loc":"proc/json_value_remove.html"},{"title":"json_value_remove_if_present – JSON-Fortran","text":"private subroutine json_value_remove_if_present(json, p, path) Given the path string, remove the variable\nfrom json_value , if it exists. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path the path to the variable to remove Calls proc~~json_value_remove_if_present~~CallsGraph proc~json_value_remove_if_present json_core%json_value_remove_if_present none~get~2 json_core%get proc~json_value_remove_if_present->none~get~2 proc~json_value_remove json_core%json_value_remove proc~json_value_remove_if_present->proc~json_value_remove proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~json_value_replace->proc~json_value_remove none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_remove_if_present~~CalledByGraph proc~json_value_remove_if_present json_core%json_value_remove_if_present none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~wrap_json_value_remove_if_present->none~remove_if_present none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove proc~wrap_json_file_remove->none~remove Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_remove_if_present ( json , p , path ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable to remove type ( json_value ), pointer :: p_var logical ( LK ) :: found call json % get ( p , path , p_var , found ) if ( found ) call json % remove ( p_var ) end subroutine json_value_remove_if_present","tags":"","loc":"proc/json_value_remove_if_present.html"},{"title":"json_value_rename – JSON-Fortran","text":"private subroutine json_value_rename(json, p, name) Rename a json_value . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CK, len=*), intent(in) :: name new variable name Source Code subroutine json_value_rename ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p character ( kind = CK , len =* ), intent ( in ) :: name !! new variable name if ( json % trailing_spaces_significant ) then p % name = name else p % name = trim ( name ) end if end subroutine json_value_rename","tags":"","loc":"proc/json_value_rename.html"},{"title":"json_value_replace – JSON-Fortran","text":"private subroutine json_value_replace(json, p1, p2, destroy) Replace p1 with p2 in a JSON structure. Note The replacement is done using an insert and remove\n See json_value_insert_after and json_value_remove for details. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p1 the item to replace type( json_value ), pointer :: p2 item to take the place of p1 logical(kind=LK), intent(in), optional :: destroy Should p1 also be destroyed\n(default is True). Normally,\nthis should be true to avoid\na memory leak. Calls proc~~json_value_replace~~CallsGraph proc~json_value_replace json_core%json_value_replace none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~insert_after none~get_child json_core%get_child proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data none~throw_exception json_core%throw_exception proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal interface~to_unicode to_unicode proc~wrap_json_value_get_child_by_name->interface~to_unicode none~get~2 json_core%get proc~wrap_json_value_get_child_by_name->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->proc~flag_not_found proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~get_child proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~convert->proc~json_value_replace proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_replace~~CalledByGraph proc~json_value_replace json_core%json_value_replace none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~convert json_core%convert proc~convert->proc~json_value_replace none~info~2 json_core%info proc~convert->none~info~2 proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->proc~json_value_replace none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->proc~json_value_replace proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~convert none~get_child json_core%get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_replace ( json , p1 , p2 , destroy ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p1 !! the item to replace type ( json_value ), pointer :: p2 !! item to take the place of `p1` logical ( LK ), intent ( in ), optional :: destroy !! Should `p1` also be destroyed !! (default is True). Normally, !! this should be true to avoid !! a memory leak. logical ( LK ) :: destroy_p1 !! if `p1` is to be destroyed if ( present ( destroy )) then destroy_p1 = destroy else destroy_p1 = . true . ! default end if call json % insert_after ( p1 , p2 ) call json % remove ( p1 , destroy_p1 ) end subroutine json_value_replace","tags":"","loc":"proc/json_value_replace.html"},{"title":"json_value_reverse – JSON-Fortran","text":"private subroutine json_value_reverse(json, p) Reverse the order of the children of an array or object. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p Calls proc~~json_value_reverse~~CallsGraph proc~json_value_reverse json_core%json_value_reverse none~info~2 json_core%info proc~json_value_reverse->none~info~2 proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~throw_exception json_core%throw_exception proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~wrap_json_info_by_path->none~info~2 interface~to_unicode to_unicode proc~wrap_json_info_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_reverse ( json , p ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p type ( json_value ), pointer :: tmp !! temp variable for traversing the list type ( json_value ), pointer :: current !! temp variable for traversing the list integer ( IK ) :: var_type !! for getting the variable type if ( associated ( p )) then call json % info ( p , var_type = var_type ) ! can only reverse objects or arrays if ( var_type == json_object . or . var_type == json_array ) then nullify ( tmp ) current => p % children p % tail => current ! Swap next and previous for all nodes: do if (. not . associated ( current )) exit tmp => current % previous current % previous => current % next current % next => tmp current => current % previous end do if ( associated ( tmp )) then p % children => tmp % previous end if end if end if end subroutine json_value_reverse","tags":"","loc":"proc/json_value_reverse.html"},{"title":"json_value_swap – JSON-Fortran","text":"private subroutine json_value_swap(json, p1, p2) Swap two elements in a JSON structure.\n All of the children are carried along as well. Note If both are not associated, then an error is thrown. Note The assumption here is that both variables are part of a valid json_value linked list (so the normal parent , previous , next , etc. pointers are properly associated if necessary). Warning This cannot be used to swap a parent/child pair, since that\n could lead to a circular linkage. An exception is thrown if\n this is tried. Warning There are also other situations where using this routine may\n produce a malformed JSON structure, such as moving an array\n element outside of an array. This is not checked for. Note If p1 and p2 have a common parent, it is always safe to swap them. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p1 swap with p2 type( json_value ), pointer :: p2 swap with p1 Calls proc~~json_value_swap~~CallsGraph proc~json_value_swap json_core%json_value_swap none~throw_exception json_core%throw_exception proc~json_value_swap->none~throw_exception proc~json_value_is_child_of json_core%json_value_is_child_of proc~json_value_swap->proc~json_value_is_child_of proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_traverse json_core%json_traverse proc~json_value_is_child_of->proc~json_traverse proc~json_traverse->none~throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_swap ( json , p1 , p2 ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p1 !! swap with `p2` type ( json_value ), pointer :: p2 !! swap with `p1` logical :: same_parent !! if `p1` and `p2` have the same parent logical :: first_last !! if `p1` and `p2` are the first,last or !! last,first children of a common parent logical :: adjacent !! if `p1` and `p2` are adjacent !! elements in an array type ( json_value ), pointer :: a !! temporary variable type ( json_value ), pointer :: b !! temporary variable if ( json % exception_thrown ) return !both have to be associated: if ( associated ( p1 ) . and . associated ( p2 )) then !simple check to make sure that they both !aren't pointing to the same thing: if (. not . associated ( p1 , p2 )) then !we will not allow swapping an item with one of its descendants: if ( json % is_child_of ( p1 , p2 ) . or . json % is_child_of ( p2 , p1 )) then call json % throw_exception ( 'Error in json_value_swap: ' // & 'cannot swap an item with one of its descendants' ) else same_parent = ( associated ( p1 % parent ) . and . & associated ( p2 % parent ) . and . & associated ( p1 % parent , p2 % parent ) ) if ( same_parent ) then first_last = ( associated ( p1 % parent % children , p1 ) . and . & associated ( p2 % parent % tail , p2 )) . or . & ( associated ( p1 % parent % tail , p1 ) . and . & associated ( p2 % parent % children , p2 )) else first_last = . false . end if !first, we fix children,tail pointers: if ( same_parent . and . first_last ) then !this is all we have to do for the parent in this case: call swap_pointers ( p1 % parent % children , p2 % parent % tail ) else if ( same_parent . and . . not . first_last ) then if ( associated ( p1 % parent % children , p1 )) then p1 % parent % children => p2 ! p1 is the first child of the parent else if ( associated ( p1 % parent % children , p2 )) then p1 % parent % children => p1 ! p2 is the first child of the parent end if if ( associated ( p1 % parent % tail , p1 )) then p1 % parent % tail => p2 ! p1 is the last child of the parent else if ( associated ( p1 % parent % tail , p2 )) then p1 % parent % tail => p1 ! p2 is the last child of the parent end if else ! general case: different parents if ( associated ( p1 % parent )) then if ( associated ( p1 % parent % children , p1 )) p1 % parent % children => p2 if ( associated ( p1 % parent % tail , p1 )) p1 % parent % tail => p2 end if if ( associated ( p2 % parent )) then if ( associated ( p2 % parent % children , p2 )) p2 % parent % children => p1 if ( associated ( p2 % parent % tail , p2 )) p2 % parent % tail => p1 end if call swap_pointers ( p1 % parent , p2 % parent ) end if !now, have to fix previous,next pointers: !first, see if they are adjacent: adjacent = associated ( p1 % next , p2 ) . or . & associated ( p2 % next , p1 ) if ( associated ( p2 % next , p1 )) then !p2,p1 a => p2 b => p1 else !p1,p2 (or not adjacent) a => p1 b => p2 end if if ( associated ( a % previous )) a % previous % next => b if ( associated ( b % next )) b % next % previous => a if ( adjacent ) then !a comes before b in the original list b % previous => a % previous a % next => b % next a % previous => b b % next => a else if ( associated ( a % next )) a % next % previous => b if ( associated ( b % previous )) b % previous % next => a call swap_pointers ( a % previous , b % previous ) call swap_pointers ( a % next , b % next ) end if end if else call json % throw_exception ( 'Error in json_value_swap: ' // & 'both pointers must be associated' ) end if end if contains pure subroutine swap_pointers ( s1 , s2 ) implicit none type ( json_value ), pointer , intent ( inout ) :: s1 type ( json_value ), pointer , intent ( inout ) :: s2 type ( json_value ), pointer :: tmp !! temporary pointer if (. not . associated ( s1 , s2 )) then tmp => s1 s1 => s2 s2 => tmp end if end subroutine swap_pointers end subroutine json_value_swap","tags":"","loc":"proc/json_value_swap.html"},{"title":"json_value_to_string – JSON-Fortran","text":"private subroutine json_value_to_string(json, p, str) Print the json_value structure to an allocatable string. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CK, len=:), intent(out), allocatable :: str prints structure to this string Calls proc~~json_value_to_string~~CallsGraph proc~json_value_to_string json_core%json_value_to_string proc~json_value_print json_core%json_value_print proc~json_value_to_string->proc~json_value_print proc~json_value_print->proc~json_value_print none~throw_exception json_core%throw_exception proc~json_value_print->none~throw_exception proc~escape_string escape_string proc~json_value_print->proc~escape_string proc~integer_to_string integer_to_string proc~json_value_print->proc~integer_to_string proc~json_failed json_core%json_failed proc~json_value_print->proc~json_failed proc~json_is_vector json_core%json_is_vector proc~json_value_print->proc~json_is_vector proc~real_to_string real_to_string proc~json_value_print->proc~real_to_string proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_is_vector->none~throw_exception none~info~2 json_core%info proc~json_is_vector->none~info~2 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_info_by_path->interface~to_unicode proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception proc~convert->none~info~2 none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~throw_exception proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_string_info->proc~json_clear_exceptions proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~json_value_to_string~~CalledByGraph proc~json_value_to_string json_core%json_value_to_string proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_to_string ( json , p , str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p character ( kind = CK , len = :), intent ( out ), allocatable :: str !! prints structure to this string integer ( IK ) :: iloc !! used to keep track of size of str !! since it is being allocated in chunks. str = repeat ( space , print_str_chunk_size ) iloc = 0_IK call json % json_value_print ( p , iunit = unit2str , str = str , iloc = iloc , indent = 1_IK , colon = . true .) ! trim the string if necessary: if ( len ( str ) > iloc ) str = str ( 1 : iloc ) end subroutine json_value_to_string","tags":"","loc":"proc/json_value_to_string.html"},{"title":"json_value_validate – JSON-Fortran","text":"private subroutine json_value_validate(json, p, is_valid, error_msg) Validate a json_value linked list by checking to make sure\n all the pointers are properly associated, arrays and objects\n have the correct number of children, and the correct data is\n allocated for the variable types. It recursively traverses the entire structure and checks every element. History Jacob Williams, 8/26/2017 : added duplicate key check. Note It will return on the first error it encounters. Note This routine does not check or throw any exceptions.\n If json is currently in a state of exception, it will\n remain so after calling this routine. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p logical(kind=LK), intent(out) :: is_valid True if the structure is valid. character(kind=CK, len=:), intent(out), allocatable :: error_msg if not valid, this will contain\na description of the problem Calls proc~~json_value_validate~~CallsGraph proc~json_value_validate json_core%json_value_validate none~throw_exception json_core%throw_exception proc~json_value_validate->none~throw_exception proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_value_validate->proc~json_check_all_for_duplicate_keys proc~json_check_for_errors json_core%json_check_for_errors proc~json_value_validate->proc~json_check_for_errors proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_value_validate->proc~json_clear_exceptions proc~json_failed json_core%json_failed proc~json_value_validate->proc~json_failed proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_traverse json_core%json_traverse proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_traverse->none~throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine json_value_validate ( json , p , is_valid , error_msg ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p logical ( LK ), intent ( out ) :: is_valid !! True if the structure is valid. character ( kind = CK , len = :), allocatable , intent ( out ) :: error_msg !! if not valid, this will contain !! a description of the problem logical ( LK ) :: has_duplicate !! to check for duplicate keys character ( kind = CK , len = :), allocatable :: path !! path to duplicate key logical ( LK ) :: status_ok !! to check for existing exception character ( kind = CK , len = :), allocatable :: exception_msg !! error message for an existing exception character ( kind = CK , len = :), allocatable :: exception_msg2 !! error message for a new exception if ( associated ( p )) then is_valid = . true . call check_if_valid ( p , require_parent = associated ( p % parent )) if ( is_valid . and . . not . json % allow_duplicate_keys ) then ! if no errors so far, also check the ! entire structure for duplicate keys: ! note: check_for_duplicate_keys does call routines ! that check and throw exceptions, so let's clear any ! first. (save message for later) call json % check_for_errors ( status_ok , exception_msg ) call json % clear_exceptions () call json % check_for_duplicate_keys ( p , has_duplicate , path = path ) if ( json % failed ()) then ! if an exception was thrown during this call, ! then clear it but make that the error message ! returned by this routine. Normally this should ! never actually occur since we have already ! validated the structure. call json % check_for_errors ( is_valid , exception_msg2 ) error_msg = exception_msg2 call json % clear_exceptions () is_valid = . false . else if ( has_duplicate ) then error_msg = 'duplicate key found: ' // path is_valid = . false . end if end if if (. not . status_ok ) then ! restore any existing exception if necessary call json % throw_exception ( exception_msg ) end if ! cleanup: if ( allocated ( path )) deallocate ( path ) if ( allocated ( exception_msg )) deallocate ( exception_msg ) if ( allocated ( exception_msg2 )) deallocate ( exception_msg2 ) end if else error_msg = 'The pointer is not associated' is_valid = . false . end if contains recursive subroutine check_if_valid ( p , require_parent ) implicit none type ( json_value ), pointer , intent ( in ) :: p logical , intent ( in ) :: require_parent !! the first one may be a root (so no parent), !! but all descendants must have a parent. integer ( IK ) :: i !! counter type ( json_value ), pointer :: element type ( json_value ), pointer :: previous if ( is_valid . and . associated ( p )) then ! data type: select case ( p % var_type ) case ( json_null , json_object , json_array ) if ( allocated ( p % log_value ) . or . allocated ( p % int_value ) . or . & allocated ( p % dbl_value ) . or . allocated ( p % str_value )) then error_msg = 'incorrect data allocated for ' // & 'json_null, json_object, or json_array variable type' is_valid = . false . return end if case ( json_logical ) if (. not . allocated ( p % log_value )) then error_msg = 'log_value should be allocated for json_logical variable type' is_valid = . false . return else if ( allocated ( p % int_value ) . or . & allocated ( p % dbl_value ) . or . allocated ( p % str_value )) then error_msg = 'incorrect data allocated for json_logical variable type' is_valid = . false . return end if case ( json_integer ) if (. not . allocated ( p % int_value )) then error_msg = 'int_value should be allocated for json_integer variable type' is_valid = . false . return else if ( allocated ( p % log_value ) . or . & allocated ( p % dbl_value ) . or . allocated ( p % str_value )) then error_msg = 'incorrect data allocated for json_integer variable type' is_valid = . false . return end if case ( json_real ) if (. not . allocated ( p % dbl_value )) then error_msg = 'dbl_value should be allocated for json_real variable type' is_valid = . false . return else if ( allocated ( p % log_value ) . or . allocated ( p % int_value ) . or . & allocated ( p % str_value )) then error_msg = 'incorrect data allocated for json_real variable type' is_valid = . false . return end if case ( json_string ) if (. not . allocated ( p % str_value )) then error_msg = 'str_value should be allocated for json_string variable type' is_valid = . false . return else if ( allocated ( p % log_value ) . or . allocated ( p % int_value ) . or . & allocated ( p % dbl_value )) then error_msg = 'incorrect data allocated for json_string variable type' is_valid = . false . return end if case default error_msg = 'invalid JSON variable type' is_valid = . false . return end select if ( require_parent . and . . not . associated ( p % parent )) then error_msg = 'parent pointer is not associated' is_valid = . false . return end if if (. not . allocated ( p % name )) then if ( associated ( p % parent )) then if ( p % parent % var_type /= json_array ) then error_msg = 'JSON variable must have a name if not an ' // & 'array element or the root' is_valid = . false . return end if end if end if if ( associated ( p % children ) . neqv . associated ( p % tail )) then error_msg = 'both children and tail pointers must be associated' is_valid = . false . return end if ! now, check next one: if ( associated ( p % next )) then if ( associated ( p , p % next )) then error_msg = 'circular linked list' is_valid = . false . return else ! if it's an element in an ! array, then require a parent: call check_if_valid ( p % next , require_parent = . true .) end if end if if ( associated ( p % children )) then if ( p % var_type /= json_array . and . p % var_type /= json_object ) then error_msg = 'only arrays and objects can have children' is_valid = . false . return end if ! first validate children pointers: previous => null () element => p % children do i = 1_IK , p % n_children if (. not . associated ( element % parent , p )) then error_msg = 'child''s parent pointer not properly associated' is_valid = . false . return end if if ( i == 1 . and . associated ( element % previous )) then error_msg = 'first child shouldn''t have a previous' is_valid = . false . return end if if ( i < p % n_children . and . . not . associated ( element % next )) then error_msg = 'not enough children' is_valid = . false . return end if if ( i == p % n_children . and . associated ( element % next )) then error_msg = 'too many children' is_valid = . false . return end if if ( i > 1 ) then if (. not . associated ( previous , element % previous )) then error_msg = 'previous pointer not properly associated' is_valid = . false . return end if end if if ( i == p % n_children . and . & . not . associated ( element % parent % tail , element )) then error_msg = 'parent''s tail pointer not properly associated' is_valid = . false . return end if if ( i < p % n_children ) then !setup next case: previous => element element => element % next end if end do !now check all the children: call check_if_valid ( p % children , require_parent = . true .) end if end if end subroutine check_if_valid end subroutine json_value_validate","tags":"","loc":"proc/json_value_validate.html"},{"title":"parse_array – JSON-Fortran","text":"private recursive subroutine parse_array(json, unit, str, array) Core parsing routine. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if parsing from a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing from a string) type( json_value ), pointer :: array Calls proc~~parse_array~~CallsGraph proc~parse_array json_core%parse_array none~add~4 json_core%add proc~parse_array->none~add~4 none~destroy~3 json_core%destroy proc~parse_array->none~destroy~3 none~throw_exception json_core%throw_exception proc~parse_array->none~throw_exception proc~json_value_create json_value_create proc~parse_array->proc~json_value_create proc~parse_value json_core%parse_value proc~parse_array->proc~parse_value proc~pop_char json_core%pop_char proc~parse_array->proc~pop_char proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~parse_value->proc~parse_array proc~parse_value->none~throw_exception proc~parse_value->proc~pop_char proc~parse_for_chars json_core%parse_for_chars proc~parse_value->proc~parse_for_chars proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~parse_string json_core%parse_string proc~parse_value->proc~parse_string proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~to_array json_core%to_array proc~parse_value->proc~to_array proc~to_logical json_core%to_logical proc~parse_value->proc~to_logical proc~to_null json_core%to_null proc~parse_value->proc~to_null proc~to_object json_core%to_object proc~parse_value->proc~to_object proc~to_string json_core%to_string proc~parse_value->proc~to_string proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~parse_for_chars->none~throw_exception proc~parse_for_chars->proc~pop_char proc~parse_number->proc~pop_char proc~parse_number->proc~push_char proc~json_clear_exceptions json_core%json_clear_exceptions proc~parse_number->proc~json_clear_exceptions proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real proc~parse_object->none~add~4 proc~parse_object->none~destroy~3 proc~parse_object->none~throw_exception proc~parse_object->proc~json_value_create proc~parse_object->proc~parse_value proc~parse_object->proc~pop_char proc~parse_object->proc~parse_object proc~parse_object->proc~parse_string proc~parse_string->none~throw_exception proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~push_char->none~throw_exception proc~integer_to_string integer_to_string proc~push_char->proc~integer_to_string proc~to_array->proc~destroy_json_data proc~to_logical->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~parse_array~~CalledByGraph proc~parse_array json_core%parse_array proc~parse_value json_core%parse_value proc~parse_array->proc~parse_value proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code recursive subroutine parse_array ( json , unit , str , array ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: unit !! file unit number (if parsing from a file) character ( kind = CK , len =* ), intent ( in ) :: str !! JSON string (if parsing from a string) type ( json_value ), pointer :: array type ( json_value ), pointer :: element !! temp variable for array element logical ( LK ) :: eof !! end of file flag character ( kind = CK , len = 1 ) :: c !! character returned by [[pop_char]] logical ( LK ) :: expecting_next_element !! to check for trailing delimiters expecting_next_element = . false . do if ( json % exception_thrown ) exit ! try to parse an element value nullify ( element ) call json_value_create ( element ) call json % parse_value ( unit , str , element ) if ( json % exception_thrown ) then if ( associated ( element )) call json % destroy ( element ) exit end if ! parse value will deallocate an empty array value if ( associated ( element )) then expecting_next_element = . false . call json % add ( array , element ) end if ! popped the next character call json % pop_char ( unit , str = str , eof = eof , skip_ws = . true ., & skip_comments = json % allow_comments , popped = c ) if ( eof ) then ! The file ended before array was finished: call json % throw_exception ( 'Error in parse_array: ' // & 'End of file encountered when parsing an array.' ) exit else if ( delimiter == c ) then ! parse the next element expecting_next_element = . true . cycle else if ( end_array == c ) then ! end of array if ( expecting_next_element . and . . not . json % allow_trailing_comma ) then ! this is a dangling comma. call json % throw_exception ( 'Error in parse_array: ' // & 'Dangling comma when parsing an array.' ) end if exit else call json % throw_exception ( 'Error in parse_array: ' // & 'Unexpected character encountered when parsing array.' ) exit end if end do end subroutine parse_array","tags":"","loc":"proc/parse_array.html"},{"title":"parse_for_chars – JSON-Fortran","text":"private subroutine parse_for_chars(json, unit, str, chars) Core parsing routine. This is used to verify the strings true , false , and null during parsing. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if parsing from a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing from a string) character(kind=CK, len=*), intent(in) :: chars the string to check for. Calls proc~~parse_for_chars~~CallsGraph proc~parse_for_chars json_core%parse_for_chars none~throw_exception json_core%throw_exception proc~parse_for_chars->none~throw_exception proc~pop_char json_core%pop_char proc~parse_for_chars->proc~pop_char proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~parse_for_chars~~CalledByGraph proc~parse_for_chars json_core%parse_for_chars proc~parse_value json_core%parse_value proc~parse_value->proc~parse_for_chars proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine parse_for_chars ( json , unit , str , chars ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: unit !! file unit number (if parsing from a file) character ( kind = CK , len =* ), intent ( in ) :: str !! JSON string (if parsing from a string) character ( kind = CK , len =* ), intent ( in ) :: chars !! the string to check for. integer ( IK ) :: i !! counter integer ( IK ) :: length !! trimmed length of `chars` logical ( LK ) :: eof !! end of file flag character ( kind = CK , len = 1 ) :: c !! character returned by [[pop_char]] if (. not . json % exception_thrown ) then length = len_trim ( chars ) do i = 1 , length call json % pop_char ( unit , str = str , eof = eof , skip_ws = . false ., popped = c ) if ( eof ) then call json % throw_exception ( 'Error in parse_for_chars:' // & ' Unexpected end of file while parsing.' ) return else if ( c /= chars ( i : i )) then call json % throw_exception ( 'Error in parse_for_chars:' // & ' Unexpected character: \"' // c // '\" (expecting \"' // & chars ( i : i ) // '\")' ) return end if end do end if end subroutine parse_for_chars","tags":"","loc":"proc/parse_for_chars.html"},{"title":"parse_number – JSON-Fortran","text":"private subroutine parse_number(json, unit, str, value) Read a numerical value from the file (or string).\n The routine will determine if it is an integer or a real, and\n allocate the type accordingly. Note Complete rewrite of the original FSON routine, which had some problems. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if parsing from a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing from a string) type( json_value ), pointer :: value Calls proc~~parse_number~~CallsGraph proc~parse_number json_core%parse_number proc~json_clear_exceptions json_core%json_clear_exceptions proc~parse_number->proc~json_clear_exceptions proc~pop_char json_core%pop_char proc~parse_number->proc~pop_char proc~push_char json_core%push_char proc~parse_number->proc~push_char proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real none~throw_exception json_core%throw_exception proc~push_char->none~throw_exception proc~integer_to_string integer_to_string proc~push_char->proc~integer_to_string proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~destroy_json_data destroy_json_data proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~parse_number~~CalledByGraph proc~parse_number json_core%parse_number proc~parse_value json_core%parse_value proc~parse_value->proc~parse_number proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine parse_number ( json , unit , str , value ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: unit !! file unit number (if parsing from a file) character ( kind = CK , len =* ), intent ( in ) :: str !! JSON string (if parsing from a string) type ( json_value ), pointer :: value character ( kind = CK , len = :), allocatable :: tmp !! temp string character ( kind = CK , len = :), allocatable :: saved_err_message !! temp error message for !! string to int conversion character ( kind = CK , len = 1 ) :: c !! character returned by [[pop_char]] logical ( LK ) :: eof !! end of file flag real ( RK ) :: rval !! real value integer ( IK ) :: ival !! integer value logical ( LK ) :: first !! first character logical ( LK ) :: is_integer !! it is an integer integer ( IK ) :: ip !! index to put next character !! [to speed up by reducing the number !! of character string reallocations] if (. not . json % exception_thrown ) then tmp = blank_chunk ip = 1 first = . true . is_integer = . true . !assume it may be an integer, unless otherwise determined !read one character at a time and accumulate the string: do !get the next character: call json % pop_char ( unit , str = str , eof = eof , skip_ws = . true ., popped = c ) select case ( c ) case ( CK_ '-' , CK_ '+' ) !note: allowing a '+' as the first character here. if ( is_integer . and . (. not . first )) is_integer = . false . !add it to the string: !tmp = tmp // c !...original if ( ip > len ( tmp )) tmp = tmp // blank_chunk tmp ( ip : ip ) = c ip = ip + 1 case ( CK_ '.' , CK_ 'E' , CK_ 'e' , CK_ 'D' , CK_ 'd' ) !can be present in real numbers if ( is_integer ) is_integer = . false . !add it to the string: !tmp = tmp // c !...original if ( ip > len ( tmp )) tmp = tmp // blank_chunk tmp ( ip : ip ) = c ip = ip + 1 case ( CK_ '0' : CK_ '9' ) !valid characters for numbers !add it to the string: !tmp = tmp // c !...original if ( ip > len ( tmp )) tmp = tmp // blank_chunk tmp ( ip : ip ) = c ip = ip + 1 case default !push back the last character read: call json % push_char ( c ) !string to value: if ( is_integer ) then ! it is an integer: ival = json % string_to_int ( tmp ) if ( json % exception_thrown . and . . not . json % strict_integer_type_checking ) then ! if it couldn't be converted to an integer, ! then try to convert it to a real value and see if that works saved_err_message = json % err_message ! keep the original error message call json % clear_exceptions () ! clear exceptions rval = json % string_to_dble ( tmp ) if ( json % exception_thrown ) then ! restore original error message and continue json % err_message = saved_err_message call json % to_integer ( value , ival ) ! just so we have something else ! in this case, we return a real call json % to_real ( value , rval ) end if else call json % to_integer ( value , ival ) end if else ! it is a real: rval = json % string_to_dble ( tmp ) call json % to_real ( value , rval ) end if exit !finished end select if ( first ) first = . false . end do !cleanup: if ( allocated ( tmp )) deallocate ( tmp ) end if end subroutine parse_number","tags":"","loc":"proc/parse_number.html"},{"title":"parse_object – JSON-Fortran","text":"private recursive subroutine parse_object(json, unit, str, parent, expecting_next_element) Core parsing routine. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if parsing from a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing from a string) type( json_value ), pointer :: parent the parsed object will be added as a child of this logical(kind=LK), intent(in) :: expecting_next_element if true, this object is preceeded by a comma, so\nwe expect a valid object to exist. used to check\nfor trailing delimiters. Calls proc~~parse_object~~CallsGraph proc~parse_object json_core%parse_object proc~parse_object->proc~parse_object none~add~4 json_core%add proc~parse_object->none~add~4 none~destroy~3 json_core%destroy proc~parse_object->none~destroy~3 none~throw_exception json_core%throw_exception proc~parse_object->none~throw_exception proc~json_value_create json_value_create proc~parse_object->proc~json_value_create proc~parse_string json_core%parse_string proc~parse_object->proc~parse_string proc~parse_value json_core%parse_value proc~parse_object->proc~parse_value proc~pop_char json_core%pop_char proc~parse_object->proc~pop_char proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~parse_string->none~throw_exception proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~parse_value->proc~parse_object proc~parse_value->none~throw_exception proc~parse_value->proc~parse_string proc~parse_value->proc~pop_char proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_for_chars json_core%parse_for_chars proc~parse_value->proc~parse_for_chars proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~to_array json_core%to_array proc~parse_value->proc~to_array proc~to_logical json_core%to_logical proc~parse_value->proc~to_logical proc~to_null json_core%to_null proc~parse_value->proc~to_null proc~to_object json_core%to_object proc~parse_value->proc~to_object proc~to_string json_core%to_string proc~parse_value->proc~to_string proc~json_value_add_string_name_ascii->none~add~4 interface~to_unicode to_unicode proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~parse_array->none~add~4 proc~parse_array->none~destroy~3 proc~parse_array->none~throw_exception proc~parse_array->proc~json_value_create proc~parse_array->proc~parse_value proc~parse_array->proc~pop_char proc~parse_for_chars->none~throw_exception proc~parse_for_chars->proc~pop_char proc~parse_number->proc~pop_char proc~parse_number->proc~push_char proc~json_clear_exceptions json_core%json_clear_exceptions proc~parse_number->proc~json_clear_exceptions proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real proc~push_char->none~throw_exception proc~integer_to_string integer_to_string proc~push_char->proc~integer_to_string proc~to_array->proc~destroy_json_data proc~to_logical->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~parse_object~~CalledByGraph proc~parse_object json_core%parse_object proc~parse_object->proc~parse_object proc~parse_value json_core%parse_value proc~parse_object->proc~parse_value proc~parse_value->proc~parse_object proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code recursive subroutine parse_object ( json , unit , str , parent , expecting_next_element ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: unit !! file unit number (if parsing from a file) character ( kind = CK , len =* ), intent ( in ) :: str !! JSON string (if parsing from a string) type ( json_value ), pointer :: parent !! the parsed object will be added as a child of this logical ( LK ), intent ( in ) :: expecting_next_element !! if true, this object is preceeded by a comma, so !! we expect a valid object to exist. used to check !! for trailing delimiters. type ( json_value ), pointer :: pair !! temp variable logical ( LK ) :: eof !! end of file flag character ( kind = CK , len = 1 ) :: c !! character returned by [[pop_char]] #if defined __GFORTRAN__ character ( kind = CK , len = :), allocatable :: tmp !! this is a work-around for a bug !! in the gfortran 4.9 compiler. #endif if (. not . json % exception_thrown ) then !the routine is being called incorrectly. if (. not . associated ( parent )) then call json % throw_exception ( 'Error in parse_object: parent pointer not associated.' ) end if nullify ( pair ) !probably not necessary ! pair name call json % pop_char ( unit , str = str , eof = eof , skip_ws = . true ., & skip_comments = json % allow_comments , popped = c ) if ( eof ) then call json % throw_exception ( 'Error in parse_object:' // & ' Unexpected end of file while parsing start of object.' ) return else if ( end_object == c ) then ! end of an empty object if ( expecting_next_element . and . . not . json % allow_trailing_comma ) then ! this is a dangling comma. call json % throw_exception ( 'Error in parse_object: ' // & 'Dangling comma when parsing an object.' ) end if return else if ( quotation_mark == c ) then call json_value_create ( pair ) #if defined __GFORTRAN__ call json % parse_string ( unit , str , tmp ) ! write to a tmp variable because of pair % name = tmp ! a bug in 4.9 gfortran compiler. deallocate ( tmp ) #else call json % parse_string ( unit , str , pair % name ) #endif if ( json % exception_thrown ) then call json % destroy ( pair ) return end if else call json % throw_exception ( 'Error in parse_object: Expecting string: \"' // c // '\"' ) return end if ! pair value call json % pop_char ( unit , str = str , eof = eof , skip_ws = . true ., & skip_comments = json % allow_comments , popped = c ) if ( eof ) then call json % destroy ( pair ) call json % throw_exception ( 'Error in parse_object:' // & ' Unexpected end of file while parsing object member.' ) return else if ( colon_char == c ) then ! parse the value call json % parse_value ( unit , str , pair ) if ( json % exception_thrown ) then call json % destroy ( pair ) return else call json % add ( parent , pair ) end if else call json % destroy ( pair ) call json % throw_exception ( 'Error in parse_object:' // & ' Expecting : and then a value: ' // c ) return end if ! another possible pair call json % pop_char ( unit , str = str , eof = eof , skip_ws = . true ., & skip_comments = json % allow_comments , popped = c ) if ( eof ) then call json % throw_exception ( 'Error in parse_object: ' // & 'End of file encountered when parsing an object' ) return else if ( delimiter == c ) then ! read the next member call json % parse_object ( unit = unit , str = str , parent = parent , & expecting_next_element = . true .) else if ( end_object == c ) then ! end of object return else call json % throw_exception ( 'Error in parse_object: Expecting end of object: ' // c ) return end if end if end subroutine parse_object","tags":"","loc":"proc/parse_object.html"},{"title":"parse_string – JSON-Fortran","text":"private subroutine parse_string(json, unit, str, string) Parses a string while reading a JSON file. History Jacob Williams : 6/16/2014 : Added hex validation. Jacob Williams : 12/3/2015 : Fixed some bugs. Jacob Williams : 8/23/2015 : string is now returned unescaped. Jacob Williams : 7/21/2018 : moved hex validate to unescape_string . Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if\nparsing from a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing\nfrom a string) character(kind=CK, len=:), intent(out), allocatable :: string the string (unescaped\nif necessary) Calls proc~~parse_string~~CallsGraph proc~parse_string json_core%parse_string none~throw_exception json_core%throw_exception proc~parse_string->none~throw_exception proc~pop_char json_core%pop_char proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~parse_string~~CalledByGraph proc~parse_string json_core%parse_string proc~parse_object json_core%parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~parse_object proc~parse_value json_core%parse_value proc~parse_object->proc~parse_value proc~parse_value->proc~parse_string proc~parse_value->proc~parse_object proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine parse_string ( json , unit , str , string ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: unit !! file unit number (if !! parsing from a file) character ( kind = CK , len =* ), intent ( in ) :: str !! JSON string (if parsing !! from a string) character ( kind = CK , len = :), allocatable , intent ( out ) :: string !! the string (unescaped !! if necessary) logical ( LK ) :: eof !! end of file flag logical ( LK ) :: escape !! for escape string parsing character ( kind = CK , len = 1 ) :: c !! character returned by [[pop_char]] integer ( IK ) :: ip !! index to put next character, !! to speed up by reducing the number !! of character string reallocations. character ( kind = CK , len = :), allocatable :: error_message !! for string unescaping !at least return a blank string if there is a problem: string = blank_chunk if (. not . json % exception_thrown ) then !initialize: escape = . false . ip = 1 do !get the next character from the file: call json % pop_char ( unit , str = str , eof = eof , skip_ws = . false ., popped = c ) if ( eof ) then call json % throw_exception ( 'Error in parse_string: Expecting end of string' ) return else if ( c == quotation_mark . and . . not . escape ) then !end of string exit else !if the string is not big enough, then add another chunk: if ( ip > len ( string )) string = string // blank_chunk !append to string: string ( ip : ip ) = c ip = ip + 1 ! check for escape character, so we don't ! exit prematurely if escaping a quotation ! character: if ( escape ) then escape = . false . else escape = ( c == backslash ) end if end if end do !trim the string if necessary: if ( ip < len ( string ) + 1 ) then if ( ip == 1 ) then string = CK_ '' else string = string ( 1 : ip - 1 ) end if end if ! string is returned unescaped: ! (this will also validate any hex strings present) call unescape_string ( string , error_message ) if ( allocated ( error_message )) then call json % throw_exception ( error_message ) deallocate ( error_message ) !cleanup end if end if end subroutine parse_string","tags":"","loc":"proc/parse_string.html"},{"title":"parse_value – JSON-Fortran","text":"private recursive subroutine parse_value(json, unit, str, value) Core parsing routine. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number character(kind=CK, len=*), intent(in) :: str string containing JSON data (only used if unit=0 ) type( json_value ), pointer :: value JSON data that is extracted Calls proc~~parse_value~~CallsGraph proc~parse_value json_core%parse_value none~throw_exception json_core%throw_exception proc~parse_value->none~throw_exception proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_for_chars json_core%parse_for_chars proc~parse_value->proc~parse_for_chars proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~parse_string json_core%parse_string proc~parse_value->proc~parse_string proc~pop_char json_core%pop_char proc~parse_value->proc~pop_char proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~to_array json_core%to_array proc~parse_value->proc~to_array proc~to_logical json_core%to_logical proc~parse_value->proc~to_logical proc~to_null json_core%to_null proc~parse_value->proc~to_null proc~to_object json_core%to_object proc~parse_value->proc~to_object proc~to_string json_core%to_string proc~parse_value->proc~to_string proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~parse_array->proc~parse_value proc~parse_array->none~throw_exception proc~parse_array->proc~pop_char none~add~4 json_core%add proc~parse_array->none~add~4 none~destroy~3 json_core%destroy proc~parse_array->none~destroy~3 proc~json_value_create json_value_create proc~parse_array->proc~json_value_create proc~parse_for_chars->none~throw_exception proc~parse_for_chars->proc~pop_char proc~parse_number->proc~pop_char proc~parse_number->proc~push_char proc~json_clear_exceptions json_core%json_clear_exceptions proc~parse_number->proc~json_clear_exceptions proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real proc~parse_object->proc~parse_value proc~parse_object->none~throw_exception proc~parse_object->proc~parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~pop_char proc~parse_object->none~add~4 proc~parse_object->none~destroy~3 proc~parse_object->proc~json_value_create proc~parse_string->none~throw_exception proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~push_char->none~throw_exception proc~integer_to_string integer_to_string proc~push_char->proc~integer_to_string proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_logical->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~parse_value~~CalledByGraph proc~parse_value json_core%parse_value proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code recursive subroutine parse_value ( json , unit , str , value ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: unit !! file unit number character ( kind = CK , len =* ), intent ( in ) :: str !! string containing JSON !! data (only used if `unit=0`) type ( json_value ), pointer :: value !! JSON data that is extracted logical ( LK ) :: eof !! end-of-file flag character ( kind = CK , len = 1 ) :: c !! character read from file !! (or string) by [[pop_char]] #if defined __GFORTRAN__ character ( kind = CK , len = :), allocatable :: tmp !! this is a work-around for a bug !! in the gfortran 4.9 compiler. #endif if (. not . json % exception_thrown ) then !the routine is being called incorrectly. if (. not . associated ( value )) then call json % throw_exception ( 'Error in parse_value: value pointer not associated.' ) return end if ! pop the next non whitespace character off the file call json % pop_char ( unit , str = str , eof = eof , skip_ws = . true ., & skip_comments = json % allow_comments , popped = c ) if ( eof ) then return else select case ( c ) case ( start_object ) ! start object call json % to_object ( value ) !allocate class call json % parse_object ( unit , str , value , expecting_next_element = . false .) case ( start_array ) ! start array call json % to_array ( value ) !allocate class call json % parse_array ( unit , str , value ) case ( end_array ) ! end an empty array call json % push_char ( c ) if ( associated ( value )) then deallocate ( value ) nullify ( value ) end if case ( quotation_mark ) ! string call json % to_string ( value ) !allocate class select case ( value % var_type ) case ( json_string ) #if defined __GFORTRAN__ ! write to a tmp variable because of ! a bug in 4.9 gfortran compiler. call json % parse_string ( unit , str , tmp ) value % str_value = tmp if ( allocated ( tmp )) deallocate ( tmp ) #else call json % parse_string ( unit , str , value % str_value ) #endif end select case ( CK_ 't' ) !true_str(1:1) gfortran bug work around !true call json % parse_for_chars ( unit , str , true_str ( 2 :)) !allocate class and set value: if (. not . json % exception_thrown ) call json % to_logical ( value ,. true .) case ( CK_ 'f' ) !false_str(1:1) gfortran bug work around !false call json % parse_for_chars ( unit , str , false_str ( 2 :)) !allocate class and set value: if (. not . json % exception_thrown ) call json % to_logical ( value ,. false .) case ( CK_ 'n' ) !null_str(1:1) gfortran bug work around !null call json % parse_for_chars ( unit , str , null_str ( 2 :)) if (. not . json % exception_thrown ) call json % to_null ( value ) ! allocate class case ( CK_ '-' , CK_ '0' : CK_ '9' , CK_ '.' , CK_ '+' ) call json % push_char ( c ) call json % parse_number ( unit , str , value ) case default call json % throw_exception ( 'Error in parse_value:' // & ' Unexpected character while parsing value. \"' // & c // '\"' ) end select end if end if end subroutine parse_value","tags":"","loc":"proc/parse_value.html"},{"title":"pop_char – JSON-Fortran","text":"private subroutine pop_char(json, unit, str, skip_ws, skip_comments, eof, popped) Get the next character from the file (or string). See also push_char Note This routine ignores non-printing ASCII characters\n ( iachar<=31 ) that are in strings. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if parsing\nfrom a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing from a\nstring) – only used if unit=0 logical(kind=LK), intent(in), optional :: skip_ws to ignore whitespace [default False] logical(kind=LK), intent(in), optional :: skip_comments to ignore comment lines [default False] logical(kind=LK), intent(out) :: eof true if the end of the file has\nbeen reached. character(kind=CK, len=1), intent(out) :: popped the popped character returned Called by proc~~pop_char~~CalledByGraph proc~pop_char json_core%pop_char proc~json_parse_end json_core%json_parse_end proc~json_parse_end->proc~pop_char proc~parse_array json_core%parse_array proc~parse_array->proc~pop_char proc~parse_value json_core%parse_value proc~parse_array->proc~parse_value proc~parse_for_chars json_core%parse_for_chars proc~parse_for_chars->proc~pop_char proc~parse_number json_core%parse_number proc~parse_number->proc~pop_char proc~parse_object json_core%parse_object proc~parse_object->proc~pop_char proc~parse_object->proc~parse_object proc~parse_string json_core%parse_string proc~parse_object->proc~parse_string proc~parse_object->proc~parse_value proc~parse_string->proc~pop_char proc~parse_value->proc~pop_char proc~parse_value->proc~parse_array proc~parse_value->proc~parse_for_chars proc~parse_value->proc~parse_number proc~parse_value->proc~parse_object proc~parse_value->proc~parse_string proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~json_parse_end proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~json_parse_end proc~json_parse_string->proc~parse_value none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine pop_char ( json , unit , str , skip_ws , skip_comments , eof , popped ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: unit !! file unit number (if parsing !! from a file) character ( kind = CK , len =* ), intent ( in ) :: str !! JSON string (if parsing from a !! string) -- only used if `unit=0` logical ( LK ), intent ( in ), optional :: skip_ws !! to ignore whitespace [default False] logical ( LK ), intent ( in ), optional :: skip_comments !! to ignore comment lines [default False] logical ( LK ), intent ( out ) :: eof !! true if the end of the file has !! been reached. character ( kind = CK , len = 1 ), intent ( out ) :: popped !! the popped character returned integer ( IK ) :: ios !! `iostat` flag integer ( IK ) :: str_len !! length of `str` character ( kind = CK , len = 1 ) :: c !! a character read from the file (or string) logical ( LK ) :: ignore !! if whitespace is to be ignored logical ( LK ) :: ignore_comments !! if comment lines are to be ignored logical ( LK ) :: parsing_comment !! if we are in the process !! of parsing a comment line if (. not . json % exception_thrown ) then eof = . false . if (. not . present ( skip_ws )) then ignore = . false . else ignore = skip_ws end if parsing_comment = . false . if (. not . present ( skip_comments )) then ignore_comments = . false . else ignore_comments = skip_comments end if do if ( json % pushed_index > 0 ) then ! there is a character pushed back on, most likely ! from the number parsing. Note: this can only occur if ! reading from a file when use_unformatted_stream=.false. c = json % pushed_char ( json % pushed_index : json % pushed_index ) json % pushed_index = json % pushed_index - 1 else if ( unit /= 0 ) then !read from the file !read the next character: if ( use_unformatted_stream ) then ! in this case, we read the file in chunks. ! if we already have the character we need, ! then get it from the chunk. Otherwise, ! read in another chunk. if ( json % ichunk < 1 ) then ! read in a chunk: json % ichunk = 0 if ( json % filesize < json % ipos + len ( json % chunk ) - 1 ) then ! for the last chunk, we resize ! it to the correct size: json % chunk = repeat ( space , json % filesize - json % ipos + 1 ) end if read ( unit = unit , pos = json % ipos , iostat = ios ) json % chunk else ios = 0 end if json % ichunk = json % ichunk + 1 if ( json % ichunk > len ( json % chunk )) then ! check this just in case ios = IOSTAT_END else ! get the next character from the chunk: c = json % chunk ( json % ichunk : json % ichunk ) if ( json % ichunk == len ( json % chunk )) then json % ichunk = 0 ! reset for next chunk end if end if else ! a formatted read: read ( unit = unit , fmt = '(A1)' , advance = 'NO' , iostat = ios ) c end if json % ipos = json % ipos + 1 else !read from the string str_len = len ( str ) !length of the string if ( json % ipos <= str_len ) then c = str ( json % ipos : json % ipos ) ios = 0 else ios = IOSTAT_END !end of the string end if json % ipos = json % ipos + 1 end if json % char_count = json % char_count + 1 !character count in the current line if ( IS_IOSTAT_END ( ios )) then !end of file ! no character to return json % char_count = 0 eof = . true . popped = space ! just to set a value exit else if ( IS_IOSTAT_EOR ( ios ) . or . c == newline ) then !end of record json % char_count = 0 json % line_count = json % line_count + 1 if ( ignore_comments ) parsing_comment = . false . ! done parsing this comment line cycle end if end if if ( ignore_comments . and . ( parsing_comment . or . scan ( c , json % comment_char , kind = IK ) > 0_IK ) ) then ! skipping the comment parsing_comment = . true . cycle else if ( any ( c == control_chars )) then ! non printing ascii characters cycle else if ( ignore . and . c == space ) then ! ignoring whitespace cycle else ! return the character popped = c exit end if end do end if end subroutine pop_char","tags":"","loc":"proc/pop_char.html"},{"title":"push_char – JSON-Fortran","text":"private subroutine push_char(json, c) Core routine. See also pop_char History Jacob Williams : 5/3/2015 : replaced original version of this routine. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CK, len=1), intent(in) :: c to character to push Calls proc~~push_char~~CallsGraph proc~push_char json_core%push_char none~throw_exception json_core%throw_exception proc~push_char->none~throw_exception proc~integer_to_string integer_to_string proc~push_char->proc~integer_to_string proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~push_char~~CalledByGraph proc~push_char json_core%push_char proc~parse_number json_core%parse_number proc~parse_number->proc~push_char proc~parse_value json_core%parse_value proc~parse_value->proc~push_char proc~parse_value->proc~parse_number proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine push_char ( json , c ) implicit none class ( json_core ), intent ( inout ) :: json character ( kind = CK , len = 1 ), intent ( in ) :: c !! to character to push character ( kind = CK , len = max_numeric_str_len ) :: istr !! for error printing if (. not . json % exception_thrown ) then if ( use_unformatted_stream ) then !in this case, c is ignored, and we just !decrement the stream position counter: json % ipos = json % ipos - 1 json % ichunk = json % ichunk - 1 else json % pushed_index = json % pushed_index + 1 if ( json % pushed_index > 0 . and . json % pushed_index <= len ( json % pushed_char )) then json % pushed_char ( json % pushed_index : json % pushed_index ) = c else call integer_to_string ( json % pushed_index , int_fmt , istr ) call json % throw_exception ( 'Error in push_char: ' // & 'invalid valid of pushed_index: ' // trim ( istr )) end if end if !character count in the current line json % char_count = json % char_count - 1 end if end subroutine push_char","tags":"","loc":"proc/push_char.html"},{"title":"to_array – JSON-Fortran","text":"private subroutine to_array(json, p, name) Change the json_value variable to an array. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. Calls proc~~to_array~~CallsGraph proc~to_array json_core%to_array proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~to_array~~CalledByGraph proc~to_array json_core%to_array proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create_array json_core%json_value_create_array proc~json_value_create_array->proc~to_array proc~parse_value json_core%parse_value proc~parse_value->proc~to_array proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object none~create_array json_core%create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path none~load~2 json_core%load none~load~2->proc~json_parse_file proc~convert json_core%convert proc~convert->none~create_array none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create_array proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create_array proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create_array proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_integer_vec json_core%json_value_add_integer_vec proc~json_value_add_integer_vec->none~create_array proc~json_value_add_logical_vec json_core%json_value_add_logical_vec proc~json_value_add_logical_vec->none~create_array proc~json_value_add_real_vec json_core%json_value_add_real_vec proc~json_value_add_real_vec->none~create_array proc~json_value_add_string_vec json_core%json_value_add_string_vec proc~json_value_add_string_vec->none~create_array proc~wrap_json_value_create_array->none~create_array proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~info~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~info~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~info~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_parse_string->none~deserialize~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_file_load_from_string->none~deserialize proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine to_array ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ), optional :: name !! if the name is also to be changed. !set type and value: call destroy_json_data ( p ) p % var_type = json_array !name: if ( present ( name )) call json % rename ( p , name ) end subroutine to_array","tags":"","loc":"proc/to_array.html"},{"title":"to_integer – JSON-Fortran","text":"private subroutine to_integer(json, p, val, name) Change the json_value variable to an integer. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(in), optional :: val if the value is also to be set\n(if not present, then 0 is used). character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. Calls proc~~to_integer~~CallsGraph proc~to_integer json_core%to_integer proc~destroy_json_data destroy_json_data proc~to_integer->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~to_integer~~CalledByGraph proc~to_integer json_core%to_integer proc~json_update_integer json_core%json_update_integer proc~json_update_integer->proc~to_integer proc~json_value_create_integer json_core%json_value_create_integer proc~json_value_create_integer->proc~to_integer proc~parse_number json_core%parse_number proc~parse_number->proc~to_integer none~create_integer json_core%create_integer none~create_integer->proc~json_value_create_integer proc~wrap_json_value_create_integer json_core%wrap_json_value_create_integer none~create_integer->proc~wrap_json_value_create_integer proc~parse_value json_core%parse_value proc~parse_value->proc~parse_number proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create_integer proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~json_value_add_integer json_core%json_value_add_integer proc~json_value_add_integer->none~create_integer proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~wrap_json_value_create_integer->none~create_integer none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine to_integer ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p integer ( IK ), intent ( in ), optional :: val !! if the value is also to be set !! (if not present, then 0 is used). character ( kind = CK , len =* ), intent ( in ), optional :: name !! if the name is also to be changed. !set type and value: call destroy_json_data ( p ) p % var_type = json_integer allocate ( p % int_value ) if ( present ( val )) then p % int_value = val else p % int_value = 0_IK !default value end if !name: if ( present ( name )) call json % rename ( p , name ) end subroutine to_integer","tags":"","loc":"proc/to_integer.html"},{"title":"to_logical – JSON-Fortran","text":"private subroutine to_logical(json, p, val, name) Change the json_value variable to a logical. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p logical(kind=LK), intent(in), optional :: val if the value is also to be set\n(if not present, then .false. is used). character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. Calls proc~~to_logical~~CallsGraph proc~to_logical json_core%to_logical proc~destroy_json_data destroy_json_data proc~to_logical->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~to_logical~~CalledByGraph proc~to_logical json_core%to_logical proc~json_update_logical json_core%json_update_logical proc~json_update_logical->proc~to_logical proc~json_value_create_logical json_core%json_value_create_logical proc~json_value_create_logical->proc~to_logical proc~parse_value json_core%parse_value proc~parse_value->proc~to_logical proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object none~create_logical json_core%create_logical none~create_logical->proc~json_value_create_logical proc~wrap_json_value_create_logical json_core%wrap_json_value_create_logical none~create_logical->proc~wrap_json_value_create_logical proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create_logical proc~json_value_add_logical json_core%json_value_add_logical proc~json_value_add_logical->none~create_logical proc~wrap_json_value_create_logical->none~create_logical proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine to_logical ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p logical ( LK ), intent ( in ), optional :: val !! if the value is also to be set !! (if not present, then .false. is used). character ( kind = CK , len =* ), intent ( in ), optional :: name !! if the name is also to be changed. !set type and value: call destroy_json_data ( p ) p % var_type = json_logical allocate ( p % log_value ) if ( present ( val )) then p % log_value = val else p % log_value = . false . !default value end if !name: if ( present ( name )) call json % rename ( p , name ) end subroutine to_logical","tags":"","loc":"proc/to_logical.html"},{"title":"to_null – JSON-Fortran","text":"private subroutine to_null(json, p, name) Change the json_value variable to a null. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. Calls proc~~to_null~~CallsGraph proc~to_null json_core%to_null proc~destroy_json_data destroy_json_data proc~to_null->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~to_null~~CalledByGraph proc~to_null json_core%to_null proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->proc~to_null none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_value_create_null json_core%json_value_create_null proc~json_value_create_null->proc~to_null proc~parse_value json_core%parse_value proc~parse_value->proc~to_null proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object none~create_null json_core%create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path none~load~2 json_core%load none~load~2->proc~json_parse_file proc~convert->none~create_null none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_value_add_null json_core%json_value_add_null proc~json_value_add_null->none~create_null proc~wrap_json_value_create_null->none~create_null proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_parse_string->none~deserialize~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_file_load_from_string->none~deserialize proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine to_null ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ), optional :: name !! if the name is also to be changed. !set type and value: call destroy_json_data ( p ) p % var_type = json_null !name: if ( present ( name )) call json % rename ( p , name ) end subroutine to_null","tags":"","loc":"proc/to_null.html"},{"title":"to_object – JSON-Fortran","text":"private subroutine to_object(json, p, name) Change the json_value variable to an object. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. Calls proc~~to_object~~CallsGraph proc~to_object json_core%to_object proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~to_object~~CalledByGraph proc~to_object json_core%to_object proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->proc~to_object none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create_object json_core%json_value_create_object proc~json_value_create_object->proc~to_object proc~parse_value json_core%parse_value proc~parse_value->proc~to_object proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object none~create_object json_core%create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path none~load~2 json_core%load none~load~2->proc~json_parse_file proc~convert json_core%convert proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~create_object none~add_by_path~2 json_core%add_by_path proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~create_object proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~create_object proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~create_object proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~create_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~create_object proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~create_object proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~create_object proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->none~create_object proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->none~create_object proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~create_object proc~json_file_add_string_vec->none~add_by_path~2 proc~wrap_json_value_create_object->none~create_object proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_parse_string->none~deserialize~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_file_load_from_string->none~deserialize proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine to_object ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ), optional :: name !! if the name is also to be changed. !set type and value: call destroy_json_data ( p ) p % var_type = json_object !name: if ( present ( name )) call json % rename ( p , name ) end subroutine to_object","tags":"","loc":"proc/to_object.html"},{"title":"to_real – JSON-Fortran","text":"private subroutine to_real(json, p, val, name) Change the json_value variable to a real. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=RK), intent(in), optional :: val if the value is also to be set\n(if not present, then 0.0_rk is used). character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. Calls proc~~to_real~~CallsGraph proc~to_real json_core%to_real proc~destroy_json_data destroy_json_data proc~to_real->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~to_real~~CalledByGraph proc~to_real json_core%to_real proc~json_update_real json_core%json_update_real proc~json_update_real->proc~to_real proc~json_value_create_real json_core%json_value_create_real proc~json_value_create_real->proc~to_real proc~parse_number json_core%parse_number proc~parse_number->proc~to_real proc~parse_value json_core%parse_value proc~parse_value->proc~parse_number proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine to_real ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p real ( RK ), intent ( in ), optional :: val !! if the value is also to be set !! (if not present, then 0.0_rk is used). character ( kind = CK , len =* ), intent ( in ), optional :: name !! if the name is also to be changed. !set type and value: call destroy_json_data ( p ) p % var_type = json_real allocate ( p % dbl_value ) if ( present ( val )) then p % dbl_value = val else p % dbl_value = 0.0_RK !default value end if !name: if ( present ( name )) call json % rename ( p , name ) end subroutine to_real","tags":"","loc":"proc/to_real.html"},{"title":"to_string – JSON-Fortran","text":"private subroutine to_string(json, p, val, name, trim_str, adjustl_str) Change the json_value variable to a string. Modified Izaak Beekman : 02/24/2015 Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in), optional :: val if the value is also to be set\n(if not present, then ‘’ is used). character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) Calls proc~~to_string~~CallsGraph proc~to_string json_core%to_string proc~destroy_json_data destroy_json_data proc~to_string->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~to_string~~CalledByGraph proc~to_string json_core%to_string proc~json_update_string json_core%json_update_string proc~json_update_string->proc~to_string none~add_by_path~2 json_core%add_by_path proc~json_update_string->none~add_by_path~2 proc~json_value_create_string json_core%json_value_create_string proc~json_value_create_string->proc~to_string proc~parse_value json_core%parse_value proc~parse_value->proc~to_string proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object none~create_string json_core%create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create_string proc~json_value_add_string json_core%json_value_add_string proc~json_value_add_string->none~create_string proc~wrap_json_value_create_string->none~create_string proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_parse_string->none~deserialize~2 none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine to_string ( json , p , val , name , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ), optional :: val !! if the value is also to be set !! (if not present, then '' is used). character ( kind = CK , len =* ), intent ( in ), optional :: name !! if the name is also to be changed. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` !! (only used if `val` is present) logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (only used if `val` is present) !! (note that ADJUSTL is done before TRIM) character ( kind = CK , len = :), allocatable :: str !! temp string for `trim()` and/or `adjustl()` logical :: trim_string !! if the string is to be trimmed logical :: adjustl_string !! if the string is to be adjusted left !set type and value: call destroy_json_data ( p ) p % var_type = json_string if ( present ( val )) then if ( present ( trim_str )) then trim_string = trim_str else trim_string = . false . end if if ( present ( adjustl_str )) then adjustl_string = adjustl_str else adjustl_string = . false . end if if ( trim_string . or . adjustl_string ) then str = val if ( adjustl_string ) str = adjustl ( str ) if ( trim_string ) str = trim ( str ) p % str_value = str else p % str_value = val end if else p % str_value = CK_ '' ! default value end if !name: if ( present ( name )) call json % rename ( p , name ) end subroutine to_string","tags":"","loc":"proc/to_string.html"},{"title":"wrap_json_add_integer_by_path – JSON-Fortran","text":"private subroutine wrap_json_add_integer_by_path(json, me, path, value, found, was_created) Wrapper to json_add_integer_by_path where “path” is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_add_integer_by_path~~CallsGraph proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path interface~to_unicode to_unicode proc~wrap_json_add_integer_by_path->interface~to_unicode proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_integer_by_path->none~create none~create_integer json_core%create_integer proc~json_add_integer_by_path->none~create_integer none~info~2 json_core%info proc~json_add_integer_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_integer_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_integer_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_integer_by_path->proc~json_value_replace proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_integer json_core%json_value_create_integer none~create_integer->proc~json_value_create_integer proc~wrap_json_value_create_integer json_core%wrap_json_value_create_integer none~create_integer->proc~wrap_json_value_create_integer proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_create json_value_create proc~json_value_create_integer->proc~json_value_create proc~to_integer json_core%to_integer proc~json_value_create_integer->proc~to_integer none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_integer->interface~to_unicode proc~wrap_json_value_create_integer->none~create_integer proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_integer->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_add_integer_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % json_add_integer_by_path ( me , to_unicode ( path ), value , found , was_created ) end subroutine wrap_json_add_integer_by_path","tags":"","loc":"proc/wrap_json_add_integer_by_path.html"},{"title":"wrap_json_add_integer_vec_by_path – JSON-Fortran","text":"private subroutine wrap_json_add_integer_vec_by_path(json, me, path, value, found, was_created) Wrapper for json_add_integer_vec_by_path where “path” is kind=CDK). Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_add_integer_vec_by_path~~CallsGraph proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path interface~to_unicode to_unicode proc~wrap_json_add_integer_vec_by_path->interface~to_unicode proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add~4 json_core%add proc~json_add_integer_vec_by_path->none~add~4 none~create json_core%create proc~json_add_integer_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_integer_vec_by_path->none~create_array none~info~2 json_core%info proc~json_add_integer_vec_by_path->none~info~2 proc~json_value_replace json_core%json_value_replace proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index none~throw_exception json_core%throw_exception proc~json_create_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_create_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->proc~json_value_replace proc~convert->none~throw_exception none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_add_integer_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % json_add_integer_vec_by_path ( me , to_unicode ( path ), value , found , was_created ) end subroutine wrap_json_add_integer_vec_by_path","tags":"","loc":"proc/wrap_json_add_integer_vec_by_path.html"},{"title":"wrap_json_add_logical_by_path – JSON-Fortran","text":"private subroutine wrap_json_add_logical_by_path(json, me, path, value, found, was_created) Wrapper to json_add_logical_by_path where “path” is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_add_logical_by_path~~CallsGraph proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path interface~to_unicode to_unicode proc~wrap_json_add_logical_by_path->interface~to_unicode proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_logical_by_path->none~create none~create_logical json_core%create_logical proc~json_add_logical_by_path->none~create_logical none~info~2 json_core%info proc~json_add_logical_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_logical_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_logical_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_logical_by_path->proc~json_value_replace proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_logical json_core%json_value_create_logical none~create_logical->proc~json_value_create_logical proc~wrap_json_value_create_logical json_core%wrap_json_value_create_logical none~create_logical->proc~wrap_json_value_create_logical proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_create json_value_create proc~json_value_create_logical->proc~json_value_create proc~to_logical json_core%to_logical proc~json_value_create_logical->proc~to_logical none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_logical->interface~to_unicode proc~wrap_json_value_create_logical->none~create_logical proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_logical->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_add_logical_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % json_add_logical_by_path ( me , to_unicode ( path ), value , found , was_created ) end subroutine wrap_json_add_logical_by_path","tags":"","loc":"proc/wrap_json_add_logical_by_path.html"},{"title":"wrap_json_add_logical_vec_by_path – JSON-Fortran","text":"private subroutine wrap_json_add_logical_vec_by_path(json, me, path, value, found, was_created) Wrapper for json_add_logical_vec_by_path where “path” is kind=CDK). Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_add_logical_vec_by_path~~CallsGraph proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path interface~to_unicode to_unicode proc~wrap_json_add_logical_vec_by_path->interface~to_unicode proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add~4 json_core%add proc~json_add_logical_vec_by_path->none~add~4 none~create json_core%create proc~json_add_logical_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_logical_vec_by_path->none~create_array none~info~2 json_core%info proc~json_add_logical_vec_by_path->none~info~2 proc~json_value_replace json_core%json_value_replace proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index none~throw_exception json_core%throw_exception proc~json_create_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_create_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->proc~json_value_replace proc~convert->none~throw_exception none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_add_logical_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % json_add_logical_vec_by_path ( me , to_unicode ( path ), value , found , was_created ) end subroutine wrap_json_add_logical_vec_by_path","tags":"","loc":"proc/wrap_json_add_logical_vec_by_path.html"},{"title":"wrap_json_add_member_by_path – JSON-Fortran","text":"private subroutine wrap_json_add_member_by_path(json, me, path, p, found, was_created) Wrapper to json_add_member_by_path where “path” is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(in), pointer :: p the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_add_member_by_path~~CallsGraph proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path interface~to_unicode to_unicode proc~wrap_json_add_member_by_path->interface~to_unicode proc~json_add_member_by_path json_core%json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_member_by_path->none~create none~info~2 json_core%info proc~json_add_member_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_member_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_member_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_member_by_path->proc~json_value_replace proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_add_member_by_path ( json , me , path , p , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable type ( json_value ), pointer , intent ( in ) :: p !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % json_add_member_by_path ( me , to_unicode ( path ), p , found , was_created ) end subroutine wrap_json_add_member_by_path","tags":"","loc":"proc/wrap_json_add_member_by_path.html"},{"title":"wrap_json_add_real32_by_path – JSON-Fortran","text":"private subroutine wrap_json_add_real32_by_path(json, me, path, value, found, was_created) Wrapper to json_add_real32_by_path where “path” is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_add_real32_by_path~~CallsGraph proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path interface~to_unicode to_unicode proc~wrap_json_add_real32_by_path->interface~to_unicode none~add_by_path~2 json_core%add_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_add_real32_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % add_by_path ( me , to_unicode ( path ), real ( value , RK ), found , was_created ) end subroutine wrap_json_add_real32_by_path","tags":"","loc":"proc/wrap_json_add_real32_by_path.html"},{"title":"wrap_json_add_real32_vec_by_path – JSON-Fortran","text":"private subroutine wrap_json_add_real32_vec_by_path(json, me, path, value, found, was_created) Wrapper for json_add_real32_vec_by_path where “path” is kind=CDK). Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_add_real32_vec_by_path~~CallsGraph proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path interface~to_unicode to_unicode proc~wrap_json_add_real32_vec_by_path->interface~to_unicode none~add_by_path~2 json_core%add_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_add_real32_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % add_by_path ( me , to_unicode ( path ), real ( value , RK ), found , was_created ) end subroutine wrap_json_add_real32_vec_by_path","tags":"","loc":"proc/wrap_json_add_real32_vec_by_path.html"},{"title":"wrap_json_add_real_by_path – JSON-Fortran","text":"private subroutine wrap_json_add_real_by_path(json, me, path, value, found, was_created) Wrapper to json_add_real_by_path where “path” is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_add_real_by_path~~CallsGraph proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path interface~to_unicode to_unicode proc~wrap_json_add_real_by_path->interface~to_unicode proc~json_add_real_by_path json_core%json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_real_by_path->none~create none~create_real~2 json_core%create_real proc~json_add_real_by_path->none~create_real~2 none~info~2 json_core%info proc~json_add_real_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_real_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_real_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_real_by_path->proc~json_value_replace proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_real32 json_core%json_value_create_real32 none~create_real~2->proc~json_value_create_real32 proc~wrap_json_value_create_real32 json_core%wrap_json_value_create_real32 none~create_real~2->proc~wrap_json_value_create_real32 proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_create_real32->none~create_real~2 none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_real32->interface~to_unicode proc~wrap_json_value_create_real32->none~create_real~2 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_add_real_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % json_add_real_by_path ( me , to_unicode ( path ), value , found , was_created ) end subroutine wrap_json_add_real_by_path","tags":"","loc":"proc/wrap_json_add_real_by_path.html"},{"title":"wrap_json_add_real_vec_by_path – JSON-Fortran","text":"private subroutine wrap_json_add_real_vec_by_path(json, me, path, value, found, was_created) Wrapper for json_add_real_vec_by_path where “path” is kind=CDK). Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created Calls proc~~wrap_json_add_real_vec_by_path~~CallsGraph proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path interface~to_unicode to_unicode proc~wrap_json_add_real_vec_by_path->interface~to_unicode proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add~4 json_core%add proc~json_add_real_vec_by_path->none~add~4 none~create json_core%create proc~json_add_real_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_real_vec_by_path->none~create_array none~info~2 json_core%info proc~json_add_real_vec_by_path->none~info~2 proc~json_value_replace json_core%json_value_replace proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index none~throw_exception json_core%throw_exception proc~json_create_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_create_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->proc~json_value_replace proc~convert->none~throw_exception none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_add_real_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % json_add_real_vec_by_path ( me , to_unicode ( path ), value , found , was_created ) end subroutine wrap_json_add_real_vec_by_path","tags":"","loc":"proc/wrap_json_add_real_vec_by_path.html"},{"title":"wrap_json_add_string_by_path – JSON-Fortran","text":"private subroutine wrap_json_add_string_by_path(json, me, path, value, found, was_created, trim_str, adjustl_str) Wrapper to json_add_string_by_path where “path” is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element Calls proc~~wrap_json_add_string_by_path~~CallsGraph proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path interface~to_unicode to_unicode proc~wrap_json_add_string_by_path->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create json_core%create proc~json_add_string_by_path->none~create none~create_string json_core%create_string proc~json_add_string_by_path->none~create_string none~info~2 json_core%info proc~json_add_string_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_by_path->proc~json_value_replace proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string->proc~wrap_json_value_create_string proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_create json_value_create proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_string->interface~to_unicode proc~wrap_json_value_create_string->none~create_string proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_string->proc~destroy_json_data proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_add_string_by_path ( json , me , path , value , found ,& was_created , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element call json % json_add_string_by_path ( me , to_unicode ( path ), to_unicode ( value ),& found , was_created , trim_str , adjustl_str ) end subroutine wrap_json_add_string_by_path","tags":"","loc":"proc/wrap_json_add_string_by_path.html"},{"title":"wrap_json_add_string_vec_by_path – JSON-Fortran","text":"private subroutine wrap_json_add_string_vec_by_path(json, me, path, value, found, was_created, ilen, trim_str, adjustl_str) Wrapper for json_add_string_vec_by_path where “path” and “value” are kind=CDK). Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element Calls proc~~wrap_json_add_string_vec_by_path~~CallsGraph proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path interface~to_unicode to_unicode proc~wrap_json_add_string_vec_by_path->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~add~4 json_core%add proc~json_add_string_vec_by_path->none~add~4 none~create json_core%create proc~json_add_string_vec_by_path->none~create none~create_array json_core%create_array proc~json_add_string_vec_by_path->none~create_array none~info~2 json_core%info proc~json_add_string_vec_by_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_add_string_vec_by_path->none~throw_exception proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_add_string_vec_by_path->proc~json_clear_exceptions proc~json_value_replace json_core%json_value_replace proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_create_by_path->none~throw_exception proc~json_create_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_create_by_path->interface~to_unicode proc~wrap_json_create_by_path->none~create proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~json_value_create proc~json_get_by_path_default->proc~to_array none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_insert_after_child_by_index->none~get_child proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~create_array proc~convert->none~info~2 proc~convert->none~throw_exception proc~convert->proc~json_value_replace none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_add_string_vec_by_path ( json , me , path , value ,& found , was_created , ilen ,& trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created integer ( IK ), dimension (:), intent ( in ), optional :: ilen !! the string lengths of each !! element in `value`. If not present, !! the full `len(value)` string is added !! for each element. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element call json % json_add_string_vec_by_path ( me , to_unicode ( path ), to_unicode ( value ),& found , was_created , ilen , trim_str , adjustl_str ) end subroutine wrap_json_add_string_vec_by_path","tags":"","loc":"proc/wrap_json_add_string_vec_by_path.html"},{"title":"wrap_json_create_by_path – JSON-Fortran","text":"private subroutine wrap_json_create_by_path(json, me, path, p, found, was_created) Alternate version of json_create_by_path where “path” is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CDK, len=*), intent(in) :: path path to the variable type( json_value ), intent(out), optional, pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if there were no errors\n(variable found or created) logical(kind=LK), intent(out), optional :: was_created true if it was actually created\n(as opposed to already being there) Calls proc~~wrap_json_create_by_path~~CallsGraph proc~wrap_json_create_by_path json_core%wrap_json_create_by_path interface~to_unicode to_unicode proc~wrap_json_create_by_path->interface~to_unicode none~create json_core%create proc~wrap_json_create_by_path->none~create proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create->proc~wrap_json_create_by_path proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path none~throw_exception json_core%throw_exception proc~json_create_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_create_by_path->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_create_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~string_to_integer string_to_integer proc~json_get_by_path_default->proc~string_to_integer proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode none~get~2 json_core%get proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 proc~json_info_by_path->none~get~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_create_by_path~~CalledByGraph proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create json_core%create proc~wrap_json_create_by_path->none~create none~create->proc~wrap_json_create_by_path proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_create_by_path ( json , me , path , p , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me !! a JSON linked list character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable type ( json_value ), pointer , intent ( out ), optional :: p !! pointer to the variable !! specify by `path` logical ( LK ), intent ( out ), optional :: found !! true if there were no errors !! (variable found or created) logical ( LK ), intent ( out ), optional :: was_created !! true if it was actually created !! (as opposed to already being there) call json % create ( me , to_unicode ( path ), p , found , was_created ) end subroutine wrap_json_create_by_path","tags":"","loc":"proc/wrap_json_create_by_path.html"},{"title":"wrap_json_get_alloc_string_vec_by_path – JSON-Fortran","text":"private subroutine wrap_json_get_alloc_string_vec_by_path(json, me, path, vec, ilen, found, default, default_ilen) Alternate version of json_get_alloc_string_vec_by_path , where “path” is kind=CDK Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default integer(kind=IK), intent(in), optional, dimension(:) :: default_ilen the actual\nlength of default Calls proc~~wrap_json_get_alloc_string_vec_by_path~~CallsGraph proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path interface~to_unicode to_unicode proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode none~get~2 json_core%get proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_get_alloc_string_vec_by_path~~CalledByGraph proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2 json_core%get proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_get_alloc_string_vec_by_path ( json , me , path , vec , ilen , found , default , default_ilen ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path character ( kind = CK , len = :), dimension (:), allocatable , intent ( out ) :: vec integer ( IK ), dimension (:), allocatable , intent ( out ) :: ilen !! the actual length !! of each character !! string in the array logical ( LK ), intent ( out ), optional :: found character ( kind = CK , len =* ), dimension (:), intent ( in ), optional :: default integer ( IK ), dimension (:), intent ( in ), optional :: default_ilen !! the actual !! length of `default` call json % get ( me , to_unicode ( path ), vec , ilen , found , default , default_ilen ) end subroutine wrap_json_get_alloc_string_vec_by_path","tags":"","loc":"proc/wrap_json_get_alloc_string_vec_by_path.html"},{"title":"wrap_json_get_array_by_path – JSON-Fortran","text":"private recursive subroutine wrap_json_get_array_by_path(json, me, path, array_callback, found) Alternate version of json_get_array_by_path , where “path” is kind=CDK Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path procedure( json_array_callback_func ) :: array_callback logical(kind=LK), intent(out), optional :: found Calls proc~~wrap_json_get_array_by_path~~CallsGraph proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path interface~to_unicode to_unicode proc~wrap_json_get_array_by_path->interface~to_unicode none~get~2 json_core%get proc~wrap_json_get_array_by_path->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get~2->proc~wrap_json_get_array_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_get_array_by_path~~CalledByGraph proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2 json_core%get proc~wrap_json_get_array_by_path->none~get~2 none~get~2->proc~wrap_json_get_array_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code recursive subroutine wrap_json_get_array_by_path ( json , me , path , array_callback , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path procedure ( json_array_callback_func ) :: array_callback logical ( LK ), intent ( out ), optional :: found call json % get ( me , to_unicode ( path ), array_callback , found ) end subroutine wrap_json_get_array_by_path","tags":"","loc":"proc/wrap_json_get_array_by_path.html"},{"title":"wrap_json_get_by_path – JSON-Fortran","text":"private subroutine wrap_json_get_by_path(json, me, path, p, found) Alternate version of json_get_by_path where “path” is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path type( json_value ), intent(out), pointer :: p logical(kind=LK), intent(out), optional :: found Calls proc~~wrap_json_get_by_path~~CallsGraph proc~wrap_json_get_by_path json_core%wrap_json_get_by_path interface~to_unicode to_unicode proc~wrap_json_get_by_path->interface~to_unicode none~get~2 json_core%get proc~wrap_json_get_by_path->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get~2->proc~wrap_json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_get_by_path~~CalledByGraph proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2 json_core%get proc~wrap_json_get_by_path->none~get~2 none~get~2->proc~wrap_json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_get_by_path ( json , me , path , p , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path type ( json_value ), pointer , intent ( out ) :: p logical ( LK ), intent ( out ), optional :: found call json % get ( me , to_unicode ( path ), p , found ) end subroutine wrap_json_get_by_path","tags":"","loc":"proc/wrap_json_get_by_path.html"},{"title":"wrap_json_get_integer_by_path – JSON-Fortran","text":"private subroutine wrap_json_get_integer_by_path(json, me, path, value, found, default) Alternate version of json_get_integer_by_path , where “path” is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path integer(kind=IK), intent(out) :: value logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(in), optional :: default default value if not found Calls proc~~wrap_json_get_integer_by_path~~CallsGraph proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path interface~to_unicode to_unicode proc~wrap_json_get_integer_by_path->interface~to_unicode none~get~2 json_core%get proc~wrap_json_get_integer_by_path->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get~2->proc~wrap_json_get_integer_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_get_integer_by_path~~CalledByGraph proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2 json_core%get proc~wrap_json_get_integer_by_path->none~get~2 none~get~2->proc~wrap_json_get_integer_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_get_integer_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path integer ( IK ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found integer ( IK ), intent ( in ), optional :: default !! default value if not found call json % get ( me , to_unicode ( path ), value , found , default ) end subroutine wrap_json_get_integer_by_path","tags":"","loc":"proc/wrap_json_get_integer_by_path.html"},{"title":"wrap_json_get_integer_vec_by_path – JSON-Fortran","text":"private subroutine wrap_json_get_integer_vec_by_path(json, me, path, vec, found, default) Alternate version of json_get_integer_vec_by_path , where “path” is kind=CDK Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path integer(kind=IK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(in), optional, dimension(:) :: default default value if not found Calls proc~~wrap_json_get_integer_vec_by_path~~CallsGraph proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path interface~to_unicode to_unicode proc~wrap_json_get_integer_vec_by_path->interface~to_unicode none~get~2 json_core%get proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get~2->proc~wrap_json_get_integer_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_get_integer_vec_by_path~~CalledByGraph proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2 json_core%get proc~wrap_json_get_integer_vec_by_path->none~get~2 none~get~2->proc~wrap_json_get_integer_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_get_integer_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CDK , len =* ), intent ( in ) :: path integer ( IK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found integer ( IK ), dimension (:), intent ( in ), optional :: default !! default value if not found call json % get ( me , path = to_unicode ( path ), vec = vec , found = found , default = default ) end subroutine wrap_json_get_integer_vec_by_path","tags":"","loc":"proc/wrap_json_get_integer_vec_by_path.html"},{"title":"wrap_json_get_logical_by_path – JSON-Fortran","text":"private subroutine wrap_json_get_logical_by_path(json, me, path, value, found, default) Alternate version of json_get_logical_by_path , where “path” is kind=CDK Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path logical(kind=LK), intent(out) :: value logical(kind=LK), intent(out), optional :: found logical(kind=LK), intent(in), optional :: default default value if not found Calls proc~~wrap_json_get_logical_by_path~~CallsGraph proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path interface~to_unicode to_unicode proc~wrap_json_get_logical_by_path->interface~to_unicode none~get~2 json_core%get proc~wrap_json_get_logical_by_path->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get~2->proc~wrap_json_get_logical_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_get_logical_by_path~~CalledByGraph proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2 json_core%get proc~wrap_json_get_logical_by_path->none~get~2 none~get~2->proc~wrap_json_get_logical_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_get_logical_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path logical ( LK ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found logical ( LK ), intent ( in ), optional :: default !! default value if not found call json % get ( me , to_unicode ( path ), value , found , default ) end subroutine wrap_json_get_logical_by_path","tags":"","loc":"proc/wrap_json_get_logical_by_path.html"},{"title":"wrap_json_get_logical_vec_by_path – JSON-Fortran","text":"private subroutine wrap_json_get_logical_vec_by_path(json, me, path, vec, found, default) Alternate version of json_get_logical_vec_by_path , where “path” is kind=CDK Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path logical(kind=LK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found logical(kind=LK), intent(in), optional, dimension(:) :: default Calls proc~~wrap_json_get_logical_vec_by_path~~CallsGraph proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path interface~to_unicode to_unicode proc~wrap_json_get_logical_vec_by_path->interface~to_unicode none~get~2 json_core%get proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get~2->proc~wrap_json_get_logical_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_get_logical_vec_by_path~~CalledByGraph proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2 json_core%get proc~wrap_json_get_logical_vec_by_path->none~get~2 none~get~2->proc~wrap_json_get_logical_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_get_logical_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path logical ( LK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found logical ( LK ), dimension (:), intent ( in ), optional :: default call json % get ( me , to_unicode ( path ), vec , found , default ) end subroutine wrap_json_get_logical_vec_by_path","tags":"","loc":"proc/wrap_json_get_logical_vec_by_path.html"},{"title":"wrap_json_get_path – JSON-Fortran","text":"private subroutine wrap_json_get_path(json, p, path, found, use_alt_array_tokens, path_sep) Wrapper for json_get_path where “path” and “path_sep” are kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list object character(kind=CDK, len=:), intent(out), allocatable :: path path to the variable logical(kind=LK), intent(out), optional :: found true if there were no problems logical(kind=LK), intent(in), optional :: use_alt_array_tokens if true, then ‘()’ are used\nfor array elements otherwise,\n‘[]’ are used [default] character(kind=CDK, len=1), intent(in), optional :: path_sep character to use for path\nseparator (default is ‘.’) Calls proc~~wrap_json_get_path~~CallsGraph proc~wrap_json_get_path json_core%wrap_json_get_path interface~to_unicode to_unicode proc~wrap_json_get_path->interface~to_unicode none~get_path json_core%get_path proc~wrap_json_get_path->none~get_path proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get_path->proc~wrap_json_get_path proc~json_get_path json_core%json_get_path none~get_path->proc~json_get_path none~info~2 json_core%info proc~json_get_path->none~info~2 none~throw_exception json_core%throw_exception proc~json_get_path->none~throw_exception proc~encode_rfc6901 encode_rfc6901 proc~json_get_path->proc~encode_rfc6901 proc~integer_to_string integer_to_string proc~json_get_path->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_path->proc~json_clear_exceptions proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~replace_string replace_string proc~encode_rfc6901->proc~replace_string proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_alloc_string_vec_by_path->none~get~2 proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_array_by_path->none~get~2 proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~json_get_string->proc~integer_to_string proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->proc~flag_not_found proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~get~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_get_path~~CalledByGraph proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path json_core%get_path proc~wrap_json_get_path->none~get_path none~get_path->proc~wrap_json_get_path proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_get_path ( json , p , path , found , use_alt_array_tokens , path_sep ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! a JSON linked list object character ( kind = CDK , len = :), allocatable , intent ( out ) :: path !! path to the variable logical ( LK ), intent ( out ), optional :: found !! true if there were no problems logical ( LK ), intent ( in ), optional :: use_alt_array_tokens !! if true, then '()' are used !! for array elements otherwise, !! '[]' are used [default] character ( kind = CDK , len = 1 ), intent ( in ), optional :: path_sep !! character to use for path !! separator (default is '.') character ( kind = CK , len = :), allocatable :: ck_path !! path to the variable ! call the main routine: if ( present ( path_sep )) then call json % get_path ( p , ck_path , found , use_alt_array_tokens , to_unicode ( path_sep )) else call json % get_path ( p , ck_path , found , use_alt_array_tokens ) end if ! from unicode: path = ck_path end subroutine wrap_json_get_path","tags":"","loc":"proc/wrap_json_get_path.html"},{"title":"wrap_json_get_real32_by_path – JSON-Fortran","text":"private subroutine wrap_json_get_real32_by_path(json, me, path, value, found, default) Alternate version of json_get_real32_by_path , where “path” is kind=CDK Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path real(kind=real32), intent(out) :: value logical(kind=LK), intent(out), optional :: found real(kind=real32), intent(in), optional :: default default value if not found Calls proc~~wrap_json_get_real32_by_path~~CallsGraph proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path interface~to_unicode to_unicode proc~wrap_json_get_real32_by_path->interface~to_unicode none~get~2 json_core%get proc~wrap_json_get_real32_by_path->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get~2->proc~wrap_json_get_real32_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_get_real32_by_path~~CalledByGraph proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2 json_core%get proc~wrap_json_get_real32_by_path->none~get~2 none~get~2->proc~wrap_json_get_real32_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_get_real32_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CDK , len =* ), intent ( in ) :: path real ( real32 ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found real ( real32 ), intent ( in ), optional :: default !! default value if not found call json % get ( me , to_unicode ( path ), value , found , default ) end subroutine wrap_json_get_real32_by_path","tags":"","loc":"proc/wrap_json_get_real32_by_path.html"},{"title":"wrap_json_get_real32_vec_by_path – JSON-Fortran","text":"private subroutine wrap_json_get_real32_vec_by_path(json, me, path, vec, found, default) Alternate version of json_get_real32_vec_by_path , where “path” is kind=CDK Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path real(kind=real32), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found real(kind=real32), intent(in), optional, dimension(:) :: default default value if not found Calls proc~~wrap_json_get_real32_vec_by_path~~CallsGraph proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path interface~to_unicode to_unicode proc~wrap_json_get_real32_vec_by_path->interface~to_unicode none~get~2 json_core%get proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get~2->proc~wrap_json_get_real32_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_get_real32_vec_by_path~~CalledByGraph proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2 json_core%get proc~wrap_json_get_real32_vec_by_path->none~get~2 none~get~2->proc~wrap_json_get_real32_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_get_real32_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CDK , len =* ), intent ( in ) :: path real ( real32 ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found real ( real32 ), dimension (:), intent ( in ), optional :: default !! default value if not found call json % get ( me , to_unicode ( path ), vec , found , default ) end subroutine wrap_json_get_real32_vec_by_path","tags":"","loc":"proc/wrap_json_get_real32_vec_by_path.html"},{"title":"wrap_json_get_real_by_path – JSON-Fortran","text":"private subroutine wrap_json_get_real_by_path(json, me, path, value, found, default) Alternate version of json_get_real_by_path , where “path” is kind=CDK Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path real(kind=RK), intent(out) :: value logical(kind=LK), intent(out), optional :: found real(kind=RK), intent(in), optional :: default default value if not found Calls proc~~wrap_json_get_real_by_path~~CallsGraph proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path interface~to_unicode to_unicode proc~wrap_json_get_real_by_path->interface~to_unicode none~get~2 json_core%get proc~wrap_json_get_real_by_path->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get~2->proc~wrap_json_get_real_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_get_real_by_path~~CalledByGraph proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2 json_core%get proc~wrap_json_get_real_by_path->none~get~2 none~get~2->proc~wrap_json_get_real_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_get_real_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CDK , len =* ), intent ( in ) :: path real ( RK ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found real ( RK ), intent ( in ), optional :: default !! default value if not found call json % get ( me , to_unicode ( path ), value , found , default ) end subroutine wrap_json_get_real_by_path","tags":"","loc":"proc/wrap_json_get_real_by_path.html"},{"title":"wrap_json_get_real_vec_by_path – JSON-Fortran","text":"private subroutine wrap_json_get_real_vec_by_path(json, me, path, vec, found, default) Alternate version of json_get_real_vec_by_path , where “path” is kind=CDK Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path real(kind=RK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found real(kind=RK), intent(in), optional, dimension(:) :: default default value if not found Calls proc~~wrap_json_get_real_vec_by_path~~CallsGraph proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path interface~to_unicode to_unicode proc~wrap_json_get_real_vec_by_path->interface~to_unicode none~get~2 json_core%get proc~wrap_json_get_real_vec_by_path->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get~2->proc~wrap_json_get_real_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_get_real_vec_by_path~~CalledByGraph proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2 json_core%get proc~wrap_json_get_real_vec_by_path->none~get~2 none~get~2->proc~wrap_json_get_real_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_get_real_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CDK , len =* ), intent ( in ) :: path real ( RK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found real ( RK ), dimension (:), intent ( in ), optional :: default !! default value if not found call json % get ( me , to_unicode ( path ), vec , found , default ) end subroutine wrap_json_get_real_vec_by_path","tags":"","loc":"proc/wrap_json_get_real_vec_by_path.html"},{"title":"wrap_json_get_string_by_path – JSON-Fortran","text":"private subroutine wrap_json_get_string_by_path(json, me, path, value, found, default) Alternate version of json_get_string_by_path , where “path” is kind=CDK Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=:), intent(out), allocatable :: value logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional :: default Calls proc~~wrap_json_get_string_by_path~~CallsGraph proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path interface~to_unicode to_unicode proc~wrap_json_get_string_by_path->interface~to_unicode none~get~2 json_core%get proc~wrap_json_get_string_by_path->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get~2->proc~wrap_json_get_string_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_get_string_by_path~~CalledByGraph proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2 json_core%get proc~wrap_json_get_string_by_path->none~get~2 none~get~2->proc~wrap_json_get_string_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_get_string_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path character ( kind = CK , len = :), allocatable , intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found character ( kind = CK , len =* ), intent ( in ), optional :: default call json % get ( me , to_unicode ( path ), value , found , default ) end subroutine wrap_json_get_string_by_path","tags":"","loc":"proc/wrap_json_get_string_by_path.html"},{"title":"wrap_json_get_string_vec_by_path – JSON-Fortran","text":"private subroutine wrap_json_get_string_vec_by_path(json, me, path, vec, found, default) Alternate version of json_get_string_vec_by_path , where “path” is kind=CDK Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default Calls proc~~wrap_json_get_string_vec_by_path~~CallsGraph proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path interface~to_unicode to_unicode proc~wrap_json_get_string_vec_by_path->interface~to_unicode none~get~2 json_core%get proc~wrap_json_get_string_vec_by_path->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_get_string_vec_by_path~~CalledByGraph proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2 json_core%get proc~wrap_json_get_string_vec_by_path->none~get~2 none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_get_string_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path character ( kind = CK , len =* ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found character ( kind = CK , len =* ), dimension (:), intent ( in ), optional :: default call json % get ( me , to_unicode ( path ), vec , found , default ) end subroutine wrap_json_get_string_vec_by_path","tags":"","loc":"proc/wrap_json_get_string_vec_by_path.html"},{"title":"wrap_json_info_by_path – JSON-Fortran","text":"private subroutine wrap_json_info_by_path(json, p, path, found, var_type, n_children, name) Alternate version of json_info_by_path where “path” is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list character(kind=CDK, len=*), intent(in) :: path path to the variable logical(kind=LK), intent(out), optional :: found true if it was found integer(kind=IK), intent(out), optional :: var_type variable type integer(kind=IK), intent(out), optional :: n_children number of children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name Calls proc~~wrap_json_info_by_path~~CallsGraph proc~wrap_json_info_by_path json_core%wrap_json_info_by_path interface~to_unicode to_unicode proc~wrap_json_info_by_path->interface~to_unicode none~info~2 json_core%info proc~wrap_json_info_by_path->none~info~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~info~2->proc~wrap_json_info_by_path proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path none~throw_exception json_core%throw_exception proc~json_info->none~throw_exception proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~info~2 proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_info_by_path~~CalledByGraph proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2 json_core%info proc~wrap_json_info_by_path->none~info~2 none~info~2->proc~wrap_json_info_by_path proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_info_by_path->none~info~2 none~get~2 json_core%get proc~json_info_by_path->none~get~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info json_core%json_matrix_info proc~json_matrix_info->none~info~2 none~get_child json_core%get_child proc~json_matrix_info->none~get_child proc~json_string_info json_core%json_string_info proc~json_string_info->none~info~2 proc~json_string_info->none~get~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 none~get_path json_core%get_path none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~matrix_info~2 json_core%matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~string_info json_core%string_info none~string_info->proc~json_string_info proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_path proc~json_check_children_for_duplicate_keys->none~get_child proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec->none~get~2 proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_matrix_info_by_path->none~get~2 proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_variable_info->none~info proc~wrap_json_get_path->none~get_path proc~wrap_json_matrix_info_by_path->none~matrix_info~2 none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2->proc~json_get_alloc_string_vec none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~insert_after->proc~json_value_insert_after_child_by_index none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_value_replace->none~insert_after proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_info_by_path ( json , p , path , found , var_type , n_children , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! a JSON linked list character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable logical ( LK ), intent ( out ), optional :: found !! true if it was found integer ( IK ), intent ( out ), optional :: var_type !! variable type integer ( IK ), intent ( out ), optional :: n_children !! number of children character ( kind = CK , len = :), allocatable , intent ( out ), optional :: name !! variable name call json % info ( p , to_unicode ( path ), found , var_type , n_children , name ) end subroutine wrap_json_info_by_path","tags":"","loc":"proc/wrap_json_info_by_path.html"},{"title":"wrap_json_matrix_info_by_path – JSON-Fortran","text":"private subroutine wrap_json_matrix_info_by_path(json, p, path, is_matrix, found, var_type, n_sets, set_size, name) Alternate version of json_matrix_info_by_path where “path” is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a JSON linked list 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\nthe matrix (if all elements have\nthe same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name Calls proc~~wrap_json_matrix_info_by_path~~CallsGraph proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path interface~to_unicode to_unicode proc~wrap_json_matrix_info_by_path->interface~to_unicode none~matrix_info~2 json_core%matrix_info proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~matrix_info~2->proc~wrap_json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path none~get_child json_core%get_child proc~json_matrix_info->none~get_child none~info~2 json_core%info proc~json_matrix_info->none~info~2 none~throw_exception json_core%throw_exception proc~json_matrix_info->none~throw_exception proc~json_matrix_info_by_path->none~matrix_info~2 none~get~2 json_core%get proc~json_matrix_info_by_path->none~get~2 proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_matrix_info_by_path->proc~json_clear_exceptions proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_clear_exceptions proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~get_child proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~convert->none~info~2 proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_matrix_info_by_path~~CalledByGraph proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2 json_core%matrix_info proc~wrap_json_matrix_info_by_path->none~matrix_info~2 none~matrix_info~2->proc~wrap_json_matrix_info_by_path proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_matrix_info_by_path->none~matrix_info~2 none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info->none~matrix_info Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_matrix_info_by_path ( json , p , path , is_matrix , found ,& var_type , n_sets , set_size , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! a JSON linked list 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 json % matrix_info ( p , to_unicode ( path ), is_matrix , found , var_type , n_sets , set_size , name ) end subroutine wrap_json_matrix_info_by_path","tags":"","loc":"proc/wrap_json_matrix_info_by_path.html"},{"title":"wrap_json_parse_string – JSON-Fortran","text":"private subroutine wrap_json_parse_string(json, p, str) Alternate version of json_parse_string , where str is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p output structure character(kind=CDK, len=*), intent(in) :: str string with JSON data Calls proc~~wrap_json_parse_string~~CallsGraph proc~wrap_json_parse_string json_core%wrap_json_parse_string interface~to_unicode to_unicode proc~wrap_json_parse_string->interface~to_unicode none~deserialize~2 json_core%deserialize proc~wrap_json_parse_string->none~deserialize~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~deserialize~2->proc~wrap_json_parse_string proc~json_parse_string json_core%json_parse_string none~deserialize~2->proc~json_parse_string none~throw_exception json_core%throw_exception proc~json_parse_string->none~throw_exception proc~annotate_invalid_json json_core%annotate_invalid_json proc~json_parse_string->proc~annotate_invalid_json proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_initialize json_core%json_initialize proc~json_parse_string->proc~json_initialize proc~json_parse_end json_core%json_parse_end proc~json_parse_string->proc~json_parse_end proc~json_prepare_parser json_core%json_prepare_parser proc~json_parse_string->proc~json_prepare_parser proc~json_value_create json_value_create proc~json_parse_string->proc~json_value_create proc~parse_value json_core%parse_value proc~json_parse_string->proc~parse_value proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~get_current_line_from_file_sequential json_core%get_current_line_from_file_sequential proc~annotate_invalid_json->proc~get_current_line_from_file_sequential proc~get_current_line_from_file_stream json_core%get_current_line_from_file_stream proc~annotate_invalid_json->proc~get_current_line_from_file_stream proc~integer_to_string integer_to_string proc~annotate_invalid_json->proc~integer_to_string proc~json_traverse json_core%json_traverse proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_initialize->none~throw_exception proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions proc~json_parse_end->none~throw_exception proc~pop_char json_core%pop_char proc~json_parse_end->proc~pop_char proc~parse_value->none~throw_exception proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_for_chars json_core%parse_for_chars proc~parse_value->proc~parse_for_chars proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~parse_string json_core%parse_string proc~parse_value->proc~parse_string proc~parse_value->proc~pop_char proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~to_array json_core%to_array proc~parse_value->proc~to_array proc~to_logical json_core%to_logical proc~parse_value->proc~to_logical proc~to_null json_core%to_null proc~parse_value->proc~to_null proc~to_object json_core%to_object proc~parse_value->proc~to_object proc~to_string json_core%to_string proc~parse_value->proc~to_string proc~json_traverse->none~throw_exception proc~parse_array->none~throw_exception proc~parse_array->proc~json_value_create proc~parse_array->proc~parse_value proc~parse_array->proc~pop_char none~add~4 json_core%add proc~parse_array->none~add~4 none~destroy~3 json_core%destroy proc~parse_array->none~destroy~3 proc~parse_for_chars->none~throw_exception proc~parse_for_chars->proc~pop_char proc~parse_number->proc~json_clear_exceptions proc~parse_number->proc~pop_char proc~parse_number->proc~push_char proc~string_to_dble json_core%string_to_dble proc~parse_number->proc~string_to_dble proc~string_to_int json_core%string_to_int proc~parse_number->proc~string_to_int proc~to_integer json_core%to_integer proc~parse_number->proc~to_integer proc~to_real json_core%to_real proc~parse_number->proc~to_real proc~parse_object->none~throw_exception proc~parse_object->proc~json_value_create proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~pop_char proc~parse_object->none~add~4 proc~parse_object->none~destroy~3 proc~parse_string->none~throw_exception proc~parse_string->proc~pop_char proc~unescape_string unescape_string proc~parse_string->proc~unescape_string proc~push_char->none~throw_exception proc~push_char->proc~integer_to_string proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_logical->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~to_string->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~string_to_dble->none~throw_exception proc~string_to_real string_to_real proc~string_to_dble->proc~string_to_real proc~string_to_int->none~throw_exception proc~string_to_integer string_to_integer proc~string_to_int->proc~string_to_integer proc~to_integer->proc~destroy_json_data proc~to_real->proc~destroy_json_data proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_destroy->none~destroy~3 proc~json_value_destroy->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_parse_string~~CalledByGraph proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2 json_core%deserialize proc~wrap_json_parse_string->none~deserialize~2 none~deserialize~2->proc~wrap_json_parse_string proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_parse_string ( json , p , str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! output structure character ( kind = CDK , len =* ), intent ( in ) :: str !! string with JSON data call json % deserialize ( p , to_unicode ( str )) end subroutine wrap_json_parse_string","tags":"","loc":"proc/wrap_json_parse_string.html"},{"title":"wrap_json_rename_by_path – JSON-Fortran","text":"private subroutine wrap_json_rename_by_path(json, me, path, name, found) Alternate version of json_rename_by_path , where “path” and “name” are kind=CDK Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CDK, len=*), intent(in) :: name logical(kind=LK), intent(out), optional :: found Calls proc~~wrap_json_rename_by_path~~CallsGraph proc~wrap_json_rename_by_path json_core%wrap_json_rename_by_path interface~to_unicode to_unicode proc~wrap_json_rename_by_path->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_rename_by_path ( json , me , path , name , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path character ( kind = CDK , len =* ), intent ( in ) :: name logical ( LK ), intent ( out ), optional :: found call json % rename ( me , to_unicode ( path ), to_unicode ( name ), found ) end subroutine wrap_json_rename_by_path","tags":"","loc":"proc/wrap_json_rename_by_path.html"},{"title":"wrap_json_throw_exception – JSON-Fortran","text":"private subroutine wrap_json_throw_exception(json, msg, found) Alternate version of json_throw_exception , where msg is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CDK, len=*), intent(in) :: msg the error message logical(kind=LK), intent(inout), optional :: found if the caller is handling the\nexception with an optimal return\nargument. If so, json%stop_on_error is ignored. Calls proc~~wrap_json_throw_exception~~CallsGraph proc~wrap_json_throw_exception json_core%wrap_json_throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode none~throw_exception json_core%throw_exception proc~wrap_json_throw_exception->none~throw_exception proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~throw_exception->proc~wrap_json_throw_exception proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_throw_exception~~CalledByGraph proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception json_core%throw_exception proc~wrap_json_throw_exception->none~throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~convert json_core%convert proc~convert->none~throw_exception none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~throw_exception none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~throw_exception proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~throw_exception proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~throw_exception proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~throw_exception proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~throw_exception none~get_child json_core%get_child proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_count json_core%json_count proc~json_count->none~throw_exception proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->none~throw_exception proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_file_move_pointer json_file%json_file_move_pointer proc~json_file_move_pointer->none~throw_exception none~initialize json_file%initialize proc~json_file_move_pointer->none~initialize proc~json_file_print_to_unit json_file%json_file_print_to_unit proc~json_file_print_to_unit->none~throw_exception proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path proc~json_get_alloc_string_vec_by_path->none~throw_exception none~get~2 json_core%get proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array json_core%json_get_array proc~json_get_array->none~throw_exception proc~json_get_array_by_path json_core%json_get_array_by_path proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->none~get_child proc~json_get_integer json_core%json_get_integer proc~json_get_integer->none~throw_exception proc~json_get_integer_by_path json_core%json_get_integer_by_path proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical json_core%json_get_logical proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path json_core%json_get_logical_by_path proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_next json_core%json_get_next proc~json_get_next->none~throw_exception proc~json_get_parent json_core%json_get_parent proc~json_get_parent->none~throw_exception proc~json_get_path json_core%json_get_path proc~json_get_path->none~throw_exception proc~json_get_path->none~info~2 proc~json_get_previous json_core%json_get_previous proc~json_get_previous->none~throw_exception proc~json_get_real json_core%json_get_real proc~json_get_real->none~throw_exception proc~json_get_real_by_path json_core%json_get_real_by_path proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string json_core%json_get_string proc~json_get_string->none~throw_exception proc~json_get_string_by_path json_core%json_get_string_by_path proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->none~get~2 proc~json_get_tail json_core%json_get_tail proc~json_get_tail->none~throw_exception proc~json_info json_core%json_info proc~json_info->none~throw_exception proc~json_initialize json_core%json_initialize proc~json_initialize->none~throw_exception proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~throw_exception proc~json_is_vector->none~info~2 proc~json_matrix_info json_core%json_matrix_info proc~json_matrix_info->none~throw_exception proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_parse_end json_core%json_parse_end proc~json_parse_end->none~throw_exception proc~json_parse_file json_core%json_parse_file proc~json_parse_file->none~throw_exception proc~json_parse_file->proc~json_initialize proc~json_parse_file->proc~json_parse_end proc~parse_value json_core%parse_value proc~json_parse_file->proc~parse_value proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_file->proc~json_check_all_for_duplicate_keys proc~json_parse_string json_core%json_parse_string proc~json_parse_string->none~throw_exception proc~json_parse_string->proc~json_initialize proc~json_parse_string->proc~json_parse_end proc~json_parse_string->proc~parse_value proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_print_to_filename json_core%json_print_to_filename proc~json_print_to_filename->none~throw_exception proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->none~throw_exception proc~json_value_print json_core%json_value_print proc~json_print_to_unit->proc~json_value_print proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~throw_exception proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~throw_exception proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_traverse json_core%json_traverse proc~json_traverse->none~throw_exception proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~throw_exception proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~throw_exception proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~throw_exception proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~throw_exception proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~throw_exception proc~json_value_add_member->none~info~2 proc~json_value_get_child json_core%json_value_get_child proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index json_core%json_value_get_child_by_index proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_name json_core%json_value_get_child_by_name proc~json_value_get_child_by_name->none~throw_exception proc~json_value_print->none~throw_exception proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~json_value_swap json_core%json_value_swap proc~json_value_swap->none~throw_exception proc~json_value_is_child_of json_core%json_value_is_child_of proc~json_value_swap->proc~json_value_is_child_of proc~json_value_validate json_core%json_value_validate proc~json_value_validate->none~throw_exception proc~json_value_validate->proc~json_check_all_for_duplicate_keys proc~parse_array json_core%parse_array proc~parse_array->none~throw_exception proc~parse_array->proc~parse_value proc~parse_for_chars json_core%parse_for_chars proc~parse_for_chars->none~throw_exception proc~parse_object json_core%parse_object proc~parse_object->none~throw_exception proc~parse_object->proc~parse_object proc~parse_string json_core%parse_string proc~parse_object->proc~parse_string proc~parse_object->proc~parse_value proc~parse_string->none~throw_exception proc~parse_value->none~throw_exception proc~parse_value->proc~parse_array proc~parse_value->proc~parse_for_chars proc~parse_value->proc~parse_object proc~parse_value->proc~parse_string proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~push_char->none~throw_exception proc~string_to_dble json_core%string_to_dble proc~string_to_dble->none~throw_exception proc~string_to_int json_core%string_to_int proc~string_to_int->none~throw_exception none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~get_child->proc~json_value_get_child none~get_child->proc~json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~get~2->proc~json_get_alloc_string_vec_by_path none~get~2->proc~json_get_array none~get~2->proc~json_get_array_by_path none~get~2->proc~json_get_by_path none~get~2->proc~json_get_integer none~get~2->proc~json_get_integer_by_path none~get~2->proc~json_get_integer_vec_by_path none~get~2->proc~json_get_logical none~get~2->proc~json_get_logical_by_path none~get~2->proc~json_get_logical_vec_by_path none~get~2->proc~json_get_real none~get~2->proc~json_get_real_by_path none~get~2->proc~json_get_real_vec_by_path none~get~2->proc~json_get_string none~get~2->proc~json_get_string_by_path none~get~2->proc~json_get_string_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~load~2 json_core%load none~load~2->proc~json_parse_file none~matrix_info~2 json_core%matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~string_info json_core%string_info none~string_info->proc~json_string_info proc~initialize_json_core initialize_json_core proc~initialize_json_core->proc~json_initialize proc~initialize_json_core_in_file json_file%initialize_json_core_in_file proc~initialize_json_core_in_file->proc~json_initialize proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_file_traverse json_file%json_file_traverse proc~json_file_traverse->proc~json_traverse proc~json_value_is_child_of->proc~json_traverse proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~parse_number->proc~push_char proc~parse_number->proc~string_to_dble proc~parse_number->proc~string_to_int proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path interface~json_core json_core interface~json_core->proc~initialize_json_core none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~initialize->proc~initialize_json_core_in_file proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_alloc_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~string_info proc~json_get_integer_vec->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path->none~get~2 proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_path->none~get_path proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_parse_string->none~deserialize~2 proc~wrap_json_value_get_child_by_name->none~get~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~initialize_json_file initialize_json_file proc~initialize_json_file->none~initialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~initialize proc~initialize_json_file_from_string->none~deserialize proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path interface~json_file json_file interface~json_file->proc~initialize_json_file interface~json_file->proc~initialize_json_file_from_string proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string_v2->none~deserialize proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_value_replace->none~insert_after proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_file_load_from_string->none~deserialize proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_throw_exception ( json , msg , found ) implicit none class ( json_core ), intent ( inout ) :: json character ( kind = CDK , len =* ), intent ( in ) :: msg !! the error message logical ( LK ), intent ( inout ), optional :: found !! if the caller is handling the !! exception with an optimal return !! argument. If so, `json%stop_on_error` !! is ignored. call json % throw_exception ( to_unicode ( msg ), found ) end subroutine wrap_json_throw_exception","tags":"","loc":"proc/wrap_json_throw_exception.html"},{"title":"wrap_json_update_integer – JSON-Fortran","text":"private subroutine wrap_json_update_integer(json, p, path, val, found) Alternate version of json_update_integer , where path is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure integer(kind=IK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. Calls proc~~wrap_json_update_integer~~CallsGraph proc~wrap_json_update_integer json_core%wrap_json_update_integer interface~to_unicode to_unicode proc~wrap_json_update_integer->interface~to_unicode none~update~4 json_core%update proc~wrap_json_update_integer->none~update~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_update_string_name_ascii json_core%json_update_string_name_ascii none~update~4->proc~json_update_string_name_ascii proc~json_update_string_val_ascii json_core%json_update_string_val_ascii none~update~4->proc~json_update_string_val_ascii proc~json_update_string_name_ascii->interface~to_unicode proc~json_update_string_name_ascii->none~update~4 proc~json_update_string_val_ascii->interface~to_unicode proc~json_update_string_val_ascii->none~update~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_update_integer ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable in the structure integer ( IK ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. call json % update ( p , to_unicode ( path ), val , found ) end subroutine wrap_json_update_integer","tags":"","loc":"proc/wrap_json_update_integer.html"},{"title":"wrap_json_update_logical – JSON-Fortran","text":"private subroutine wrap_json_update_logical(json, p, path, val, found) Alternate version of json_update_logical , where path is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure logical(kind=LK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. Calls proc~~wrap_json_update_logical~~CallsGraph proc~wrap_json_update_logical json_core%wrap_json_update_logical interface~to_unicode to_unicode proc~wrap_json_update_logical->interface~to_unicode none~update~4 json_core%update proc~wrap_json_update_logical->none~update~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_update_string_name_ascii json_core%json_update_string_name_ascii none~update~4->proc~json_update_string_name_ascii proc~json_update_string_val_ascii json_core%json_update_string_val_ascii none~update~4->proc~json_update_string_val_ascii proc~json_update_string_name_ascii->interface~to_unicode proc~json_update_string_name_ascii->none~update~4 proc~json_update_string_val_ascii->interface~to_unicode proc~json_update_string_val_ascii->none~update~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_update_logical ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable in the structure logical ( LK ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. call json % update ( p , to_unicode ( path ), val , found ) end subroutine wrap_json_update_logical","tags":"","loc":"proc/wrap_json_update_logical.html"},{"title":"wrap_json_update_real – JSON-Fortran","text":"private subroutine wrap_json_update_real(json, p, path, val, found) Alternate version of json_update_real , where path is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure real(kind=RK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. Calls proc~~wrap_json_update_real~~CallsGraph proc~wrap_json_update_real json_core%wrap_json_update_real interface~to_unicode to_unicode proc~wrap_json_update_real->interface~to_unicode none~update~4 json_core%update proc~wrap_json_update_real->none~update~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_update_string_name_ascii json_core%json_update_string_name_ascii none~update~4->proc~json_update_string_name_ascii proc~json_update_string_val_ascii json_core%json_update_string_val_ascii none~update~4->proc~json_update_string_val_ascii proc~json_update_string_name_ascii->interface~to_unicode proc~json_update_string_name_ascii->none~update~4 proc~json_update_string_val_ascii->interface~to_unicode proc~json_update_string_val_ascii->none~update~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_update_real ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable in the structure real ( RK ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. call json % update ( p , to_unicode ( path ), val , found ) end subroutine wrap_json_update_real","tags":"","loc":"proc/wrap_json_update_real.html"},{"title":"wrap_json_update_real32 – JSON-Fortran","text":"private subroutine wrap_json_update_real32(json, p, path, val, found) Alternate version of json_update_real32 , where path is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure real(kind=real32), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. Calls proc~~wrap_json_update_real32~~CallsGraph proc~wrap_json_update_real32 json_core%wrap_json_update_real32 interface~to_unicode to_unicode proc~wrap_json_update_real32->interface~to_unicode none~update~4 json_core%update proc~wrap_json_update_real32->none~update~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_update_string_name_ascii json_core%json_update_string_name_ascii none~update~4->proc~json_update_string_name_ascii proc~json_update_string_val_ascii json_core%json_update_string_val_ascii none~update~4->proc~json_update_string_val_ascii proc~json_update_string_name_ascii->interface~to_unicode proc~json_update_string_name_ascii->none~update~4 proc~json_update_string_val_ascii->interface~to_unicode proc~json_update_string_val_ascii->none~update~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_update_real32 ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable in the structure real ( real32 ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. call json % update ( p , to_unicode ( path ), real ( val , RK ), found ) end subroutine wrap_json_update_real32","tags":"","loc":"proc/wrap_json_update_real32.html"},{"title":"wrap_json_update_string – JSON-Fortran","text":"private subroutine wrap_json_update_string(json, p, path, val, found, trim_str, adjustl_str) Alternate version of json_update_string , where path and value are kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure character(kind=CDK, len=*), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) Calls proc~~wrap_json_update_string~~CallsGraph proc~wrap_json_update_string json_core%wrap_json_update_string interface~to_unicode to_unicode proc~wrap_json_update_string->interface~to_unicode none~update~4 json_core%update proc~wrap_json_update_string->none~update~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_update_string_name_ascii json_core%json_update_string_name_ascii none~update~4->proc~json_update_string_name_ascii proc~json_update_string_val_ascii json_core%json_update_string_val_ascii none~update~4->proc~json_update_string_val_ascii proc~json_update_string_name_ascii->interface~to_unicode proc~json_update_string_name_ascii->none~update~4 proc~json_update_string_val_ascii->interface~to_unicode proc~json_update_string_val_ascii->none~update~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_update_string ( json , p , path , val , found , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable in the structure character ( kind = CDK , len =* ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` !! (only used if `val` is present) logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (only used if `val` is present) !! (note that ADJUSTL is done before TRIM) call json % update ( p , to_unicode ( path ), to_unicode ( val ), found , trim_str , adjustl_str ) end subroutine wrap_json_update_string","tags":"","loc":"proc/wrap_json_update_string.html"},{"title":"wrap_json_value_add_integer – JSON-Fortran","text":"private subroutine wrap_json_value_add_integer(json, p, name, val) Alternate version of json_value_add_integer where name is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable integer(kind=IK), intent(in) :: val value Calls proc~~wrap_json_value_add_integer~~CallsGraph proc~wrap_json_value_add_integer json_core%wrap_json_value_add_integer interface~to_unicode to_unicode proc~wrap_json_value_add_integer->interface~to_unicode none~add~4 json_core%add proc~wrap_json_value_add_integer->none~add~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_add_integer ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! name of the variable integer ( IK ), intent ( in ) :: val !! value call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_integer","tags":"","loc":"proc/wrap_json_value_add_integer.html"},{"title":"wrap_json_value_add_integer_vec – JSON-Fortran","text":"private subroutine wrap_json_value_add_integer_vec(json, p, name, val) Alternate version of json_value_add_integer_vec where name is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable integer(kind=IK), intent(in), dimension(:) :: val value Calls proc~~wrap_json_value_add_integer_vec~~CallsGraph proc~wrap_json_value_add_integer_vec json_core%wrap_json_value_add_integer_vec interface~to_unicode to_unicode proc~wrap_json_value_add_integer_vec->interface~to_unicode none~add~4 json_core%add proc~wrap_json_value_add_integer_vec->none~add~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_add_integer_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! name of the variable integer ( IK ), dimension (:), intent ( in ) :: val !! value call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_integer_vec","tags":"","loc":"proc/wrap_json_value_add_integer_vec.html"},{"title":"wrap_json_value_add_logical – JSON-Fortran","text":"private subroutine wrap_json_value_add_logical(json, p, name, val) Alternate version of json_value_add_logical where name is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable logical(kind=LK), intent(in) :: val value Calls proc~~wrap_json_value_add_logical~~CallsGraph proc~wrap_json_value_add_logical json_core%wrap_json_value_add_logical interface~to_unicode to_unicode proc~wrap_json_value_add_logical->interface~to_unicode none~add~4 json_core%add proc~wrap_json_value_add_logical->none~add~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_add_logical ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! name of the variable logical ( LK ), intent ( in ) :: val !! value call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_logical","tags":"","loc":"proc/wrap_json_value_add_logical.html"},{"title":"wrap_json_value_add_logical_vec – JSON-Fortran","text":"private subroutine wrap_json_value_add_logical_vec(json, p, name, val) Alternate version of json_value_add_logical_vec where name is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable logical(kind=LK), intent(in), dimension(:) :: val value Calls proc~~wrap_json_value_add_logical_vec~~CallsGraph proc~wrap_json_value_add_logical_vec json_core%wrap_json_value_add_logical_vec interface~to_unicode to_unicode proc~wrap_json_value_add_logical_vec->interface~to_unicode none~add~4 json_core%add proc~wrap_json_value_add_logical_vec->none~add~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_add_logical_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! name of the variable logical ( LK ), dimension (:), intent ( in ) :: val !! value call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_logical_vec","tags":"","loc":"proc/wrap_json_value_add_logical_vec.html"},{"title":"wrap_json_value_add_null – JSON-Fortran","text":"private subroutine wrap_json_value_add_null(json, p, name) Alternate version of json_value_add_null where name is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable Calls proc~~wrap_json_value_add_null~~CallsGraph proc~wrap_json_value_add_null json_core%wrap_json_value_add_null interface~to_unicode to_unicode proc~wrap_json_value_add_null->interface~to_unicode none~add~4 json_core%add proc~wrap_json_value_add_null->none~add~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_add_null ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! name of the variable call json % add ( p , to_unicode ( name )) end subroutine wrap_json_value_add_null","tags":"","loc":"proc/wrap_json_value_add_null.html"},{"title":"wrap_json_value_add_real – JSON-Fortran","text":"private subroutine wrap_json_value_add_real(json, p, name, val) Alternate version of json_value_add_real where name is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name variable name real(kind=RK), intent(in) :: val real value Calls proc~~wrap_json_value_add_real~~CallsGraph proc~wrap_json_value_add_real json_core%wrap_json_value_add_real interface~to_unicode to_unicode proc~wrap_json_value_add_real->interface~to_unicode none~add~4 json_core%add proc~wrap_json_value_add_real->none~add~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_add_real ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! variable name real ( RK ), intent ( in ) :: val !! real value call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_real","tags":"","loc":"proc/wrap_json_value_add_real.html"},{"title":"wrap_json_value_add_real32 – JSON-Fortran","text":"private subroutine wrap_json_value_add_real32(json, p, name, val) Alternate version of json_value_add_real32 where name is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name variable name real(kind=real32), intent(in) :: val real value Calls proc~~wrap_json_value_add_real32~~CallsGraph proc~wrap_json_value_add_real32 json_core%wrap_json_value_add_real32 interface~to_unicode to_unicode proc~wrap_json_value_add_real32->interface~to_unicode none~add~4 json_core%add proc~wrap_json_value_add_real32->none~add~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_add_real32 ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! variable name real ( real32 ), intent ( in ) :: val !! real value call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_real32","tags":"","loc":"proc/wrap_json_value_add_real32.html"},{"title":"wrap_json_value_add_real32_vec – JSON-Fortran","text":"private subroutine wrap_json_value_add_real32_vec(json, p, name, val) Alternate version of json_value_add_real32_vec where name is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name real(kind=real32), intent(in), dimension(:) :: val Calls proc~~wrap_json_value_add_real32_vec~~CallsGraph proc~wrap_json_value_add_real32_vec json_core%wrap_json_value_add_real32_vec interface~to_unicode to_unicode proc~wrap_json_value_add_real32_vec->interface~to_unicode none~add~4 json_core%add proc~wrap_json_value_add_real32_vec->none~add~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_add_real32_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name real ( real32 ), dimension (:), intent ( in ) :: val call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_real32_vec","tags":"","loc":"proc/wrap_json_value_add_real32_vec.html"},{"title":"wrap_json_value_add_real_vec – JSON-Fortran","text":"private subroutine wrap_json_value_add_real_vec(json, p, name, val) Alternate version of json_value_add_real_vec where name is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name real(kind=RK), intent(in), dimension(:) :: val Calls proc~~wrap_json_value_add_real_vec~~CallsGraph proc~wrap_json_value_add_real_vec json_core%wrap_json_value_add_real_vec interface~to_unicode to_unicode proc~wrap_json_value_add_real_vec->interface~to_unicode none~add~4 json_core%add proc~wrap_json_value_add_real_vec->none~add~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_add_real_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name real ( RK ), dimension (:), intent ( in ) :: val call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_real_vec","tags":"","loc":"proc/wrap_json_value_add_real_vec.html"},{"title":"wrap_json_value_add_string – JSON-Fortran","text":"private subroutine wrap_json_value_add_string(json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string where name and val are kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable character(kind=CDK, len=*), intent(in) :: val value logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val Calls proc~~wrap_json_value_add_string~~CallsGraph proc~wrap_json_value_add_string json_core%wrap_json_value_add_string interface~to_unicode to_unicode proc~wrap_json_value_add_string->interface~to_unicode none~add~4 json_core%add proc~wrap_json_value_add_string->none~add~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_add_string ( json , p , name , val , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! name of the variable character ( kind = CDK , len =* ), intent ( in ) :: val !! value logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` call json % add ( p , to_unicode ( name ), to_unicode ( val ), trim_str , adjustl_str ) end subroutine wrap_json_value_add_string","tags":"","loc":"proc/wrap_json_value_add_string.html"},{"title":"wrap_json_value_add_string_vec – JSON-Fortran","text":"private subroutine wrap_json_value_add_string_vec(json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string_vec where name and val are kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name character(kind=CDK, len=*), intent(in), dimension(:) :: val logical(kind=LK), intent(in), optional :: trim_str logical(kind=LK), intent(in), optional :: adjustl_str Calls proc~~wrap_json_value_add_string_vec~~CallsGraph proc~wrap_json_value_add_string_vec json_core%wrap_json_value_add_string_vec interface~to_unicode to_unicode proc~wrap_json_value_add_string_vec->interface~to_unicode none~add~4 json_core%add proc~wrap_json_value_add_string_vec->none~add~4 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_add_string_vec ( json , p , name , val , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name character ( kind = CDK , len =* ), dimension (:), intent ( in ) :: val logical ( LK ), intent ( in ), optional :: trim_str logical ( LK ), intent ( in ), optional :: adjustl_str call json % add ( p , to_unicode ( name ), to_unicode ( val ), trim_str , adjustl_str ) end subroutine wrap_json_value_add_string_vec","tags":"","loc":"proc/wrap_json_value_add_string_vec.html"},{"title":"wrap_json_value_create_array – JSON-Fortran","text":"private subroutine wrap_json_value_create_array(json, p, name) A wrapper for json_value_create_array so that create_array method may be\ncalled with an actual argument, corresponding to the dummy argument name ,\nthat is either of ‘DEFAULT’ or ‘ISO_10646’ character kind. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name Calls proc~~wrap_json_value_create_array~~CallsGraph proc~wrap_json_value_create_array json_core%wrap_json_value_create_array interface~to_unicode to_unicode proc~wrap_json_value_create_array->interface~to_unicode none~create_array json_core%create_array proc~wrap_json_value_create_array->none~create_array proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create_array->proc~wrap_json_value_create_array proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~json_value_create json_value_create proc~json_value_create_array->proc~json_value_create proc~to_array json_core%to_array proc~json_value_create_array->proc~to_array proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_value_create_array~~CalledByGraph proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array json_core%create_array proc~wrap_json_value_create_array->none~create_array none~create_array->proc~wrap_json_value_create_array proc~convert json_core%convert proc~convert->none~create_array none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create_array none~create json_core%create proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create_array proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create_array proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_value_add_integer_vec json_core%json_value_add_integer_vec proc~json_value_add_integer_vec->none~create_array proc~json_value_add_logical_vec json_core%json_value_add_logical_vec proc~json_value_add_logical_vec->none~create_array proc~json_value_add_real_vec json_core%json_value_add_real_vec proc~json_value_add_real_vec->none~create_array proc~json_value_add_string_vec json_core%json_value_add_string_vec proc~json_value_add_string_vec->none~create_array proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~convert none~get_child json_core%get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_path_ascii proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_create_array ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name call json % create_array ( p , to_unicode ( name )) end subroutine wrap_json_value_create_array","tags":"","loc":"proc/wrap_json_value_create_array.html"},{"title":"wrap_json_value_create_integer – JSON-Fortran","text":"private subroutine wrap_json_value_create_integer(json, p, val, name) A wrapper procedure for json_value_create_integer so that create_integer method may be called with either a ‘DEFAULT’ or ‘ISO_10646’ character kind name actual argument. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name Calls proc~~wrap_json_value_create_integer~~CallsGraph proc~wrap_json_value_create_integer json_core%wrap_json_value_create_integer interface~to_unicode to_unicode proc~wrap_json_value_create_integer->interface~to_unicode none~create_integer json_core%create_integer proc~wrap_json_value_create_integer->none~create_integer proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create_integer->proc~wrap_json_value_create_integer proc~json_value_create_integer json_core%json_value_create_integer none~create_integer->proc~json_value_create_integer proc~json_value_create json_value_create proc~json_value_create_integer->proc~json_value_create proc~to_integer json_core%to_integer proc~json_value_create_integer->proc~to_integer proc~destroy_json_data destroy_json_data proc~to_integer->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_value_create_integer~~CalledByGraph proc~wrap_json_value_create_integer json_core%wrap_json_value_create_integer none~create_integer json_core%create_integer proc~wrap_json_value_create_integer->none~create_integer none~create_integer->proc~wrap_json_value_create_integer proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create_integer proc~json_value_add_integer json_core%json_value_add_integer proc~json_value_add_integer->none~create_integer proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_create_integer ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p integer ( IK ), intent ( in ) :: val character ( kind = CDK , len =* ), intent ( in ) :: name call json % create_integer ( p , val , to_unicode ( name )) end subroutine wrap_json_value_create_integer","tags":"","loc":"proc/wrap_json_value_create_integer.html"},{"title":"wrap_json_value_create_logical – JSON-Fortran","text":"private subroutine wrap_json_value_create_logical(json, p, val, name) Wrapper for json_value_create_logical so create_logical method can\nbe called with name of character kind ‘DEFAULT’ or ‘ISO_10646’ Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p logical(kind=LK), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name Calls proc~~wrap_json_value_create_logical~~CallsGraph proc~wrap_json_value_create_logical json_core%wrap_json_value_create_logical interface~to_unicode to_unicode proc~wrap_json_value_create_logical->interface~to_unicode none~create_logical json_core%create_logical proc~wrap_json_value_create_logical->none~create_logical proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create_logical->proc~wrap_json_value_create_logical proc~json_value_create_logical json_core%json_value_create_logical none~create_logical->proc~json_value_create_logical proc~json_value_create json_value_create proc~json_value_create_logical->proc~json_value_create proc~to_logical json_core%to_logical proc~json_value_create_logical->proc~to_logical proc~destroy_json_data destroy_json_data proc~to_logical->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_value_create_logical~~CalledByGraph proc~wrap_json_value_create_logical json_core%wrap_json_value_create_logical none~create_logical json_core%create_logical proc~wrap_json_value_create_logical->none~create_logical none~create_logical->proc~wrap_json_value_create_logical proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create_logical proc~json_value_add_logical json_core%json_value_add_logical proc~json_value_add_logical->none~create_logical proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_create_logical ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p logical ( LK ), intent ( in ) :: val character ( kind = CDK , len =* ), intent ( in ) :: name call json % create_logical ( p , val , to_unicode ( name )) end subroutine wrap_json_value_create_logical","tags":"","loc":"proc/wrap_json_value_create_logical.html"},{"title":"wrap_json_value_create_null – JSON-Fortran","text":"private subroutine wrap_json_value_create_null(json, p, name) Wrap json_value_create_null so that create_null method may be called with\nan actual argument corresponding to the dummy argument name that is either\nof ‘DEFAULT’ or ‘ISO_10646’ character kind. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name Calls proc~~wrap_json_value_create_null~~CallsGraph proc~wrap_json_value_create_null json_core%wrap_json_value_create_null interface~to_unicode to_unicode proc~wrap_json_value_create_null->interface~to_unicode none~create_null json_core%create_null proc~wrap_json_value_create_null->none~create_null proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create_null->proc~wrap_json_value_create_null proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~json_value_create json_value_create proc~json_value_create_null->proc~json_value_create proc~to_null json_core%to_null proc~json_value_create_null->proc~to_null proc~destroy_json_data destroy_json_data proc~to_null->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_value_create_null~~CalledByGraph proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null json_core%create_null proc~wrap_json_value_create_null->none~create_null none~create_null->proc~wrap_json_value_create_null proc~convert json_core%convert proc~convert->none~create_null none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_value_add_null json_core%json_value_add_null proc~json_value_add_null->none~create_null proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~convert none~get_child json_core%get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_create_null ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name call json % create_null ( p , to_unicode ( name )) end subroutine wrap_json_value_create_null","tags":"","loc":"proc/wrap_json_value_create_null.html"},{"title":"wrap_json_value_create_object – JSON-Fortran","text":"private subroutine wrap_json_value_create_object(json, p, name) Wrap json_value_create_object so that create_object method may be called\nwith an actual argument corresponding to the dummy argument name that is of\neither ‘DEFAULT’ or ‘ISO_10646’ character kind. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name Calls proc~~wrap_json_value_create_object~~CallsGraph proc~wrap_json_value_create_object json_core%wrap_json_value_create_object interface~to_unicode to_unicode proc~wrap_json_value_create_object->interface~to_unicode none~create_object json_core%create_object proc~wrap_json_value_create_object->none~create_object proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create_object->proc~wrap_json_value_create_object proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~json_value_create json_value_create proc~json_value_create_object->proc~json_value_create proc~to_object json_core%to_object proc~json_value_create_object->proc~to_object proc~destroy_json_data destroy_json_data proc~to_object->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_value_create_object~~CalledByGraph proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object json_core%create_object proc~wrap_json_value_create_object->none~create_object none~create_object->proc~wrap_json_value_create_object proc~convert json_core%convert proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~create_object none~add_by_path~2 json_core%add_by_path proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~create_object proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~create_object proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~create_object proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~create_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~create_object proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~create_object proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~create_object proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->none~create_object proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->none~create_object proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~create_object proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~convert none~get_child json_core%get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_create_object ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name call json % create_object ( p , to_unicode ( name )) end subroutine wrap_json_value_create_object","tags":"","loc":"proc/wrap_json_value_create_object.html"},{"title":"wrap_json_value_create_real – JSON-Fortran","text":"private subroutine wrap_json_value_create_real(json, p, val, name) A wrapper for json_value_create_real so that create_real method\nmay be called with an actual argument corresponding to the dummy argument, name that may be of ‘DEFAULT’ or ‘ISO_10646’ character kind. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=RK), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name Calls proc~~wrap_json_value_create_real~~CallsGraph proc~wrap_json_value_create_real json_core%wrap_json_value_create_real interface~to_unicode to_unicode proc~wrap_json_value_create_real->interface~to_unicode none~create_real~2 json_core%create_real proc~wrap_json_value_create_real->none~create_real~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_value_create_real32 json_core%json_value_create_real32 none~create_real~2->proc~json_value_create_real32 proc~wrap_json_value_create_real32 json_core%wrap_json_value_create_real32 none~create_real~2->proc~wrap_json_value_create_real32 proc~json_value_create_real32->none~create_real~2 proc~wrap_json_value_create_real32->interface~to_unicode proc~wrap_json_value_create_real32->none~create_real~2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_create_real ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p real ( RK ), intent ( in ) :: val character ( kind = CDK , len =* ), intent ( in ) :: name call json % create_real ( p , val , to_unicode ( name )) end subroutine wrap_json_value_create_real","tags":"","loc":"proc/wrap_json_value_create_real.html"},{"title":"wrap_json_value_create_real32 – JSON-Fortran","text":"private subroutine wrap_json_value_create_real32(json, p, val, name) Alternate version of json_value_create_real32 where “name” is kind(CDK). Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=real32), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name Calls proc~~wrap_json_value_create_real32~~CallsGraph proc~wrap_json_value_create_real32 json_core%wrap_json_value_create_real32 interface~to_unicode to_unicode proc~wrap_json_value_create_real32->interface~to_unicode none~create_real~2 json_core%create_real proc~wrap_json_value_create_real32->none~create_real~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create_real~2->proc~wrap_json_value_create_real32 proc~json_value_create_real32 json_core%json_value_create_real32 none~create_real~2->proc~json_value_create_real32 proc~json_value_create_real32->none~create_real~2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_value_create_real32~~CalledByGraph proc~wrap_json_value_create_real32 json_core%wrap_json_value_create_real32 none~create_real~2 json_core%create_real proc~wrap_json_value_create_real32->none~create_real~2 none~create_real~2->proc~wrap_json_value_create_real32 proc~json_value_create_real32 json_core%json_value_create_real32 none~create_real~2->proc~json_value_create_real32 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create_real~2 proc~json_value_add_real json_core%json_value_add_real proc~json_value_add_real->none~create_real~2 proc~json_value_create_real32->none~create_real~2 proc~wrap_json_value_create_real json_core%wrap_json_value_create_real proc~wrap_json_value_create_real->none~create_real~2 proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_create_real32 ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p real ( real32 ), intent ( in ) :: val character ( kind = CDK , len =* ), intent ( in ) :: name call json % create_real ( p , val , to_unicode ( name )) end subroutine wrap_json_value_create_real32","tags":"","loc":"proc/wrap_json_value_create_real32.html"},{"title":"wrap_json_value_create_string – JSON-Fortran","text":"private subroutine wrap_json_value_create_string(json, p, val, name, trim_str, adjustl_str) Wrap json_value_create_string so that create_string method may be called\nwith actual character string arguments for name and val that are BOTH of\n‘DEFAULT’ or ‘ISO_10646’ character kind. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val Calls proc~~wrap_json_value_create_string~~CallsGraph proc~wrap_json_value_create_string json_core%wrap_json_value_create_string interface~to_unicode to_unicode proc~wrap_json_value_create_string->interface~to_unicode none~create_string json_core%create_string proc~wrap_json_value_create_string->none~create_string proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~create_string->proc~wrap_json_value_create_string proc~json_value_create_string json_core%json_value_create_string none~create_string->proc~json_value_create_string proc~json_value_create json_value_create proc~json_value_create_string->proc~json_value_create proc~to_string json_core%to_string proc~json_value_create_string->proc~to_string proc~destroy_json_data destroy_json_data proc~to_string->proc~destroy_json_data Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_value_create_string~~CalledByGraph proc~wrap_json_value_create_string json_core%wrap_json_value_create_string none~create_string json_core%create_string proc~wrap_json_value_create_string->none~create_string none~create_string->proc~wrap_json_value_create_string proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create_string proc~json_value_add_string json_core%json_value_add_string proc~json_value_add_string->none~create_string proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path none~add_by_path~2 json_core%add_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_create_string ( json , p , val , name , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: val character ( kind = CDK , len =* ), intent ( in ) :: name logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` call json % create_string ( p , to_unicode ( val ), to_unicode ( name ), trim_str , adjustl_str ) end subroutine wrap_json_value_create_string","tags":"","loc":"proc/wrap_json_value_create_string.html"},{"title":"wrap_json_value_get_child_by_name – JSON-Fortran","text":"private subroutine wrap_json_value_get_child_by_name(json, p, name, child, found) Alternate version of json_value_get_child_by_name where name is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CDK, len=*), intent(in) :: name type( json_value ), pointer :: child logical(kind=LK), intent(out), optional :: found Calls proc~~wrap_json_value_get_child_by_name~~CallsGraph proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name interface~to_unicode to_unicode proc~wrap_json_value_get_child_by_name->interface~to_unicode none~get~2 json_core%get proc~wrap_json_value_get_child_by_name->none~get~2 proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii none~get_child->proc~wrap_json_value_get_child_by_name proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~destroy_json_data destroy_json_data proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~json_value_remove json_core%json_value_remove proc~json_value_replace->proc~json_value_remove proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string proc~json_value_destroy->proc~destroy_json_data proc~json_value_destroy->none~destroy~3 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_value_get_child_by_name~~CalledByGraph proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get~2 json_core%get proc~wrap_json_value_get_child_by_name->none~get~2 none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_matrix_info json_core%json_matrix_info proc~json_matrix_info->none~get_child none~info~2 json_core%info proc~json_matrix_info->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info~2 json_core%matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_matrix_info_by_path->none~get~2 proc~json_value_replace json_core%json_value_replace proc~json_value_replace->none~insert_after proc~wrap_json_matrix_info_by_path->none~matrix_info~2 none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~convert->proc~json_value_replace proc~convert->none~info~2 proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_member_by_path->none~info~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_by_path->none~info~2 proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~info~2 proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_by_path->none~info~2 proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~info~2 proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_file_variable_matrix_info->none~matrix_info none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_get_child_by_name ( json , p , name , child , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p character ( kind = CDK , len =* ), intent ( in ) :: name type ( json_value ), pointer :: child logical ( LK ), intent ( out ), optional :: found call json % get ( p , to_unicode ( name ), child , found ) end subroutine wrap_json_value_get_child_by_name","tags":"","loc":"proc/wrap_json_value_get_child_by_name.html"},{"title":"wrap_json_value_remove_if_present – JSON-Fortran","text":"private subroutine wrap_json_value_remove_if_present(json, p, path) Alternate version of json_value_remove_if_present , where path is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path Calls proc~~wrap_json_value_remove_if_present~~CallsGraph proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present interface~to_unicode to_unicode proc~wrap_json_value_remove_if_present->interface~to_unicode none~remove_if_present json_core%remove_if_present proc~wrap_json_value_remove_if_present->none~remove_if_present proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec none~remove_if_present->proc~wrap_json_value_remove_if_present proc~json_value_remove_if_present json_core%json_value_remove_if_present none~remove_if_present->proc~json_value_remove_if_present none~get~2 json_core%get proc~json_value_remove_if_present->none~get~2 proc~json_value_remove json_core%json_value_remove proc~json_value_remove_if_present->proc~json_value_remove proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path none~destroy~3 json_core%destroy proc~json_value_remove->none~destroy~3 proc~destroy_json_core json_core%destroy_json_core none~destroy~3->proc~destroy_json_core proc~json_value_destroy json_core%json_value_destroy none~destroy~3->proc~json_value_destroy proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 none~throw_exception json_core%throw_exception proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~flag_not_found flag_not_found proc~json_get_alloc_string_vec_by_path->proc~flag_not_found proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_get_alloc_string_vec_by_path->proc~json_clear_exceptions proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_array_by_path->proc~json_clear_exceptions proc~json_get_by_path->none~throw_exception proc~integer_to_string integer_to_string proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_clear_exceptions proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_integer->none~throw_exception proc~string_to_integer string_to_integer proc~json_get_integer->proc~string_to_integer proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_by_path->proc~flag_not_found proc~json_get_integer_by_path->proc~json_clear_exceptions proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_integer_vec_by_path->proc~flag_not_found proc~json_get_integer_vec_by_path->proc~json_clear_exceptions proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_by_path->proc~flag_not_found proc~json_get_logical_by_path->proc~json_clear_exceptions proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_logical_vec_by_path->proc~flag_not_found proc~json_get_logical_vec_by_path->proc~json_clear_exceptions proc~json_get_real->none~throw_exception proc~string_to_real string_to_real proc~json_get_real->proc~string_to_real proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_by_path->proc~flag_not_found proc~json_get_real_by_path->proc~json_clear_exceptions proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_real_vec_by_path->proc~flag_not_found proc~json_get_real_vec_by_path->proc~json_clear_exceptions proc~json_get_string->none~throw_exception proc~escape_string escape_string proc~json_get_string->proc~escape_string proc~json_get_string->proc~integer_to_string proc~real_to_string real_to_string proc~json_get_string->proc~real_to_string proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_by_path->proc~flag_not_found proc~json_get_string_by_path->proc~json_clear_exceptions proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_string_vec_by_path->proc~flag_not_found proc~json_get_string_vec_by_path->proc~json_clear_exceptions proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~json_string_info json_core%json_string_info none~string_info->proc~json_string_info proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_default->proc~json_clear_exceptions proc~json_get_by_path_default->proc~string_to_integer none~add~4 json_core%add proc~json_get_by_path_default->none~add~4 none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_value_create json_value_create proc~json_get_by_path_default->proc~json_value_create proc~to_array json_core%to_array proc~json_get_by_path_default->proc~to_array proc~to_null json_core%to_null proc~json_get_by_path_default->proc~to_null proc~to_object json_core%to_object proc~json_get_by_path_default->proc~to_object proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~json_clear_exceptions proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_jsonpath_bracket->proc~json_value_create proc~json_get_by_path_jsonpath_bracket->proc~to_null proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_by_path_rfc6901->proc~json_clear_exceptions proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 proc~json_value_destroy->none~destroy~3 proc~destroy_json_data destroy_json_data proc~json_value_destroy->proc~destroy_json_data proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_name_ascii proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_val_ascii proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii none~add~4->proc~json_value_add_string_vec_val_ascii proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~convert->none~throw_exception none~create_array json_core%create_array proc~convert->none~create_array none~create_null json_core%create_null proc~convert->none~create_null none~create_object json_core%create_object proc~convert->none~create_object none~info~2 json_core%info proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string proc~json_string_info->none~get~2 proc~json_string_info->none~throw_exception proc~json_string_info->proc~json_clear_exceptions proc~json_string_info->none~info~2 proc~to_array->proc~destroy_json_data proc~to_null->proc~destroy_json_data proc~to_object->proc~destroy_json_data proc~wrap_json_throw_exception->interface~to_unicode proc~wrap_json_throw_exception->none~throw_exception proc~json_value_create_array json_core%json_value_create_array none~create_array->proc~json_value_create_array proc~wrap_json_value_create_array json_core%wrap_json_value_create_array none~create_array->proc~wrap_json_value_create_array proc~json_value_create_null json_core%json_value_create_null none~create_null->proc~json_value_create_null proc~wrap_json_value_create_null json_core%wrap_json_value_create_null none~create_null->proc~wrap_json_value_create_null proc~json_value_create_object json_core%json_value_create_object none~create_object->proc~json_value_create_object proc~wrap_json_value_create_object json_core%wrap_json_value_create_object none~create_object->proc~wrap_json_value_create_object proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path proc~json_value_add_string_name_ascii->interface~to_unicode proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_index->proc~json_clear_exceptions proc~json_value_get_child_by_name->none~throw_exception proc~json_value_get_child_by_name->proc~json_clear_exceptions proc~name_equal json_core%name_equal proc~json_value_get_child_by_name->proc~name_equal proc~json_value_replace->proc~json_value_remove none~insert_after json_core%insert_after proc~json_value_replace->none~insert_after proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~json_value_insert_after json_core%json_value_insert_after none~insert_after->proc~json_value_insert_after proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index none~insert_after->proc~json_value_insert_after_child_by_index proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_value_create_array->proc~json_value_create proc~json_value_create_array->proc~to_array proc~json_value_create_null->proc~json_value_create proc~json_value_create_null->proc~to_null proc~json_value_create_object->proc~json_value_create proc~json_value_create_object->proc~to_object proc~name_strings_equal json_core%name_strings_equal proc~name_equal->proc~name_strings_equal proc~wrap_json_info_by_path->interface~to_unicode proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_value_create_array->interface~to_unicode proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_null->interface~to_unicode proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~json_value_insert_after_child_by_index->none~get_child proc~json_value_insert_after_child_by_index->none~insert_after proc~lowercase_string lowercase_string proc~name_strings_equal->proc~lowercase_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~wrap_json_value_remove_if_present~~CalledByGraph proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present json_core%remove_if_present proc~wrap_json_value_remove_if_present->none~remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove proc~wrap_json_file_remove->none~remove Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_remove_if_present ( json , p , path ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: path call json % remove_if_present ( p , to_unicode ( path )) end subroutine wrap_json_value_remove_if_present","tags":"","loc":"proc/wrap_json_value_remove_if_present.html"},{"title":"wrap_json_value_rename – JSON-Fortran","text":"private subroutine wrap_json_value_rename(json, p, name) Alternate version of json_value_rename , where name is kind=CDK. Type Bound json_core Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CDK, len=*), intent(in) :: name new variable name Calls proc~~wrap_json_value_rename~~CallsGraph proc~wrap_json_value_rename json_core%wrap_json_value_rename interface~to_unicode to_unicode proc~wrap_json_value_rename->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine wrap_json_value_rename ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! new variable name call json % rename ( p , to_unicode ( name )) end subroutine wrap_json_value_rename","tags":"","loc":"proc/wrap_json_value_rename.html"},{"title":"json_core – JSON-Fortran","text":"public interface json_core Structure constructor to initialize a json_core object Example type ( json_file ) :: json_core json_core = json_core () Calls interface~~json_core~~CallsGraph interface~json_core json_core proc~initialize_json_core initialize_json_core interface~json_core->proc~initialize_json_core proc~json_initialize json_core%json_initialize proc~initialize_json_core->proc~json_initialize none~throw_exception json_core%throw_exception proc~json_initialize->none~throw_exception proc~integer_to_string integer_to_string proc~json_initialize->proc~integer_to_string proc~json_clear_exceptions json_core%json_clear_exceptions proc~json_initialize->proc~json_clear_exceptions proc~json_throw_exception json_core%json_throw_exception none~throw_exception->proc~json_throw_exception proc~wrap_json_throw_exception json_core%wrap_json_throw_exception none~throw_exception->proc~wrap_json_throw_exception proc~wrap_json_throw_exception->none~throw_exception interface~to_unicode to_unicode proc~wrap_json_throw_exception->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Module Procedures private function initialize_json_core (verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) result(json_core_object) Author Jacob Williams Date 4/26/2016 Function constructor for a json_core .\n This is just a wrapper for json_initialize . Read more… Arguments Type Intent Optional Attributes Name logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Return Value type( json_core )","tags":"","loc":"interface/json_core.html"},{"title":"decode_rfc6901 – JSON-Fortran","text":"public pure function decode_rfc6901(str) result(str_out) Decode a string from the “ JSON Pointer” RFC 6901 format. It replaces ~1 with / and ~0 with ~ . Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str Return Value character(kind=CK, len=:), allocatable Calls proc~~decode_rfc6901~~CallsGraph proc~decode_rfc6901 decode_rfc6901 proc~replace_string replace_string proc~decode_rfc6901->proc~replace_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~decode_rfc6901~~CalledByGraph proc~decode_rfc6901 decode_rfc6901 proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 none~get_child json_core%get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure function decode_rfc6901 ( str ) result ( str_out ) implicit none character ( kind = CK , len =* ), intent ( in ) :: str character ( kind = CK , len = :), allocatable :: str_out str_out = str call replace_string ( str_out , tilde // CK_ '1' , slash ) call replace_string ( str_out , tilde // CK_ '0' , tilde ) end function decode_rfc6901","tags":"","loc":"proc/decode_rfc6901.html"},{"title":"default_comp_ucs4 – JSON-Fortran","text":"private pure elemental function default_comp_ucs4(def_str, ucs4_str) result(res) CDK == CK operator. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: def_str character(kind=CK, len=*), intent(in) :: ucs4_str Return Value logical(kind=LK) Calls proc~~default_comp_ucs4~~CallsGraph proc~default_comp_ucs4 default_comp_ucs4 interface~to_unicode to_unicode proc~default_comp_ucs4->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~default_comp_ucs4~~CalledByGraph proc~default_comp_ucs4 default_comp_ucs4 interface~operator(==) operator(==) interface~operator(==)->proc~default_comp_ucs4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure elemental function default_comp_ucs4 ( def_str , ucs4_str ) result ( res ) implicit none character ( kind = CDK , len =* ), intent ( in ) :: def_str character ( kind = CK , len =* ), intent ( in ) :: ucs4_str logical ( LK ) :: res res = ( to_unicode ( def_str ) == ucs4_str ) end function default_comp_ucs4","tags":"","loc":"proc/default_comp_ucs4.html"},{"title":"default_join_ucs4 – JSON-Fortran","text":"private pure function default_join_ucs4(def_str, ucs4_str) result(res) CDK // CK operator. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: def_str character(kind=CK, len=*), intent(in) :: ucs4_str Return Value character(kind=CK, len=len=(len(def_str)+len(ucs4_str))) Calls proc~~default_join_ucs4~~CallsGraph proc~default_join_ucs4 default_join_ucs4 interface~to_unicode to_unicode proc~default_join_ucs4->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~default_join_ucs4~~CalledByGraph proc~default_join_ucs4 default_join_ucs4 interface~operator(SLASHSLASH) operator(//) interface~operator(SLASHSLASH)->proc~default_join_ucs4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure function default_join_ucs4 ( def_str , ucs4_str ) result ( res ) implicit none character ( kind = CDK , len =* ), intent ( in ) :: def_str character ( kind = CK , len =* ), intent ( in ) :: ucs4_str character ( kind = CK , len = ( len ( def_str ) + len ( ucs4_str ))) :: res res = to_unicode ( def_str ) // ucs4_str end function default_join_ucs4","tags":"","loc":"proc/default_join_ucs4.html"},{"title":"default_neq_ucs4 – JSON-Fortran","text":"private pure elemental function default_neq_ucs4(def_str, ucs4_str) result(res) CDK /= CK operator. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: def_str character(kind=CK, len=*), intent(in) :: ucs4_str Return Value logical(kind=LK) Calls proc~~default_neq_ucs4~~CallsGraph proc~default_neq_ucs4 default_neq_ucs4 interface~to_unicode to_unicode proc~default_neq_ucs4->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~default_neq_ucs4~~CalledByGraph proc~default_neq_ucs4 default_neq_ucs4 interface~operator(SLASH=) operator(/=) interface~operator(SLASH=)->proc~default_neq_ucs4 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure elemental function default_neq_ucs4 ( def_str , ucs4_str ) result ( res ) implicit none character ( kind = CDK , len =* ), intent ( in ) :: def_str character ( kind = CK , len =* ), intent ( in ) :: ucs4_str logical ( LK ) :: res res = ( to_unicode ( def_str ) /= ucs4_str ) end function default_neq_ucs4","tags":"","loc":"proc/default_neq_ucs4.html"},{"title":"encode_rfc6901 – JSON-Fortran","text":"public pure function encode_rfc6901(str) result(str_out) Encode a string into the “ JSON Pointer” RFC 6901 format. It replaces ~ with ~0 and / with ~1 . Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str Return Value character(kind=CK, len=:), allocatable Calls proc~~encode_rfc6901~~CallsGraph proc~encode_rfc6901 encode_rfc6901 proc~replace_string replace_string proc~encode_rfc6901->proc~replace_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~encode_rfc6901~~CalledByGraph proc~encode_rfc6901 encode_rfc6901 proc~json_get_path json_core%json_get_path proc~json_get_path->proc~encode_rfc6901 none~get_path json_core%get_path none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_path proc~wrap_json_get_path->none~get_path Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure function encode_rfc6901 ( str ) result ( str_out ) implicit none character ( kind = CK , len =* ), intent ( in ) :: str character ( kind = CK , len = :), allocatable :: str_out str_out = str call replace_string ( str_out , tilde , tilde // CK_ '0' ) call replace_string ( str_out , slash , tilde // CK_ '1' ) end function encode_rfc6901","tags":"","loc":"proc/encode_rfc6901.html"},{"title":"lowercase_string – JSON-Fortran","text":"public pure function lowercase_string(str) result(s_lower) Returns lowercase version of the CK string. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str input string Return Value character(kind=CK, len=len=(len(str))) lowercase version of the string Called by proc~~lowercase_string~~CalledByGraph proc~lowercase_string lowercase_string proc~name_strings_equal json_core%name_strings_equal proc~name_strings_equal->proc~lowercase_string proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->proc~name_strings_equal none~get_child json_core%get_child proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~name_equal json_core%name_equal proc~name_equal->proc~name_strings_equal proc~json_value_get_child_by_name json_core%json_value_get_child_by_name proc~json_value_get_child_by_name->proc~name_equal none~get_child->proc~json_value_get_child_by_name proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name none~get_child->proc~wrap_json_value_get_child_by_name proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_matrix_info json_core%json_matrix_info proc~json_matrix_info->none~get_child none~info~2 json_core%info proc~json_matrix_info->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info~2 json_core%matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_matrix_info_by_path->none~get~2 proc~json_value_replace json_core%json_value_replace proc~json_value_replace->none~insert_after proc~wrap_json_matrix_info_by_path->none~matrix_info~2 none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~convert->proc~json_value_replace proc~convert->none~info~2 proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_member_by_path->none~info~2 proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_by_path->none~info~2 proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~info~2 proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_by_path->none~info~2 proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~info~2 proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_file_variable_matrix_info->none~matrix_info none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure function lowercase_string ( str ) result ( s_lower ) implicit none character ( kind = CK , len =* ), intent ( in ) :: str !! input string character ( kind = CK , len = ( len ( str ))) :: s_lower !! lowercase version of the string integer :: i !! counter integer :: j !! index of uppercase character s_lower = str do i = 1 , len_trim ( str ) j = index ( upper , s_lower ( i : i )) if ( j > 0 ) s_lower ( i : i ) = lower ( j : j ) end do end function lowercase_string","tags":"","loc":"proc/lowercase_string.html"},{"title":"to_uni – JSON-Fortran","text":"private pure function to_uni(str) Convert string to unicode (CDK to CK). Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: str Return Value character(kind=CK, len=len) Called by proc~~to_uni~~CalledByGraph proc~to_uni to_uni interface~to_unicode to_unicode interface~to_unicode->proc~to_uni proc~default_comp_ucs4 default_comp_ucs4 proc~default_comp_ucs4->interface~to_unicode proc~default_join_ucs4 default_join_ucs4 proc~default_join_ucs4->interface~to_unicode proc~default_neq_ucs4 default_neq_ucs4 proc~default_neq_ucs4->interface~to_unicode proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->interface~to_unicode none~create_object json_core%create_object proc~json_file_add_string_path_ascii->none~create_object proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->interface~to_unicode proc~json_file_add_string_value_ascii->none~create_object proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->interface~to_unicode proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->interface~to_unicode proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_rename_name_ascii json_file%json_file_rename_name_ascii proc~json_file_rename_name_ascii->interface~to_unicode proc~json_file_rename_path_ascii json_file%json_file_rename_path_ascii proc~json_file_rename_path_ascii->interface~to_unicode proc~json_file_update_string_name_ascii json_file%json_file_update_string_name_ascii proc~json_file_update_string_name_ascii->interface~to_unicode none~update~2 json_file%update proc~json_file_update_string_name_ascii->none~update~2 proc~json_file_update_string_val_ascii json_file%json_file_update_string_val_ascii proc~json_file_update_string_val_ascii->interface~to_unicode proc~json_file_update_string_val_ascii->none~update~2 proc~json_rename_by_path_name_ascii json_core%json_rename_by_path_name_ascii proc~json_rename_by_path_name_ascii->interface~to_unicode proc~json_rename_by_path_path_ascii json_core%json_rename_by_path_path_ascii proc~json_rename_by_path_path_ascii->interface~to_unicode proc~json_update_string_name_ascii json_core%json_update_string_name_ascii proc~json_update_string_name_ascii->interface~to_unicode none~update~4 json_core%update proc~json_update_string_name_ascii->none~update~4 proc~json_update_string_val_ascii json_core%json_update_string_val_ascii proc~json_update_string_val_ascii->interface~to_unicode proc~json_update_string_val_ascii->none~update~4 proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii proc~json_value_add_string_name_ascii->interface~to_unicode none~add~4 json_core%add proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~ucs4_comp_default ucs4_comp_default proc~ucs4_comp_default->interface~to_unicode proc~ucs4_join_default ucs4_join_default proc~ucs4_join_default->interface~to_unicode proc~ucs4_neq_default ucs4_neq_default proc~ucs4_neq_default->interface~to_unicode proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->interface~to_unicode proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string->interface~to_unicode proc~initialize_json_file_from_string initialize_json_file_from_string proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string_v2->interface~to_unicode proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->interface~to_unicode proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->interface~to_unicode proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->interface~to_unicode proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->interface~to_unicode proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->interface~to_unicode proc~json_add_member_by_path json_core%json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->interface~to_unicode none~add_by_path~2 json_core%add_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->interface~to_unicode proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->interface~to_unicode proc~json_add_real_by_path json_core%json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->interface~to_unicode proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->interface~to_unicode proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->interface~to_unicode proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path proc~wrap_json_create_by_path->interface~to_unicode none~create json_core%create proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->interface~to_unicode proc~json_file_add_integer json_file%json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->interface~to_unicode proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->interface~to_unicode proc~json_file_add_logical json_file%json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->interface~to_unicode proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->interface~to_unicode proc~json_file_add_object json_file%json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->interface~to_unicode proc~json_file_add_real json_file%json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->interface~to_unicode proc~json_file_add_real32 json_file%json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->interface~to_unicode proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->interface~to_unicode proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->interface~to_unicode proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->interface~to_unicode proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_alloc_string_vec->interface~to_unicode none~get json_file%get proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer proc~wrap_json_file_get_integer->interface~to_unicode proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec proc~wrap_json_file_get_integer_vec->interface~to_unicode proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical proc~wrap_json_file_get_logical->interface~to_unicode proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec proc~wrap_json_file_get_logical_vec->interface~to_unicode proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object json_file%wrap_json_file_get_object proc~wrap_json_file_get_object->interface~to_unicode proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real json_file%wrap_json_file_get_real proc~wrap_json_file_get_real->interface~to_unicode proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 proc~wrap_json_file_get_real32->interface~to_unicode proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec proc~wrap_json_file_get_real32_vec->interface~to_unicode proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec proc~wrap_json_file_get_real_vec->interface~to_unicode proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string json_file%wrap_json_file_get_string proc~wrap_json_file_get_string->interface~to_unicode proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec proc~wrap_json_file_get_string_vec->interface~to_unicode proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string proc~wrap_json_file_load_from_string->interface~to_unicode none~deserialize json_file%deserialize proc~wrap_json_file_load_from_string->none~deserialize proc~wrap_json_file_remove json_file%wrap_json_file_remove proc~wrap_json_file_remove->interface~to_unicode none~remove json_file%remove proc~wrap_json_file_remove->none~remove proc~wrap_json_file_rename json_file%wrap_json_file_rename proc~wrap_json_file_rename->interface~to_unicode proc~wrap_json_file_update_integer json_file%wrap_json_file_update_integer proc~wrap_json_file_update_integer->interface~to_unicode proc~wrap_json_file_update_integer->none~update~2 proc~wrap_json_file_update_logical json_file%wrap_json_file_update_logical proc~wrap_json_file_update_logical->interface~to_unicode proc~wrap_json_file_update_logical->none~update~2 proc~wrap_json_file_update_real json_file%wrap_json_file_update_real proc~wrap_json_file_update_real->interface~to_unicode proc~wrap_json_file_update_real->none~update~2 proc~wrap_json_file_update_real32 json_file%wrap_json_file_update_real32 proc~wrap_json_file_update_real32->interface~to_unicode proc~wrap_json_file_update_real32->none~update~2 proc~wrap_json_file_update_string json_file%wrap_json_file_update_string proc~wrap_json_file_update_string->interface~to_unicode proc~wrap_json_file_update_string->none~update~2 proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path proc~wrap_json_file_valid_path->interface~to_unicode none~valid_path json_file%valid_path proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_valid_path_op json_file%wrap_json_file_valid_path_op proc~wrap_json_file_valid_path_op->interface~to_unicode proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info proc~wrap_json_file_variable_info->interface~to_unicode none~info json_file%info proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info->interface~to_unicode none~matrix_info json_file%matrix_info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode none~get~2 json_core%get proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path json_core%wrap_json_get_by_path proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_path json_core%wrap_json_get_path proc~wrap_json_get_path->interface~to_unicode none~get_path json_core%get_path proc~wrap_json_get_path->none~get_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_info_by_path json_core%wrap_json_info_by_path proc~wrap_json_info_by_path->interface~to_unicode none~info~2 json_core%info proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path proc~wrap_json_matrix_info_by_path->interface~to_unicode none~matrix_info~2 json_core%matrix_info proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_parse_string json_core%wrap_json_parse_string proc~wrap_json_parse_string->interface~to_unicode none~deserialize~2 json_core%deserialize proc~wrap_json_parse_string->none~deserialize~2 proc~wrap_json_rename_by_path json_core%wrap_json_rename_by_path proc~wrap_json_rename_by_path->interface~to_unicode proc~wrap_json_throw_exception json_core%wrap_json_throw_exception proc~wrap_json_throw_exception->interface~to_unicode none~throw_exception json_core%throw_exception proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_update_integer json_core%wrap_json_update_integer proc~wrap_json_update_integer->interface~to_unicode proc~wrap_json_update_integer->none~update~4 proc~wrap_json_update_logical json_core%wrap_json_update_logical proc~wrap_json_update_logical->interface~to_unicode proc~wrap_json_update_logical->none~update~4 proc~wrap_json_update_real json_core%wrap_json_update_real proc~wrap_json_update_real->interface~to_unicode proc~wrap_json_update_real->none~update~4 proc~wrap_json_update_real32 json_core%wrap_json_update_real32 proc~wrap_json_update_real32->interface~to_unicode proc~wrap_json_update_real32->none~update~4 proc~wrap_json_update_string json_core%wrap_json_update_string proc~wrap_json_update_string->interface~to_unicode proc~wrap_json_update_string->none~update~4 proc~wrap_json_valid_path json_core%wrap_json_valid_path proc~wrap_json_valid_path->interface~to_unicode none~valid_path~2 json_core%valid_path proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_add_integer json_core%wrap_json_value_add_integer proc~wrap_json_value_add_integer->interface~to_unicode proc~wrap_json_value_add_integer->none~add~4 proc~wrap_json_value_add_integer_vec json_core%wrap_json_value_add_integer_vec proc~wrap_json_value_add_integer_vec->interface~to_unicode proc~wrap_json_value_add_integer_vec->none~add~4 proc~wrap_json_value_add_logical json_core%wrap_json_value_add_logical proc~wrap_json_value_add_logical->interface~to_unicode proc~wrap_json_value_add_logical->none~add~4 proc~wrap_json_value_add_logical_vec json_core%wrap_json_value_add_logical_vec proc~wrap_json_value_add_logical_vec->interface~to_unicode proc~wrap_json_value_add_logical_vec->none~add~4 proc~wrap_json_value_add_null json_core%wrap_json_value_add_null proc~wrap_json_value_add_null->interface~to_unicode proc~wrap_json_value_add_null->none~add~4 proc~wrap_json_value_add_real json_core%wrap_json_value_add_real proc~wrap_json_value_add_real->interface~to_unicode proc~wrap_json_value_add_real->none~add~4 proc~wrap_json_value_add_real32 json_core%wrap_json_value_add_real32 proc~wrap_json_value_add_real32->interface~to_unicode proc~wrap_json_value_add_real32->none~add~4 proc~wrap_json_value_add_real32_vec json_core%wrap_json_value_add_real32_vec proc~wrap_json_value_add_real32_vec->interface~to_unicode proc~wrap_json_value_add_real32_vec->none~add~4 proc~wrap_json_value_add_real_vec json_core%wrap_json_value_add_real_vec proc~wrap_json_value_add_real_vec->interface~to_unicode proc~wrap_json_value_add_real_vec->none~add~4 proc~wrap_json_value_add_string json_core%wrap_json_value_add_string proc~wrap_json_value_add_string->interface~to_unicode proc~wrap_json_value_add_string->none~add~4 proc~wrap_json_value_add_string_vec json_core%wrap_json_value_add_string_vec proc~wrap_json_value_add_string_vec->interface~to_unicode proc~wrap_json_value_add_string_vec->none~add~4 proc~wrap_json_value_create_array json_core%wrap_json_value_create_array proc~wrap_json_value_create_array->interface~to_unicode none~create_array json_core%create_array proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_integer json_core%wrap_json_value_create_integer proc~wrap_json_value_create_integer->interface~to_unicode none~create_integer json_core%create_integer proc~wrap_json_value_create_integer->none~create_integer proc~wrap_json_value_create_logical json_core%wrap_json_value_create_logical proc~wrap_json_value_create_logical->interface~to_unicode none~create_logical json_core%create_logical proc~wrap_json_value_create_logical->none~create_logical proc~wrap_json_value_create_null json_core%wrap_json_value_create_null proc~wrap_json_value_create_null->interface~to_unicode none~create_null json_core%create_null proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object json_core%wrap_json_value_create_object proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~wrap_json_value_create_real json_core%wrap_json_value_create_real proc~wrap_json_value_create_real->interface~to_unicode none~create_real~2 json_core%create_real proc~wrap_json_value_create_real->none~create_real~2 proc~wrap_json_value_create_real32 json_core%wrap_json_value_create_real32 proc~wrap_json_value_create_real32->interface~to_unicode proc~wrap_json_value_create_real32->none~create_real~2 proc~wrap_json_value_create_string json_core%wrap_json_value_create_string proc~wrap_json_value_create_string->interface~to_unicode none~create_string json_core%create_string proc~wrap_json_value_create_string->none~create_string proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present proc~wrap_json_value_remove_if_present->interface~to_unicode none~remove_if_present json_core%remove_if_present proc~wrap_json_value_remove_if_present->none~remove_if_present proc~wrap_json_value_rename json_core%wrap_json_value_rename proc~wrap_json_value_rename->interface~to_unicode interface~json_file json_file interface~json_file->proc~wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string_v2 interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~initialize_json_file initialize_json_file interface~json_file->proc~initialize_json_file interface~operator(==) operator(==) interface~operator(==)->proc~default_comp_ucs4 interface~operator(==)->proc~ucs4_comp_default interface~operator(SLASH=) operator(/=) interface~operator(SLASH=)->proc~default_neq_ucs4 interface~operator(SLASH=)->proc~ucs4_neq_default interface~operator(SLASHSLASH) operator(//) interface~operator(SLASHSLASH)->proc~default_join_ucs4 interface~operator(SLASHSLASH)->proc~ucs4_join_default none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~add~4->proc~json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_val_ascii none~create->proc~wrap_json_create_by_path proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path none~create_array->proc~wrap_json_value_create_array none~create_integer->proc~wrap_json_value_create_integer none~create_logical->proc~wrap_json_value_create_logical none~create_null->proc~wrap_json_value_create_null none~create_object->proc~wrap_json_value_create_object none~create_real~2->proc~wrap_json_value_create_real32 proc~json_value_create_real32 json_core%json_value_create_real32 none~create_real~2->proc~json_value_create_real32 none~create_string->proc~wrap_json_value_create_string none~deserialize->proc~wrap_json_file_load_from_string proc~json_file_load_from_string json_file%json_file_load_from_string none~deserialize->proc~json_file_load_from_string none~deserialize~2->proc~wrap_json_parse_string proc~json_parse_string json_core%json_parse_string none~deserialize~2->proc~json_parse_string none~get->proc~wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_object none~get->proc~wrap_json_file_get_real none~get->proc~wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_string none~get->proc~wrap_json_file_get_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get->proc~json_file_get_alloc_string_vec proc~json_file_get_integer json_file%json_file_get_integer none~get->proc~json_file_get_integer proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get->proc~json_file_get_integer_vec proc~json_file_get_logical json_file%json_file_get_logical none~get->proc~json_file_get_logical proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get->proc~json_file_get_logical_vec proc~json_file_get_object json_file%json_file_get_object none~get->proc~json_file_get_object proc~json_file_get_real json_file%json_file_get_real none~get->proc~json_file_get_real proc~json_file_get_real32 json_file%json_file_get_real32 none~get->proc~json_file_get_real32 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get->proc~json_file_get_real32_vec proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get->proc~json_file_get_real_vec proc~json_file_get_string json_file%json_file_get_string none~get->proc~json_file_get_string proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get->proc~json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name none~get_path->proc~wrap_json_get_path proc~json_get_path json_core%json_get_path none~get_path->proc~json_get_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_by_path none~get~2->proc~wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path none~info->proc~wrap_json_file_variable_info proc~json_file_variable_info json_file%json_file_variable_info none~info->proc~json_file_variable_info none~info~2->proc~wrap_json_info_by_path proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info none~matrix_info->proc~json_file_variable_matrix_info none~matrix_info~2->proc~wrap_json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path none~remove->proc~wrap_json_file_remove proc~json_file_remove json_file%json_file_remove none~remove->proc~json_file_remove none~remove_if_present->proc~wrap_json_value_remove_if_present proc~json_value_remove_if_present json_core%json_value_remove_if_present none~remove_if_present->proc~json_value_remove_if_present none~throw_exception->proc~wrap_json_throw_exception none~update~2->proc~json_file_update_string_name_ascii none~update~2->proc~json_file_update_string_val_ascii none~update~4->proc~json_update_string_name_ascii none~update~4->proc~json_update_string_val_ascii none~valid_path->proc~wrap_json_file_valid_path proc~json_file_valid_path json_file%json_file_valid_path none~valid_path->proc~json_file_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_valid_path json_core%json_valid_path none~valid_path~2->proc~json_valid_path proc~assign_string_to_json_file->none~deserialize proc~convert json_core%convert proc~convert->none~create_array proc~convert->none~create_null proc~convert->none~create_object proc~convert->none~info~2 proc~convert->none~throw_exception proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~initialize_json_file_from_string->none~deserialize none~initialize json_file%initialize proc~initialize_json_file_from_string->none~initialize proc~initialize_json_file_from_string_v2->none~deserialize proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~create_integer proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->none~throw_exception proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~add~4 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~create_array proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~create_logical proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~throw_exception proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~add~4 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~create_array proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~throw_exception proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~create_real~2 proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~throw_exception proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~add~4 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~create_array proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~create_string proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~throw_exception proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child proc~json_check_children_for_duplicate_keys->none~get_path proc~json_check_children_for_duplicate_keys->none~throw_exception proc~json_count json_core%json_count proc~json_count->none~throw_exception proc~json_create_by_path->none~throw_exception proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer->none~create_object proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_integer_vec->none~create_object proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical->none~create_object proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_logical_vec->none~create_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_object->none~create_object proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real->none~create_object proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_real_vec->none~create_object proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string->none~create_object proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_add_string_vec->none~create_object proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object->none~get~2 proc~json_file_get_real->none~get~2 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec->none~get~2 proc~json_file_load_from_string->none~deserialize~2 proc~json_file_move_pointer json_file%json_file_move_pointer proc~json_file_move_pointer->none~throw_exception proc~json_file_move_pointer->none~initialize proc~json_file_print_to_unit json_file%json_file_print_to_unit proc~json_file_print_to_unit->none~throw_exception proc~json_file_remove->none~remove_if_present proc~json_file_update_integer json_file%json_file_update_integer proc~json_file_update_integer->none~update~4 proc~json_file_update_logical json_file%json_file_update_logical proc~json_file_update_logical->none~update~4 proc~json_file_update_real json_file%json_file_update_real proc~json_file_update_real->none~update~4 proc~json_file_update_real32 json_file%json_file_update_real32 proc~json_file_update_real32->none~update~2 proc~json_file_update_string json_file%json_file_update_string proc~json_file_update_string->none~update~4 proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_integer->none~throw_exception proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_next json_core%json_get_next proc~json_get_next->none~throw_exception proc~json_get_parent json_core%json_get_parent proc~json_get_parent->none~throw_exception proc~json_get_path->none~info~2 proc~json_get_path->none~throw_exception proc~json_get_previous json_core%json_get_previous proc~json_get_previous->none~throw_exception proc~json_get_real->none~throw_exception proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_string->none~throw_exception proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_tail json_core%json_get_tail proc~json_get_tail->none~throw_exception proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_initialize json_core%json_initialize proc~json_initialize->none~throw_exception proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_is_vector->none~throw_exception proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_matrix_info->none~throw_exception proc~json_matrix_info_by_path->none~get~2 proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_parse_end json_core%json_parse_end proc~json_parse_end->none~throw_exception proc~json_parse_file json_core%json_parse_file proc~json_parse_file->none~throw_exception proc~json_parse_file->proc~json_initialize proc~json_parse_file->proc~json_parse_end proc~parse_value json_core%parse_value proc~json_parse_file->proc~parse_value proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_file->proc~json_check_all_for_duplicate_keys proc~json_parse_string->none~throw_exception proc~json_parse_string->proc~json_initialize proc~json_parse_string->proc~json_parse_end proc~json_parse_string->proc~parse_value proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_print_to_filename json_core%json_print_to_filename proc~json_print_to_filename->none~throw_exception proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->none~throw_exception proc~json_value_print json_core%json_value_print proc~json_print_to_unit->proc~json_value_print proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_rename_by_path->none~throw_exception proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_traverse json_core%json_traverse proc~json_traverse->none~throw_exception proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_integer->none~throw_exception proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~throw_exception proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~throw_exception proc~json_update_real32 json_core%json_update_real32 proc~json_update_real32->none~update~4 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~throw_exception proc~json_valid_path->none~get~2 proc~json_value_add_integer json_core%json_value_add_integer proc~json_value_add_integer->none~add~4 proc~json_value_add_integer->none~create_integer proc~json_value_add_integer_vec json_core%json_value_add_integer_vec proc~json_value_add_integer_vec->none~add~4 proc~json_value_add_integer_vec->none~create_array proc~json_value_add_logical json_core%json_value_add_logical proc~json_value_add_logical->none~add~4 proc~json_value_add_logical->none~create_logical proc~json_value_add_logical_vec json_core%json_value_add_logical_vec proc~json_value_add_logical_vec->none~add~4 proc~json_value_add_logical_vec->none~create_array proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_add_member->none~throw_exception proc~json_value_add_null json_core%json_value_add_null proc~json_value_add_null->none~add~4 proc~json_value_add_null->none~create_null proc~json_value_add_real json_core%json_value_add_real proc~json_value_add_real->none~add~4 proc~json_value_add_real->none~create_real~2 proc~json_value_add_real32 json_core%json_value_add_real32 proc~json_value_add_real32->none~add~4 proc~json_value_add_real32_vec json_core%json_value_add_real32_vec proc~json_value_add_real32_vec->none~add~4 proc~json_value_add_real_vec json_core%json_value_add_real_vec proc~json_value_add_real_vec->none~add~4 proc~json_value_add_real_vec->none~create_array proc~json_value_add_string json_core%json_value_add_string proc~json_value_add_string->none~add~4 proc~json_value_add_string->none~create_string proc~json_value_add_string_vec json_core%json_value_add_string_vec proc~json_value_add_string_vec->none~add~4 proc~json_value_add_string_vec->none~create_array proc~json_value_create_real32->none~create_real~2 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_name->none~throw_exception proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_print->none~throw_exception proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~json_value_remove_if_present->none~get~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~json_value_swap json_core%json_value_swap proc~json_value_swap->none~throw_exception proc~json_value_is_child_of json_core%json_value_is_child_of proc~json_value_swap->proc~json_value_is_child_of proc~json_value_validate json_core%json_value_validate proc~json_value_validate->none~throw_exception proc~json_value_validate->proc~json_check_all_for_duplicate_keys proc~parse_array json_core%parse_array proc~parse_array->none~add~4 proc~parse_array->none~throw_exception proc~parse_array->proc~parse_value proc~parse_for_chars json_core%parse_for_chars proc~parse_for_chars->none~throw_exception proc~parse_object json_core%parse_object proc~parse_object->none~add~4 proc~parse_object->none~throw_exception proc~parse_object->proc~parse_object proc~parse_string json_core%parse_string proc~parse_object->proc~parse_string proc~parse_object->proc~parse_value proc~parse_string->none~throw_exception proc~parse_value->none~throw_exception proc~parse_value->proc~parse_array proc~parse_value->proc~parse_for_chars proc~parse_value->proc~parse_object proc~parse_value->proc~parse_string proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~push_char->none~throw_exception proc~string_to_dble json_core%string_to_dble proc~string_to_dble->none~throw_exception proc~string_to_int json_core%string_to_int proc~string_to_int->none~throw_exception none~insert_after->proc~json_value_insert_after_child_by_index none~load~2 json_core%load none~load~2->proc~json_parse_file none~string_info->proc~json_string_info proc~initialize_json_core initialize_json_core proc~initialize_json_core->proc~json_initialize proc~initialize_json_core_in_file json_file%initialize_json_core_in_file proc~initialize_json_core_in_file->proc~json_initialize proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_file_traverse json_file%json_file_traverse proc~json_file_traverse->proc~json_traverse proc~json_value_is_child_of->proc~json_traverse proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~parse_number->proc~push_char proc~parse_number->proc~string_to_dble proc~parse_number->proc~string_to_int interface~json_core json_core interface~json_core->proc~initialize_json_core none~initialize->proc~initialize_json_core_in_file proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~json_value_replace->none~insert_after proc~initialize_json_file->none~initialize Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure function to_uni ( str ) implicit none character ( kind = CDK , len =* ), intent ( in ) :: str character ( kind = CK , len = len ( str )) :: to_uni to_uni = str end function to_uni","tags":"","loc":"proc/to_uni.html"},{"title":"to_uni_vec – JSON-Fortran","text":"private pure function to_uni_vec(str) Convert array of strings to unicode (CDK to CK). Note JW: may be able to remove this by making to_uni PURE ELEMENTAL ? Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in), dimension(:) :: str Return Value character(kind=CK, len=len), dimension(size(str)) Called by proc~~to_uni_vec~~CalledByGraph proc~to_uni_vec to_uni_vec interface~to_unicode to_unicode interface~to_unicode->proc~to_uni_vec proc~default_comp_ucs4 default_comp_ucs4 proc~default_comp_ucs4->interface~to_unicode proc~default_join_ucs4 default_join_ucs4 proc~default_join_ucs4->interface~to_unicode proc~default_neq_ucs4 default_neq_ucs4 proc~default_neq_ucs4->interface~to_unicode proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->interface~to_unicode none~create_object json_core%create_object proc~json_file_add_string_path_ascii->none~create_object proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->interface~to_unicode proc~json_file_add_string_value_ascii->none~create_object proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->interface~to_unicode proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->interface~to_unicode proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_rename_name_ascii json_file%json_file_rename_name_ascii proc~json_file_rename_name_ascii->interface~to_unicode proc~json_file_rename_path_ascii json_file%json_file_rename_path_ascii proc~json_file_rename_path_ascii->interface~to_unicode proc~json_file_update_string_name_ascii json_file%json_file_update_string_name_ascii proc~json_file_update_string_name_ascii->interface~to_unicode none~update~2 json_file%update proc~json_file_update_string_name_ascii->none~update~2 proc~json_file_update_string_val_ascii json_file%json_file_update_string_val_ascii proc~json_file_update_string_val_ascii->interface~to_unicode proc~json_file_update_string_val_ascii->none~update~2 proc~json_rename_by_path_name_ascii json_core%json_rename_by_path_name_ascii proc~json_rename_by_path_name_ascii->interface~to_unicode proc~json_rename_by_path_path_ascii json_core%json_rename_by_path_path_ascii proc~json_rename_by_path_path_ascii->interface~to_unicode proc~json_update_string_name_ascii json_core%json_update_string_name_ascii proc~json_update_string_name_ascii->interface~to_unicode none~update~4 json_core%update proc~json_update_string_name_ascii->none~update~4 proc~json_update_string_val_ascii json_core%json_update_string_val_ascii proc~json_update_string_val_ascii->interface~to_unicode proc~json_update_string_val_ascii->none~update~4 proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii proc~json_value_add_string_name_ascii->interface~to_unicode none~add~4 json_core%add proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~ucs4_comp_default ucs4_comp_default proc~ucs4_comp_default->interface~to_unicode proc~ucs4_join_default ucs4_join_default proc~ucs4_join_default->interface~to_unicode proc~ucs4_neq_default ucs4_neq_default proc~ucs4_neq_default->interface~to_unicode proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->interface~to_unicode proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string->interface~to_unicode proc~initialize_json_file_from_string initialize_json_file_from_string proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string_v2->interface~to_unicode proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->interface~to_unicode proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->interface~to_unicode proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->interface~to_unicode proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->interface~to_unicode proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->interface~to_unicode proc~json_add_member_by_path json_core%json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->interface~to_unicode none~add_by_path~2 json_core%add_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->interface~to_unicode proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->interface~to_unicode proc~json_add_real_by_path json_core%json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->interface~to_unicode proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->interface~to_unicode proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->interface~to_unicode proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path proc~wrap_json_create_by_path->interface~to_unicode none~create json_core%create proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->interface~to_unicode proc~json_file_add_integer json_file%json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->interface~to_unicode proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->interface~to_unicode proc~json_file_add_logical json_file%json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->interface~to_unicode proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->interface~to_unicode proc~json_file_add_object json_file%json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->interface~to_unicode proc~json_file_add_real json_file%json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->interface~to_unicode proc~json_file_add_real32 json_file%json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->interface~to_unicode proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->interface~to_unicode proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->interface~to_unicode proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->interface~to_unicode proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_alloc_string_vec->interface~to_unicode none~get json_file%get proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer proc~wrap_json_file_get_integer->interface~to_unicode proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec proc~wrap_json_file_get_integer_vec->interface~to_unicode proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical proc~wrap_json_file_get_logical->interface~to_unicode proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec proc~wrap_json_file_get_logical_vec->interface~to_unicode proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object json_file%wrap_json_file_get_object proc~wrap_json_file_get_object->interface~to_unicode proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real json_file%wrap_json_file_get_real proc~wrap_json_file_get_real->interface~to_unicode proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 proc~wrap_json_file_get_real32->interface~to_unicode proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec proc~wrap_json_file_get_real32_vec->interface~to_unicode proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec proc~wrap_json_file_get_real_vec->interface~to_unicode proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string json_file%wrap_json_file_get_string proc~wrap_json_file_get_string->interface~to_unicode proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec proc~wrap_json_file_get_string_vec->interface~to_unicode proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string proc~wrap_json_file_load_from_string->interface~to_unicode none~deserialize json_file%deserialize proc~wrap_json_file_load_from_string->none~deserialize proc~wrap_json_file_remove json_file%wrap_json_file_remove proc~wrap_json_file_remove->interface~to_unicode none~remove json_file%remove proc~wrap_json_file_remove->none~remove proc~wrap_json_file_rename json_file%wrap_json_file_rename proc~wrap_json_file_rename->interface~to_unicode proc~wrap_json_file_update_integer json_file%wrap_json_file_update_integer proc~wrap_json_file_update_integer->interface~to_unicode proc~wrap_json_file_update_integer->none~update~2 proc~wrap_json_file_update_logical json_file%wrap_json_file_update_logical proc~wrap_json_file_update_logical->interface~to_unicode proc~wrap_json_file_update_logical->none~update~2 proc~wrap_json_file_update_real json_file%wrap_json_file_update_real proc~wrap_json_file_update_real->interface~to_unicode proc~wrap_json_file_update_real->none~update~2 proc~wrap_json_file_update_real32 json_file%wrap_json_file_update_real32 proc~wrap_json_file_update_real32->interface~to_unicode proc~wrap_json_file_update_real32->none~update~2 proc~wrap_json_file_update_string json_file%wrap_json_file_update_string proc~wrap_json_file_update_string->interface~to_unicode proc~wrap_json_file_update_string->none~update~2 proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path proc~wrap_json_file_valid_path->interface~to_unicode none~valid_path json_file%valid_path proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_valid_path_op json_file%wrap_json_file_valid_path_op proc~wrap_json_file_valid_path_op->interface~to_unicode proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info proc~wrap_json_file_variable_info->interface~to_unicode none~info json_file%info proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info->interface~to_unicode none~matrix_info json_file%matrix_info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode none~get~2 json_core%get proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path json_core%wrap_json_get_by_path proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_path json_core%wrap_json_get_path proc~wrap_json_get_path->interface~to_unicode none~get_path json_core%get_path proc~wrap_json_get_path->none~get_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_info_by_path json_core%wrap_json_info_by_path proc~wrap_json_info_by_path->interface~to_unicode none~info~2 json_core%info proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path proc~wrap_json_matrix_info_by_path->interface~to_unicode none~matrix_info~2 json_core%matrix_info proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_parse_string json_core%wrap_json_parse_string proc~wrap_json_parse_string->interface~to_unicode none~deserialize~2 json_core%deserialize proc~wrap_json_parse_string->none~deserialize~2 proc~wrap_json_rename_by_path json_core%wrap_json_rename_by_path proc~wrap_json_rename_by_path->interface~to_unicode proc~wrap_json_throw_exception json_core%wrap_json_throw_exception proc~wrap_json_throw_exception->interface~to_unicode none~throw_exception json_core%throw_exception proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_update_integer json_core%wrap_json_update_integer proc~wrap_json_update_integer->interface~to_unicode proc~wrap_json_update_integer->none~update~4 proc~wrap_json_update_logical json_core%wrap_json_update_logical proc~wrap_json_update_logical->interface~to_unicode proc~wrap_json_update_logical->none~update~4 proc~wrap_json_update_real json_core%wrap_json_update_real proc~wrap_json_update_real->interface~to_unicode proc~wrap_json_update_real->none~update~4 proc~wrap_json_update_real32 json_core%wrap_json_update_real32 proc~wrap_json_update_real32->interface~to_unicode proc~wrap_json_update_real32->none~update~4 proc~wrap_json_update_string json_core%wrap_json_update_string proc~wrap_json_update_string->interface~to_unicode proc~wrap_json_update_string->none~update~4 proc~wrap_json_valid_path json_core%wrap_json_valid_path proc~wrap_json_valid_path->interface~to_unicode none~valid_path~2 json_core%valid_path proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_add_integer json_core%wrap_json_value_add_integer proc~wrap_json_value_add_integer->interface~to_unicode proc~wrap_json_value_add_integer->none~add~4 proc~wrap_json_value_add_integer_vec json_core%wrap_json_value_add_integer_vec proc~wrap_json_value_add_integer_vec->interface~to_unicode proc~wrap_json_value_add_integer_vec->none~add~4 proc~wrap_json_value_add_logical json_core%wrap_json_value_add_logical proc~wrap_json_value_add_logical->interface~to_unicode proc~wrap_json_value_add_logical->none~add~4 proc~wrap_json_value_add_logical_vec json_core%wrap_json_value_add_logical_vec proc~wrap_json_value_add_logical_vec->interface~to_unicode proc~wrap_json_value_add_logical_vec->none~add~4 proc~wrap_json_value_add_null json_core%wrap_json_value_add_null proc~wrap_json_value_add_null->interface~to_unicode proc~wrap_json_value_add_null->none~add~4 proc~wrap_json_value_add_real json_core%wrap_json_value_add_real proc~wrap_json_value_add_real->interface~to_unicode proc~wrap_json_value_add_real->none~add~4 proc~wrap_json_value_add_real32 json_core%wrap_json_value_add_real32 proc~wrap_json_value_add_real32->interface~to_unicode proc~wrap_json_value_add_real32->none~add~4 proc~wrap_json_value_add_real32_vec json_core%wrap_json_value_add_real32_vec proc~wrap_json_value_add_real32_vec->interface~to_unicode proc~wrap_json_value_add_real32_vec->none~add~4 proc~wrap_json_value_add_real_vec json_core%wrap_json_value_add_real_vec proc~wrap_json_value_add_real_vec->interface~to_unicode proc~wrap_json_value_add_real_vec->none~add~4 proc~wrap_json_value_add_string json_core%wrap_json_value_add_string proc~wrap_json_value_add_string->interface~to_unicode proc~wrap_json_value_add_string->none~add~4 proc~wrap_json_value_add_string_vec json_core%wrap_json_value_add_string_vec proc~wrap_json_value_add_string_vec->interface~to_unicode proc~wrap_json_value_add_string_vec->none~add~4 proc~wrap_json_value_create_array json_core%wrap_json_value_create_array proc~wrap_json_value_create_array->interface~to_unicode none~create_array json_core%create_array proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_integer json_core%wrap_json_value_create_integer proc~wrap_json_value_create_integer->interface~to_unicode none~create_integer json_core%create_integer proc~wrap_json_value_create_integer->none~create_integer proc~wrap_json_value_create_logical json_core%wrap_json_value_create_logical proc~wrap_json_value_create_logical->interface~to_unicode none~create_logical json_core%create_logical proc~wrap_json_value_create_logical->none~create_logical proc~wrap_json_value_create_null json_core%wrap_json_value_create_null proc~wrap_json_value_create_null->interface~to_unicode none~create_null json_core%create_null proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object json_core%wrap_json_value_create_object proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~wrap_json_value_create_real json_core%wrap_json_value_create_real proc~wrap_json_value_create_real->interface~to_unicode none~create_real~2 json_core%create_real proc~wrap_json_value_create_real->none~create_real~2 proc~wrap_json_value_create_real32 json_core%wrap_json_value_create_real32 proc~wrap_json_value_create_real32->interface~to_unicode proc~wrap_json_value_create_real32->none~create_real~2 proc~wrap_json_value_create_string json_core%wrap_json_value_create_string proc~wrap_json_value_create_string->interface~to_unicode none~create_string json_core%create_string proc~wrap_json_value_create_string->none~create_string proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present proc~wrap_json_value_remove_if_present->interface~to_unicode none~remove_if_present json_core%remove_if_present proc~wrap_json_value_remove_if_present->none~remove_if_present proc~wrap_json_value_rename json_core%wrap_json_value_rename proc~wrap_json_value_rename->interface~to_unicode interface~json_file json_file interface~json_file->proc~wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string_v2 interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~initialize_json_file initialize_json_file interface~json_file->proc~initialize_json_file interface~operator(==) operator(==) interface~operator(==)->proc~default_comp_ucs4 interface~operator(==)->proc~ucs4_comp_default interface~operator(SLASH=) operator(/=) interface~operator(SLASH=)->proc~default_neq_ucs4 interface~operator(SLASH=)->proc~ucs4_neq_default interface~operator(SLASHSLASH) operator(//) interface~operator(SLASHSLASH)->proc~default_join_ucs4 interface~operator(SLASHSLASH)->proc~ucs4_join_default none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~add~4->proc~json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_val_ascii none~create->proc~wrap_json_create_by_path proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path none~create_array->proc~wrap_json_value_create_array none~create_integer->proc~wrap_json_value_create_integer none~create_logical->proc~wrap_json_value_create_logical none~create_null->proc~wrap_json_value_create_null none~create_object->proc~wrap_json_value_create_object none~create_real~2->proc~wrap_json_value_create_real32 proc~json_value_create_real32 json_core%json_value_create_real32 none~create_real~2->proc~json_value_create_real32 none~create_string->proc~wrap_json_value_create_string none~deserialize->proc~wrap_json_file_load_from_string proc~json_file_load_from_string json_file%json_file_load_from_string none~deserialize->proc~json_file_load_from_string none~deserialize~2->proc~wrap_json_parse_string proc~json_parse_string json_core%json_parse_string none~deserialize~2->proc~json_parse_string none~get->proc~wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_object none~get->proc~wrap_json_file_get_real none~get->proc~wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_string none~get->proc~wrap_json_file_get_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get->proc~json_file_get_alloc_string_vec proc~json_file_get_integer json_file%json_file_get_integer none~get->proc~json_file_get_integer proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get->proc~json_file_get_integer_vec proc~json_file_get_logical json_file%json_file_get_logical none~get->proc~json_file_get_logical proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get->proc~json_file_get_logical_vec proc~json_file_get_object json_file%json_file_get_object none~get->proc~json_file_get_object proc~json_file_get_real json_file%json_file_get_real none~get->proc~json_file_get_real proc~json_file_get_real32 json_file%json_file_get_real32 none~get->proc~json_file_get_real32 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get->proc~json_file_get_real32_vec proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get->proc~json_file_get_real_vec proc~json_file_get_string json_file%json_file_get_string none~get->proc~json_file_get_string proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get->proc~json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name none~get_path->proc~wrap_json_get_path proc~json_get_path json_core%json_get_path none~get_path->proc~json_get_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_by_path none~get~2->proc~wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path none~info->proc~wrap_json_file_variable_info proc~json_file_variable_info json_file%json_file_variable_info none~info->proc~json_file_variable_info none~info~2->proc~wrap_json_info_by_path proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info none~matrix_info->proc~json_file_variable_matrix_info none~matrix_info~2->proc~wrap_json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path none~remove->proc~wrap_json_file_remove proc~json_file_remove json_file%json_file_remove none~remove->proc~json_file_remove none~remove_if_present->proc~wrap_json_value_remove_if_present proc~json_value_remove_if_present json_core%json_value_remove_if_present none~remove_if_present->proc~json_value_remove_if_present none~throw_exception->proc~wrap_json_throw_exception none~update~2->proc~json_file_update_string_name_ascii none~update~2->proc~json_file_update_string_val_ascii none~update~4->proc~json_update_string_name_ascii none~update~4->proc~json_update_string_val_ascii none~valid_path->proc~wrap_json_file_valid_path proc~json_file_valid_path json_file%json_file_valid_path none~valid_path->proc~json_file_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_valid_path json_core%json_valid_path none~valid_path~2->proc~json_valid_path proc~assign_string_to_json_file->none~deserialize proc~convert json_core%convert proc~convert->none~create_array proc~convert->none~create_null proc~convert->none~create_object proc~convert->none~info~2 proc~convert->none~throw_exception proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~initialize_json_file_from_string->none~deserialize none~initialize json_file%initialize proc~initialize_json_file_from_string->none~initialize proc~initialize_json_file_from_string_v2->none~deserialize proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~create_integer proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->none~throw_exception proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~add~4 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~create_array proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~create_logical proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~throw_exception proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~add~4 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~create_array proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~throw_exception proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~create_real~2 proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~throw_exception proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~add~4 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~create_array proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~create_string proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~throw_exception proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child proc~json_check_children_for_duplicate_keys->none~get_path proc~json_check_children_for_duplicate_keys->none~throw_exception proc~json_count json_core%json_count proc~json_count->none~throw_exception proc~json_create_by_path->none~throw_exception proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer->none~create_object proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_integer_vec->none~create_object proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical->none~create_object proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_logical_vec->none~create_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_object->none~create_object proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real->none~create_object proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_real_vec->none~create_object proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string->none~create_object proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_add_string_vec->none~create_object proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object->none~get~2 proc~json_file_get_real->none~get~2 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec->none~get~2 proc~json_file_load_from_string->none~deserialize~2 proc~json_file_move_pointer json_file%json_file_move_pointer proc~json_file_move_pointer->none~throw_exception proc~json_file_move_pointer->none~initialize proc~json_file_print_to_unit json_file%json_file_print_to_unit proc~json_file_print_to_unit->none~throw_exception proc~json_file_remove->none~remove_if_present proc~json_file_update_integer json_file%json_file_update_integer proc~json_file_update_integer->none~update~4 proc~json_file_update_logical json_file%json_file_update_logical proc~json_file_update_logical->none~update~4 proc~json_file_update_real json_file%json_file_update_real proc~json_file_update_real->none~update~4 proc~json_file_update_real32 json_file%json_file_update_real32 proc~json_file_update_real32->none~update~2 proc~json_file_update_string json_file%json_file_update_string proc~json_file_update_string->none~update~4 proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_integer->none~throw_exception proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_next json_core%json_get_next proc~json_get_next->none~throw_exception proc~json_get_parent json_core%json_get_parent proc~json_get_parent->none~throw_exception proc~json_get_path->none~info~2 proc~json_get_path->none~throw_exception proc~json_get_previous json_core%json_get_previous proc~json_get_previous->none~throw_exception proc~json_get_real->none~throw_exception proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_string->none~throw_exception proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_tail json_core%json_get_tail proc~json_get_tail->none~throw_exception proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_initialize json_core%json_initialize proc~json_initialize->none~throw_exception proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_is_vector->none~throw_exception proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_matrix_info->none~throw_exception proc~json_matrix_info_by_path->none~get~2 proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_parse_end json_core%json_parse_end proc~json_parse_end->none~throw_exception proc~json_parse_file json_core%json_parse_file proc~json_parse_file->none~throw_exception proc~json_parse_file->proc~json_initialize proc~json_parse_file->proc~json_parse_end proc~parse_value json_core%parse_value proc~json_parse_file->proc~parse_value proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_file->proc~json_check_all_for_duplicate_keys proc~json_parse_string->none~throw_exception proc~json_parse_string->proc~json_initialize proc~json_parse_string->proc~json_parse_end proc~json_parse_string->proc~parse_value proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_print_to_filename json_core%json_print_to_filename proc~json_print_to_filename->none~throw_exception proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->none~throw_exception proc~json_value_print json_core%json_value_print proc~json_print_to_unit->proc~json_value_print proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_rename_by_path->none~throw_exception proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_traverse json_core%json_traverse proc~json_traverse->none~throw_exception proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_integer->none~throw_exception proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~throw_exception proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~throw_exception proc~json_update_real32 json_core%json_update_real32 proc~json_update_real32->none~update~4 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~throw_exception proc~json_valid_path->none~get~2 proc~json_value_add_integer json_core%json_value_add_integer proc~json_value_add_integer->none~add~4 proc~json_value_add_integer->none~create_integer proc~json_value_add_integer_vec json_core%json_value_add_integer_vec proc~json_value_add_integer_vec->none~add~4 proc~json_value_add_integer_vec->none~create_array proc~json_value_add_logical json_core%json_value_add_logical proc~json_value_add_logical->none~add~4 proc~json_value_add_logical->none~create_logical proc~json_value_add_logical_vec json_core%json_value_add_logical_vec proc~json_value_add_logical_vec->none~add~4 proc~json_value_add_logical_vec->none~create_array proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_add_member->none~throw_exception proc~json_value_add_null json_core%json_value_add_null proc~json_value_add_null->none~add~4 proc~json_value_add_null->none~create_null proc~json_value_add_real json_core%json_value_add_real proc~json_value_add_real->none~add~4 proc~json_value_add_real->none~create_real~2 proc~json_value_add_real32 json_core%json_value_add_real32 proc~json_value_add_real32->none~add~4 proc~json_value_add_real32_vec json_core%json_value_add_real32_vec proc~json_value_add_real32_vec->none~add~4 proc~json_value_add_real_vec json_core%json_value_add_real_vec proc~json_value_add_real_vec->none~add~4 proc~json_value_add_real_vec->none~create_array proc~json_value_add_string json_core%json_value_add_string proc~json_value_add_string->none~add~4 proc~json_value_add_string->none~create_string proc~json_value_add_string_vec json_core%json_value_add_string_vec proc~json_value_add_string_vec->none~add~4 proc~json_value_add_string_vec->none~create_array proc~json_value_create_real32->none~create_real~2 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_name->none~throw_exception proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_print->none~throw_exception proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~json_value_remove_if_present->none~get~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~json_value_swap json_core%json_value_swap proc~json_value_swap->none~throw_exception proc~json_value_is_child_of json_core%json_value_is_child_of proc~json_value_swap->proc~json_value_is_child_of proc~json_value_validate json_core%json_value_validate proc~json_value_validate->none~throw_exception proc~json_value_validate->proc~json_check_all_for_duplicate_keys proc~parse_array json_core%parse_array proc~parse_array->none~add~4 proc~parse_array->none~throw_exception proc~parse_array->proc~parse_value proc~parse_for_chars json_core%parse_for_chars proc~parse_for_chars->none~throw_exception proc~parse_object json_core%parse_object proc~parse_object->none~add~4 proc~parse_object->none~throw_exception proc~parse_object->proc~parse_object proc~parse_string json_core%parse_string proc~parse_object->proc~parse_string proc~parse_object->proc~parse_value proc~parse_string->none~throw_exception proc~parse_value->none~throw_exception proc~parse_value->proc~parse_array proc~parse_value->proc~parse_for_chars proc~parse_value->proc~parse_object proc~parse_value->proc~parse_string proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~push_char->none~throw_exception proc~string_to_dble json_core%string_to_dble proc~string_to_dble->none~throw_exception proc~string_to_int json_core%string_to_int proc~string_to_int->none~throw_exception none~insert_after->proc~json_value_insert_after_child_by_index none~load~2 json_core%load none~load~2->proc~json_parse_file none~string_info->proc~json_string_info proc~initialize_json_core initialize_json_core proc~initialize_json_core->proc~json_initialize proc~initialize_json_core_in_file json_file%initialize_json_core_in_file proc~initialize_json_core_in_file->proc~json_initialize proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_file_traverse json_file%json_file_traverse proc~json_file_traverse->proc~json_traverse proc~json_value_is_child_of->proc~json_traverse proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~parse_number->proc~push_char proc~parse_number->proc~string_to_dble proc~parse_number->proc~string_to_int interface~json_core json_core interface~json_core->proc~initialize_json_core none~initialize->proc~initialize_json_core_in_file proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~json_value_replace->none~insert_after proc~initialize_json_file->none~initialize Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure function to_uni_vec ( str ) implicit none character ( kind = CDK , len =* ), dimension (:), intent ( in ) :: str character ( kind = CK , len = len ( str )), dimension ( size ( str )) :: to_uni_vec to_uni_vec = str end function to_uni_vec","tags":"","loc":"proc/to_uni_vec.html"},{"title":"ucs4_comp_default – JSON-Fortran","text":"private pure elemental function ucs4_comp_default(ucs4_str, def_str) result(res) CK == CDK operator. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: ucs4_str character(kind=CDK, len=*), intent(in) :: def_str Return Value logical(kind=LK) Calls proc~~ucs4_comp_default~~CallsGraph proc~ucs4_comp_default ucs4_comp_default interface~to_unicode to_unicode proc~ucs4_comp_default->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~ucs4_comp_default~~CalledByGraph proc~ucs4_comp_default ucs4_comp_default interface~operator(==) operator(==) interface~operator(==)->proc~ucs4_comp_default Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure elemental function ucs4_comp_default ( ucs4_str , def_str ) result ( res ) implicit none character ( kind = CK , len =* ), intent ( in ) :: ucs4_str character ( kind = CDK , len =* ), intent ( in ) :: def_str logical ( LK ) :: res res = ( ucs4_str == to_unicode ( def_str ) ) end function ucs4_comp_default","tags":"","loc":"proc/ucs4_comp_default.html"},{"title":"ucs4_join_default – JSON-Fortran","text":"private pure function ucs4_join_default(ucs4_str, def_str) result(res) CK // CDK operator. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: ucs4_str character(kind=CDK, len=*), intent(in) :: def_str Return Value character(kind=CK, len=len=(len(ucs4_str)+len(def_str))) Calls proc~~ucs4_join_default~~CallsGraph proc~ucs4_join_default ucs4_join_default interface~to_unicode to_unicode proc~ucs4_join_default->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~ucs4_join_default~~CalledByGraph proc~ucs4_join_default ucs4_join_default interface~operator(SLASHSLASH) operator(//) interface~operator(SLASHSLASH)->proc~ucs4_join_default Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure function ucs4_join_default ( ucs4_str , def_str ) result ( res ) implicit none character ( kind = CK , len =* ), intent ( in ) :: ucs4_str character ( kind = CDK , len =* ), intent ( in ) :: def_str character ( kind = CK , len = ( len ( ucs4_str ) + len ( def_str ))) :: res res = ucs4_str // to_unicode ( def_str ) end function ucs4_join_default","tags":"","loc":"proc/ucs4_join_default.html"},{"title":"ucs4_neq_default – JSON-Fortran","text":"private pure elemental function ucs4_neq_default(ucs4_str, def_str) result(res) CK /= CDK operator. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: ucs4_str character(kind=CDK, len=*), intent(in) :: def_str Return Value logical(kind=LK) Calls proc~~ucs4_neq_default~~CallsGraph proc~ucs4_neq_default ucs4_neq_default interface~to_unicode to_unicode proc~ucs4_neq_default->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~ucs4_neq_default~~CalledByGraph proc~ucs4_neq_default ucs4_neq_default interface~operator(SLASH=) operator(/=) interface~operator(SLASH=)->proc~ucs4_neq_default Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure elemental function ucs4_neq_default ( ucs4_str , def_str ) result ( res ) implicit none character ( kind = CK , len =* ), intent ( in ) :: ucs4_str character ( kind = CDK , len =* ), intent ( in ) :: def_str logical ( LK ) :: res res = ( ucs4_str /= to_unicode ( def_str ) ) end function ucs4_neq_default","tags":"","loc":"proc/ucs4_neq_default.html"},{"title":"valid_json_hex – JSON-Fortran","text":"public pure function valid_json_hex(str) result(valid) Returns true if the string is a valid 4-digit hex string. Examples valid_json_hex ( '0000' ) !returns true valid_json_hex ( 'ABC4' ) !returns true valid_json_hex ( 'AB' ) !returns false (< 4 characters) valid_json_hex ( 'WXYZ' ) !returns false (invalid characters) Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str the string to check. Return Value logical(kind=LK) is str a value 4-digit hex string Called by proc~~valid_json_hex~~CalledByGraph proc~valid_json_hex valid_json_hex proc~escape_string escape_string proc~escape_string->proc~valid_json_hex proc~unescape_string unescape_string proc~unescape_string->proc~valid_json_hex proc~json_get_string json_core%json_get_string proc~json_get_string->proc~escape_string proc~json_value_print json_core%json_value_print proc~json_value_print->proc~escape_string proc~json_value_print->proc~json_value_print proc~json_is_vector json_core%json_is_vector proc~json_value_print->proc~json_is_vector proc~parse_string json_core%parse_string proc~parse_string->proc~unescape_string none~get~2 json_core%get none~get~2->proc~json_get_string proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~parse_object json_core%parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~parse_object proc~parse_value json_core%parse_value proc~parse_object->proc~parse_value proc~parse_value->proc~parse_string proc~parse_value->proc~parse_object proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~parse_array->proc~parse_value proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~load~2 json_core%load none~load~2->proc~json_parse_file none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_parse_string->none~deserialize~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~json_value_replace->none~insert_after proc~wrap_json_file_load_from_string->none~deserialize proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure function valid_json_hex ( str ) result ( valid ) implicit none logical ( LK ) :: valid !! is str a value 4-digit hex string character ( kind = CK , len =* ), intent ( in ) :: str !! the string to check. integer ( IK ) :: n !! length of `str` integer ( IK ) :: i !! counter !> an array of the valid hex characters character ( kind = CK , len = 1 ), dimension ( 22 ), parameter :: valid_chars = & [ ( achar ( i ), i = 48 , 57 ), & ! decimal digits ( achar ( i ), i = 65 , 70 ), & ! capital A-F ( achar ( i ), i = 97 , 102 ) ] ! lowercase a-f !initialize valid = . false . !check all the characters in the string: n = len ( str ) if ( n == 4 ) then do i = 1 , n if (. not . any ( str ( i : i ) == valid_chars )) return end do valid = . true . !all are in the set, so it is OK end if end function valid_json_hex","tags":"","loc":"proc/valid_json_hex.html"},{"title":"compact_real_string – JSON-Fortran","text":"private subroutine compact_real_string(str) Compact a string representing a real number, so that\n the same value is displayed with fewer characters. See also real_to_string Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(inout) :: str string representation of a real number. Called by proc~~compact_real_string~~CalledByGraph proc~compact_real_string compact_real_string proc~real_to_string real_to_string proc~real_to_string->proc~compact_real_string proc~json_get_string json_core%json_get_string proc~json_get_string->proc~real_to_string proc~json_value_print json_core%json_value_print proc~json_value_print->proc~real_to_string proc~json_value_print->proc~json_value_print proc~json_is_vector json_core%json_is_vector proc~json_value_print->proc~json_is_vector none~get~2 json_core%get none~get~2->proc~json_get_string proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_replace->none~insert_after proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine compact_real_string ( str ) implicit none character ( kind = CK , len =* ), intent ( inout ) :: str !! string representation of a real number. character ( kind = CK , len = len ( str )) :: significand character ( kind = CK , len = len ( str )) :: expnt character ( kind = CK , len = 2 ) :: separator integer ( IK ) :: exp_start integer ( IK ) :: decimal_pos integer ( IK ) :: sig_trim integer ( IK ) :: exp_trim integer ( IK ) :: i !! counter str = adjustl ( str ) exp_start = scan ( str , CK_ 'eEdD' ) if ( exp_start == 0 ) exp_start = scan ( str , CK_ '-+' , back = . true .) decimal_pos = scan ( str , CK_ '.' ) if ( exp_start /= 0 ) separator = str ( exp_start : exp_start ) if ( exp_start < decimal_pos ) then !possibly signed, exponent-less float significand = str sig_trim = len ( trim ( significand )) do i = len ( trim ( significand )), decimal_pos + 2 , - 1 !look from right to left at 0s !but save one after the decimal place if ( significand ( i : i ) == '0' ) then sig_trim = i - 1 else exit end if end do str = trim ( significand ( 1 : sig_trim )) else if ( exp_start > decimal_pos ) then !float has exponent significand = str ( 1 : exp_start - 1 ) sig_trim = len ( trim ( significand )) do i = len ( trim ( significand )), decimal_pos + 2 , - 1 !look from right to left at 0s if ( significand ( i : i ) == '0' ) then sig_trim = i - 1 else exit end if end do expnt = adjustl ( str ( exp_start + 1 :)) if ( expnt ( 1 : 1 ) == '+' . or . expnt ( 1 : 1 ) == '-' ) then separator = trim ( adjustl ( separator )) // expnt ( 1 : 1 ) exp_start = exp_start + 1 expnt = adjustl ( str ( exp_start + 1 :)) end if exp_trim = 1 do i = 1 ,( len ( trim ( expnt )) - 1 ) !look at exponent leading zeros saving last if ( expnt ( i : i ) == '0' ) then exp_trim = i + 1 else exit end if end do str = trim ( adjustl ( significand ( 1 : sig_trim ))) // & trim ( adjustl ( separator )) // & trim ( adjustl ( expnt ( exp_trim :))) !else ! mal-formed real, BUT this code should be unreachable end if end subroutine compact_real_string","tags":"","loc":"proc/compact_real_string.html"},{"title":"escape_string – JSON-Fortran","text":"public subroutine escape_string(str_in, str_out, escape_solidus) Add the escape characters to a string for adding to JSON . Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str_in character(kind=CK, len=:), intent(out), allocatable :: str_out logical(kind=LK), intent(in) :: escape_solidus if the solidus (forward slash)\nis also to be escaped Calls proc~~escape_string~~CallsGraph proc~escape_string escape_string proc~valid_json_hex valid_json_hex proc~escape_string->proc~valid_json_hex Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~escape_string~~CalledByGraph proc~escape_string escape_string proc~json_get_string json_core%json_get_string proc~json_get_string->proc~escape_string proc~json_value_print json_core%json_value_print proc~json_value_print->proc~escape_string proc~json_value_print->proc~json_value_print proc~json_is_vector json_core%json_is_vector proc~json_value_print->proc~json_is_vector none~get~2 json_core%get none~get~2->proc~json_get_string proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_replace->none~insert_after proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine escape_string ( str_in , str_out , escape_solidus ) implicit none character ( kind = CK , len =* ), intent ( in ) :: str_in character ( kind = CK , len = :), allocatable , intent ( out ) :: str_out logical ( LK ), intent ( in ) :: escape_solidus !! if the solidus (forward slash) !! is also to be escaped integer ( IK ) :: i !! counter integer ( IK ) :: ipos !! accumulated string size !! (so we can allocate it in chunks for !! greater runtime efficiency) character ( kind = CK , len = 1 ) :: c !! for reading `str_in` one character at a time. #if defined __GFORTRAN__ character ( kind = CK , len = :), allocatable :: tmp !! workaround for bug in gfortran 6.1 #endif logical :: to_be_escaped !! if there are characters to be escaped character ( kind = CK , len =* ), parameter :: specials_no_slash = quotation_mark // & backslash // & bspace // & formfeed // & newline // & carriage_return // & horizontal_tab character ( kind = CK , len =* ), parameter :: specials = specials_no_slash // slash !Do a quick scan for the special characters, ! if any are present, then process the string, ! otherwise, return the string as is. if ( escape_solidus ) then to_be_escaped = scan ( str_in , specials ) > 0 else to_be_escaped = scan ( str_in , specials_no_slash ) > 0 end if if ( to_be_escaped ) then str_out = repeat ( space , chunk_size ) ipos = 1 !go through the string and look for special characters: do i = 1 , len ( str_in ) c = str_in ( i : i ) !get next character in the input string !if the string is not big enough, then add another chunk: if ( ipos + 3 > len ( str_out )) str_out = str_out // blank_chunk select case ( c ) case ( backslash ) !test for unicode sequence: '\\uXXXX' ![don't add an extra '\\' for those] if ( i + 5 <= len ( str_in )) then if ( str_in ( i + 1 : i + 1 ) == CK_ 'u' . and . & valid_json_hex ( str_in ( i + 2 : i + 5 ))) then str_out ( ipos : ipos ) = c ipos = ipos + 1 cycle end if end if str_out ( ipos : ipos + 1 ) = backslash // c ipos = ipos + 2 case ( quotation_mark ) str_out ( ipos : ipos + 1 ) = backslash // c ipos = ipos + 2 case ( slash ) if ( escape_solidus ) then str_out ( ipos : ipos + 1 ) = backslash // c ipos = ipos + 2 else str_out ( ipos : ipos ) = c ipos = ipos + 1 end if case ( bspace ) str_out ( ipos : ipos + 1 ) = '\\b' ipos = ipos + 2 case ( formfeed ) str_out ( ipos : ipos + 1 ) = '\\f' ipos = ipos + 2 case ( newline ) str_out ( ipos : ipos + 1 ) = '\\n' ipos = ipos + 2 case ( carriage_return ) str_out ( ipos : ipos + 1 ) = '\\r' ipos = ipos + 2 case ( horizontal_tab ) str_out ( ipos : ipos + 1 ) = '\\t' ipos = ipos + 2 case default str_out ( ipos : ipos ) = c ipos = ipos + 1 end select end do !trim the string if necessary: if ( ipos < len ( str_out ) + 1 ) then if ( ipos == 1 ) then str_out = CK_ '' else #if defined __GFORTRAN__ tmp = str_out ( 1 : ipos - 1 ) !workaround for bug in gfortran 6.1 str_out = tmp #else str_out = str_out ( 1 : ipos - 1 ) !original #endif end if end if else str_out = str_in end if end subroutine escape_string","tags":"","loc":"proc/escape_string.html"},{"title":"integer_to_string – JSON-Fortran","text":"public pure subroutine integer_to_string(ival, int_fmt, str) Convert an integer to a string. Arguments Type Intent Optional Attributes Name integer(kind=IK), intent(in) :: ival integer value. character(kind=CDK, len=*), intent(in) :: int_fmt format for integers character(kind=CK, len=*), intent(out) :: str ival converted to a string. Called by proc~~integer_to_string~~CalledByGraph proc~integer_to_string integer_to_string proc~annotate_invalid_json json_core%annotate_invalid_json proc~annotate_invalid_json->proc~integer_to_string proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~integer_to_string proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~integer_to_string proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_path json_core%json_get_path proc~json_get_path->proc~integer_to_string none~info~2 json_core%info proc~json_get_path->none~info~2 proc~json_get_string json_core%json_get_string proc~json_get_string->proc~integer_to_string proc~json_initialize json_core%json_initialize proc~json_initialize->proc~integer_to_string proc~json_value_print json_core%json_value_print proc~json_value_print->proc~integer_to_string proc~json_value_print->proc~json_value_print proc~json_is_vector json_core%json_is_vector proc~json_value_print->proc~json_is_vector proc~push_char json_core%push_char proc~push_char->proc~integer_to_string none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~get_path json_core%get_path none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~get~2 json_core%get none~get~2->proc~json_get_by_path none~get~2->proc~json_get_string proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~initialize_json_core initialize_json_core proc~initialize_json_core->proc~json_initialize proc~initialize_json_core_in_file json_file%initialize_json_core_in_file proc~initialize_json_core_in_file->proc~json_initialize proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~annotate_invalid_json proc~json_parse_file->proc~json_initialize proc~parse_value json_core%parse_value proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~annotate_invalid_json proc~json_parse_string->proc~json_initialize proc~json_parse_string->proc~parse_value proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~parse_number json_core%parse_number proc~parse_number->proc~push_char proc~parse_value->proc~push_char proc~parse_value->proc~parse_number proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object interface~json_core json_core interface~json_core->proc~initialize_json_core none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~initialize json_file%initialize none~initialize->proc~initialize_json_core_in_file none~load~2 json_core%load none~load~2->proc~json_parse_file proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_value_replace json_core%json_value_replace proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_path none~get_child json_core%get_child proc~json_check_children_for_duplicate_keys->none~get_child proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~wrap_json_create_by_path->none~create proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_path->none~get_path proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~initialize_json_file initialize_json_file proc~initialize_json_file->none~initialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~initialize none~deserialize json_file%deserialize proc~initialize_json_file_from_string->none~deserialize proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~json_file_move_pointer json_file%json_file_move_pointer proc~json_file_move_pointer->none~initialize proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_parse_string->none~deserialize~2 interface~json_file json_file interface~json_file->proc~initialize_json_file interface~json_file->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~convert json_core%convert proc~convert->none~info~2 proc~convert->proc~json_value_replace proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901->none~get_child proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string_v2->none~deserialize proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_file_load_from_string->none~deserialize proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_value_replace->none~insert_after proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure subroutine integer_to_string ( ival , int_fmt , str ) implicit none integer ( IK ), intent ( in ) :: ival !! integer value. character ( kind = CDK , len =* ), intent ( in ) :: int_fmt !! format for integers character ( kind = CK , len =* ), intent ( out ) :: str !! `ival` converted to a string. integer ( IK ) :: istat write ( str , fmt = int_fmt , iostat = istat ) ival if ( istat == 0 ) then str = adjustl ( str ) else str = repeat ( star , len ( str )) end if end subroutine integer_to_string","tags":"","loc":"proc/integer_to_string.html"},{"title":"real_to_string – JSON-Fortran","text":"public subroutine real_to_string(rval, real_fmt, compact_real, non_normals_to_null, str) Convert a real value to a string. Modified Izaak Beekman : 02/24/2015 : added the compact option. Jacob Williams : 10/27/2015 : added the star option. Jacob Williams : 07/07/2019 : added null and ieee options. Arguments Type Intent Optional Attributes Name real(kind=RK), intent(in) :: rval real value. character(kind=CDK, len=*), intent(in) :: real_fmt format for real numbers logical(kind=LK), intent(in) :: compact_real compact the string so that it is\ndisplayed with fewer characters logical(kind=LK), intent(in) :: non_normals_to_null If True, NaN, Infinity, or -Infinity are returned as null .\nIf False, the string value will be returned in quotes\n(e.g., “NaN”, “Infinity”, or “-Infinity” ) character(kind=CK, len=*), intent(out) :: str rval converted to a string. Calls proc~~real_to_string~~CallsGraph proc~real_to_string real_to_string proc~compact_real_string compact_real_string proc~real_to_string->proc~compact_real_string Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~real_to_string~~CalledByGraph proc~real_to_string real_to_string proc~json_get_string json_core%json_get_string proc~json_get_string->proc~real_to_string proc~json_value_print json_core%json_value_print proc~json_value_print->proc~real_to_string proc~json_value_print->proc~json_value_print proc~json_is_vector json_core%json_is_vector proc~json_value_print->proc~json_is_vector none~get~2 json_core%get none~get~2->proc~json_get_string proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_value_replace->none~insert_after proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine real_to_string ( rval , real_fmt , compact_real , non_normals_to_null , str ) implicit none real ( RK ), intent ( in ) :: rval !! real value. character ( kind = CDK , len =* ), intent ( in ) :: real_fmt !! format for real numbers logical ( LK ), intent ( in ) :: compact_real !! compact the string so that it is !! displayed with fewer characters logical ( LK ), intent ( in ) :: non_normals_to_null !! If True, NaN, Infinity, or -Infinity are returned as `null`. !! If False, the string value will be returned in quotes !! (e.g., \"NaN\", \"Infinity\", or \"-Infinity\" ) character ( kind = CK , len =* ), intent ( out ) :: str !! `rval` converted to a string. integer ( IK ) :: istat !! write `iostat` flag if ( ieee_is_finite ( rval ) . and . . not . ieee_is_nan ( rval )) then ! normal real numbers if ( real_fmt == star ) then write ( str , fmt =* , iostat = istat ) rval else write ( str , fmt = real_fmt , iostat = istat ) rval end if if ( istat == 0 ) then !in this case, the default string will be compacted, ! so that the same value is displayed with fewer characters. if ( compact_real ) call compact_real_string ( str ) else str = repeat ( star , len ( str )) ! error end if else ! special cases for NaN, Infinity, and -Infinity if ( non_normals_to_null ) then ! return it as a JSON null value str = null_str else ! Let the compiler do the real to string conversion ! like before, but put the result in quotes so it ! gets printed as a string write ( str , fmt =* , iostat = istat ) rval if ( istat == 0 ) then str = quotation_mark // trim ( adjustl ( str )) // quotation_mark else str = repeat ( star , len ( str )) ! error end if end if end if end subroutine real_to_string","tags":"","loc":"proc/real_to_string.html"},{"title":"replace_string – JSON-Fortran","text":"public pure subroutine replace_string(str, s1, s2) Replace all occurrences of s1 in str with s2 . A case-sensitive match is used. Note str must be allocated. Arguments Type Intent Optional Attributes Name character(kind=CK, len=:), intent(inout), allocatable :: str character(kind=CK, len=*), intent(in) :: s1 character(kind=CK, len=*), intent(in) :: s2 Called by proc~~replace_string~~CalledByGraph proc~replace_string replace_string proc~decode_rfc6901 decode_rfc6901 proc~decode_rfc6901->proc~replace_string proc~encode_rfc6901 encode_rfc6901 proc~encode_rfc6901->proc~replace_string proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->proc~decode_rfc6901 none~get_child json_core%get_child proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->proc~encode_rfc6901 none~info~2 json_core%info proc~json_get_path->none~info~2 none~get_path json_core%get_path none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path proc~json_get_by_path json_core%json_get_by_path proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket none~get~2 json_core%get none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_path proc~json_check_children_for_duplicate_keys->none~get_child proc~wrap_json_get_path->none~get_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code pure subroutine replace_string ( str , s1 , s2 ) implicit none character ( kind = CK , len = :), allocatable , intent ( inout ) :: str character ( kind = CK , len =* ), intent ( in ) :: s1 character ( kind = CK , len =* ), intent ( in ) :: s2 character ( kind = CK , len = :), allocatable :: tmp !! temporary string for accumulating result integer ( IK ) :: i !! counter integer ( IK ) :: n !! for accumulating the string integer ( IK ) :: ilen !! length of `str` string integer ( IK ) :: ilen1 !! length of `s1` string if ( len ( str ) > 0 ) then tmp = CK_ '' ! initialize ilen1 = len ( s1 ) ! . ! '123ab789' do ilen = len ( str ) i = index ( str , s1 ) if ( i > 0 ) then if ( i > 1 ) tmp = tmp // str ( 1 : i - 1 ) tmp = tmp // s2 ! replace s1 with s2 in new string n = i + ilen1 ! start of remainder of str to keep if ( n <= ilen ) then str = str ( n : ilen ) else ! done exit end if else ! done: get remainder of string tmp = tmp // str exit end if end do str = tmp end if end subroutine replace_string","tags":"","loc":"proc/replace_string.html"},{"title":"string_to_integer – JSON-Fortran","text":"public subroutine string_to_integer(str, ival, status_ok) Convert a string into an integer. History Jacob Williams : 12/10/2013 : Rewrote original parse_integer routine.\n Added error checking. Modified by Izaak Beekman Jacob Williams : 2/4/2017 : moved core logic to this routine. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str the string to convert to an integer integer(kind=IK), intent(out) :: ival the integer value logical(kind=LK), intent(out) :: status_ok true if there were no errors Called by proc~~string_to_integer~~CalledByGraph proc~string_to_integer string_to_integer proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->proc~string_to_integer none~get_child json_core%get_child proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->proc~string_to_integer proc~json_get_by_path_jsonpath_bracket->none~get_child proc~convert json_core%convert proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->proc~string_to_integer proc~json_get_by_path_rfc6901->none~get_child proc~json_get_integer json_core%json_get_integer proc~json_get_integer->proc~string_to_integer proc~string_to_int json_core%string_to_int proc~string_to_int->proc~string_to_integer none~get~2 json_core%get none~get~2->proc~json_get_integer proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~parse_number json_core%parse_number proc~parse_number->proc~string_to_int none~create json_core%create none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~parse_value json_core%parse_value proc~parse_value->proc~parse_number proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~info~2 proc~json_value_replace json_core%json_value_replace proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object proc~wrap_json_create_by_path->none~create none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~convert->none~info~2 proc~convert->proc~json_value_replace proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine string_to_integer ( str , ival , status_ok ) implicit none character ( kind = CK , len =* ), intent ( in ) :: str !! the string to convert to an integer integer ( IK ), intent ( out ) :: ival !! the integer value logical ( LK ), intent ( out ) :: status_ok !! true if there were no errors character ( kind = CDK , len = :), allocatable :: digits integer ( IK ) :: ndigits_digits , ndigits , ierr ! Compute how many digits we need to read ndigits = 2 * len_trim ( str ) if ( ndigits /= 0 ) then ndigits_digits = nint ( log10 ( real ( ndigits ))) + 1 allocate ( character ( kind = CDK , len = ndigits_digits ) :: digits ) write ( digits , '(I0)' ) ndigits !gfortran will have a runtime error with * edit descriptor here ! gfortran bug: '*' edit descriptor for ISO_10646 strings does bad stuff. read ( str , '(I' // trim ( digits ) // ')' , iostat = ierr ) ival !string to integer ! error check: status_ok = ( ierr == 0 ) else status_ok = . false . end if if (. not . status_ok ) ival = 0_IK end subroutine string_to_integer","tags":"","loc":"proc/string_to_integer.html"},{"title":"string_to_real – JSON-Fortran","text":"public subroutine string_to_real(str, use_quiet_nan, rval, status_ok) Convert a string into a real(RK) . History Jacob Williams, 10/27/2015 : Now using fmt=* , rather than fmt=real_fmt , since it doesn’t work for some unusual cases\n (e.g., when str='1E-5' ). Jacob Williams : 2/6/2017 : moved core logic to this routine. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str the string to convert to a real logical(kind=LK), intent(in) :: use_quiet_nan if true, return NaN’s as ieee_quiet_nan .\notherwise, use ieee_signaling_nan . real(kind=RK), intent(out) :: rval str converted to a real value logical(kind=LK), intent(out) :: status_ok true if there were no errors Called by proc~~string_to_real~~CalledByGraph proc~string_to_real string_to_real proc~json_get_real json_core%json_get_real proc~json_get_real->proc~string_to_real proc~string_to_dble json_core%string_to_dble proc~string_to_dble->proc~string_to_real none~get~2 json_core%get none~get~2->proc~json_get_real proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_array_by_path proc~wrap_json_get_by_path json_core%wrap_json_get_by_path none~get~2->proc~wrap_json_get_by_path proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_by_path proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_by_path proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_by_path proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_by_path proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_real_vec_by_path proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_by_path proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~parse_number json_core%parse_number proc~parse_number->proc~string_to_dble proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer json_file%json_file_get_integer proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec json_file%json_file_get_integer_vec proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical json_file%json_file_get_logical proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec json_file%json_file_get_logical_vec proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object json_file%json_file_get_object proc~json_file_get_object->none~get~2 proc~json_file_get_real json_file%json_file_get_real proc~json_file_get_real->none~get~2 proc~json_file_get_real32 json_file%json_file_get_real32 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec json_file%json_file_get_real_vec proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string json_file%json_file_get_string proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec json_file%json_file_get_string_vec proc~json_file_get_string_vec->none~get~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_array_by_path->none~get~2 proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_string_by_path->none~get~2 proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_info_by_path json_core%json_info_by_path proc~json_info_by_path->none~get~2 none~info~2 json_core%info proc~json_info_by_path->none~info~2 proc~json_matrix_info_by_path json_core%json_matrix_info_by_path proc~json_matrix_info_by_path->none~get~2 none~matrix_info~2 json_core%matrix_info proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 none~add_by_path~2 json_core%add_by_path proc~json_update_integer->none~add_by_path~2 proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~add_by_path~2 proc~json_update_real json_core%json_update_real proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~add_by_path~2 proc~json_update_string json_core%json_update_string proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~add_by_path~2 proc~json_valid_path json_core%json_valid_path proc~json_valid_path->none~get~2 proc~json_value_remove_if_present json_core%json_value_remove_if_present proc~json_value_remove_if_present->none~get~2 proc~parse_value json_core%parse_value proc~parse_value->proc~parse_number proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~parse_object json_core%parse_object proc~parse_value->proc~parse_object proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->none~get~2 none~get json_file%get none~get->proc~json_file_get_alloc_string_vec none~get->proc~json_file_get_integer none~get->proc~json_file_get_integer_vec none~get->proc~json_file_get_logical none~get->proc~json_file_get_logical_vec none~get->proc~json_file_get_object none~get->proc~json_file_get_real none~get->proc~json_file_get_real32 none~get->proc~json_file_get_real32_vec none~get->proc~json_file_get_real_vec none~get->proc~json_file_get_string none~get->proc~json_file_get_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_integer_vec proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_logical_vec proc~wrap_json_file_get_object json_file%wrap_json_file_get_object none~get->proc~wrap_json_file_get_object proc~wrap_json_file_get_real json_file%wrap_json_file_get_real none~get->proc~wrap_json_file_get_real proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32 proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real32_vec proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_real_vec proc~wrap_json_file_get_string json_file%wrap_json_file_get_string none~get->proc~wrap_json_file_get_string proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec none~get->proc~wrap_json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name none~info~2->proc~json_info_by_path proc~wrap_json_info_by_path json_core%wrap_json_info_by_path none~info~2->proc~wrap_json_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path none~matrix_info~2->proc~wrap_json_matrix_info_by_path none~remove_if_present json_core%remove_if_present none~remove_if_present->proc~json_value_remove_if_present proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present none~remove_if_present->proc~wrap_json_value_remove_if_present none~string_info->proc~json_string_info none~valid_path~2 json_core%valid_path none~valid_path~2->proc~json_valid_path proc~wrap_json_valid_path json_core%wrap_json_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value proc~parse_object->proc~parse_value proc~parse_object->proc~parse_object none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~convert json_core%convert proc~convert->none~info~2 proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~json_add_integer_by_path->none~info~2 none~create json_core%create proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path json_core%json_add_member_by_path proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~create proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real_by_path json_core%json_add_real_by_path proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~create proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child none~get_path json_core%get_path proc~json_check_children_for_duplicate_keys->none~get_path proc~json_file_remove json_file%json_file_remove proc~json_file_remove->none~remove_if_present proc~json_file_valid_path json_file%json_file_valid_path proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info json_file%json_file_variable_info proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_get_by_path_default->none~get_child proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path_rfc6901->none~get_child proc~json_get_path json_core%json_get_path proc~json_get_path->none~info~2 proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_remove_if_present->none~remove_if_present none~get_path->proc~json_get_path proc~wrap_json_get_path json_core%wrap_json_get_path none~get_path->proc~wrap_json_get_path none~info json_file%info none~info->proc~json_file_variable_info proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info none~info->proc~wrap_json_file_variable_info none~insert_after->proc~json_value_insert_after_child_by_index none~matrix_info json_file%matrix_info none~matrix_info->proc~json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info none~matrix_info->proc~wrap_json_file_variable_matrix_info none~remove json_file%remove none~remove->proc~json_file_remove proc~wrap_json_file_remove json_file%wrap_json_file_remove none~remove->proc~wrap_json_file_remove none~valid_path json_file%valid_path none~valid_path->proc~json_file_valid_path proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path none~valid_path->proc~wrap_json_file_valid_path proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_create_by_path json_core%json_create_by_path proc~json_create_by_path->proc~json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_value_print json_core%json_value_print proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_parse_string->none~deserialize~2 none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~create->proc~json_create_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path none~create->proc~wrap_json_create_by_path none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->proc~json_value_print proc~json_value_replace->none~insert_after proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~wrap_json_file_remove->none~remove proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_path->none~get_path proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_file_add_integer json_file%json_file_add_integer proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_logical json_file%json_file_add_logical proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_object json_file%json_file_add_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_real json_file%json_file_add_real proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real32 json_file%json_file_add_real32 proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_create_by_path->none~create proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine string_to_real ( str , use_quiet_nan , rval , status_ok ) implicit none character ( kind = CK , len =* ), intent ( in ) :: str !! the string to convert to a real logical ( LK ), intent ( in ) :: use_quiet_nan !! if true, return NaN's as `ieee_quiet_nan`. !! otherwise, use `ieee_signaling_nan`. real ( RK ), intent ( out ) :: rval !! `str` converted to a real value logical ( LK ), intent ( out ) :: status_ok !! true if there were no errors integer ( IK ) :: ierr !! read iostat error code read ( str , fmt =* , iostat = ierr ) rval status_ok = ( ierr == 0 ) if (. not . status_ok ) then rval = 0.0_RK else if ( ieee_support_nan ( rval )) then if ( ieee_is_nan ( rval )) then ! make sure to return the correct NaN if ( use_quiet_nan ) then rval = ieee_value ( rval , ieee_quiet_nan ) else rval = ieee_value ( rval , ieee_signaling_nan ) end if end if end if end if end subroutine string_to_real","tags":"","loc":"proc/string_to_real.html"},{"title":"unescape_string – JSON-Fortran","text":"public subroutine unescape_string(str, error_message) Remove the escape characters from a JSON string and return it. The escaped characters are denoted by the \\ character: \\\" - quotation mark \\\\ - reverse solidus \\/ - solidus \\b - backspace \\f - formfeed \\n - newline (LF) \\r - carriage return (CR) \\t - horizontal tab \\uXXXX - 4 hexadecimal digits Arguments Type Intent Optional Attributes Name character(kind=CK, len=:), intent(inout), allocatable :: str in: string as stored\n in a json_value . out: decoded string. character(kind=CK, len=:), intent(out), allocatable :: error_message will be allocated if\nthere was an error Calls proc~~unescape_string~~CallsGraph proc~unescape_string unescape_string proc~valid_json_hex valid_json_hex proc~unescape_string->proc~valid_json_hex Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by proc~~unescape_string~~CalledByGraph proc~unescape_string unescape_string proc~parse_string json_core%parse_string proc~parse_string->proc~unescape_string proc~parse_object json_core%parse_object proc~parse_object->proc~parse_string proc~parse_object->proc~parse_object proc~parse_value json_core%parse_value proc~parse_object->proc~parse_value proc~parse_value->proc~parse_string proc~parse_value->proc~parse_object proc~parse_array json_core%parse_array proc~parse_value->proc~parse_array proc~json_parse_file json_core%json_parse_file proc~json_parse_file->proc~parse_value proc~json_parse_string json_core%json_parse_string proc~json_parse_string->proc~parse_value proc~parse_array->proc~parse_value none~deserialize~2 json_core%deserialize none~deserialize~2->proc~json_parse_string proc~wrap_json_parse_string json_core%wrap_json_parse_string none~deserialize~2->proc~wrap_json_parse_string none~load~2 json_core%load none~load~2->proc~json_parse_file proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_load_from_string json_file%json_file_load_from_string proc~json_file_load_from_string->none~deserialize~2 proc~wrap_json_parse_string->none~deserialize~2 none~deserialize json_file%deserialize none~deserialize->proc~json_file_load_from_string proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string none~deserialize->proc~wrap_json_file_load_from_string proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~assign_string_to_json_file->none~deserialize proc~initialize_json_file_from_string initialize_json_file_from_string proc~initialize_json_file_from_string->none~deserialize proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~initialize_json_file_from_string_v2->none~deserialize proc~wrap_json_file_load_from_string->none~deserialize interface~json_file json_file interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 interface~json_file->proc~wrap_initialize_json_file_from_string_v2 proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code subroutine unescape_string ( str , error_message ) implicit none character ( kind = CK , len = :), allocatable , intent ( inout ) :: str !! * in: string as stored !! in a [[json_value]]. !! * out: decoded string. character ( kind = CK , len = :), allocatable , intent ( out ) :: error_message !! will be allocated if !! there was an error integer :: i !! counter integer :: n !! length of `str` integer :: m !! length of `str_tmp` character ( kind = CK , len = 1 ) :: c !! for scanning each character in string character ( kind = CK , len = :), allocatable :: str_tmp !! temp decoded string (if the input !! string contains an escape character !! and needs to be decoded). if ( scan ( str , backslash ) > 0 ) then !there is at least one escape character, so process this string: n = len ( str ) str_tmp = repeat ( space , n ) !size the output string (will be trimmed later) m = 0 !counter in str_tmp i = 0 !counter in str do i = i + 1 if ( i > n ) exit ! finished c = str ( i : i ) ! get next character in the string if ( c == backslash ) then if ( i < n ) then i = i + 1 c = str ( i : i ) !character after the escape select case ( c ) case ( quotation_mark , backslash , slash ) !use d as is m = m + 1 str_tmp ( m : m ) = c case ( CK_ 'b' ) c = bspace m = m + 1 str_tmp ( m : m ) = c case ( CK_ 'f' ) c = formfeed m = m + 1 str_tmp ( m : m ) = c case ( CK_ 'n' ) c = newline m = m + 1 str_tmp ( m : m ) = c case ( CK_ 'r' ) c = carriage_return m = m + 1 str_tmp ( m : m ) = c case ( CK_ 't' ) c = horizontal_tab m = m + 1 str_tmp ( m : m ) = c case ( CK_ 'u' ) ! expecting 4 hexadecimal digits after ! the escape character [\\uXXXX] !for now, we are just returning them as is ![not checking to see if it is a valid hex value] ! ! Example: ! 123456 ! \\uXXXX if ( i + 4 <= n ) then ! validate the hex string: if ( valid_json_hex ( str ( i + 1 : i + 4 ))) then m = m + 1 str_tmp ( m : m + 5 ) = str ( i - 1 : i + 4 ) i = i + 4 m = m + 5 else error_message = 'Error in unescape_string:' // & ' Invalid hexadecimal sequence in string \"' // & trim ( str ) // '\" [' // str ( i - 1 : i + 4 ) // ']' if ( allocated ( str_tmp )) deallocate ( str_tmp ) return end if else error_message = 'Error in unescape_string:' // & ' Invalid hexadecimal sequence in string \"' // & trim ( str ) // '\" [' // str ( i - 1 :) // ']' if ( allocated ( str_tmp )) deallocate ( str_tmp ) return end if case default !unknown escape character error_message = 'Error in unescape_string:' // & ' unknown escape sequence in string \"' // & trim ( str ) // '\" [' // backslash // c // ']' if ( allocated ( str_tmp )) deallocate ( str_tmp ) return end select else ! an escape character is the last character in ! the string. This is an error. error_message = 'Error in unescape_string:' // & ' invalid escape character in string \"' // & trim ( str ) // '\"' if ( allocated ( str_tmp )) deallocate ( str_tmp ) return end if else m = m + 1 str_tmp ( m : m ) = c end if end do !trim trailing space: str = str_tmp ( 1 : m ) end if end subroutine unescape_string","tags":"","loc":"proc/unescape_string.html"},{"title":"operator(//) – JSON-Fortran","text":"public interface operator(//) Provide a means to convert to UCS4 while\nconcatenating UCS4 and default strings Calls interface~~operator(SLASHSLASH)~~CallsGraph interface~operator(SLASHSLASH) operator(//) proc~default_join_ucs4 default_join_ucs4 interface~operator(SLASHSLASH)->proc~default_join_ucs4 proc~ucs4_join_default ucs4_join_default interface~operator(SLASHSLASH)->proc~ucs4_join_default interface~to_unicode to_unicode proc~default_join_ucs4->interface~to_unicode proc~ucs4_join_default->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Module Procedures private pure function ucs4_join_default (ucs4_str, def_str) result(res) Author Izaak Beekman CK // CDK operator. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: ucs4_str character(kind=CDK, len=*), intent(in) :: def_str Return Value character(kind=CK, len=len=(len(ucs4_str)+len(def_str))) private pure function default_join_ucs4 (def_str, ucs4_str) result(res) Author Izaak Beekman CDK // CK operator. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: def_str character(kind=CK, len=*), intent(in) :: ucs4_str Return Value character(kind=CK, len=len=(len(def_str)+len(ucs4_str)))","tags":"","loc":"interface/operator(SLASHSLASH).html"},{"title":"operator(/=) – JSON-Fortran","text":"public interface operator(/=) Provide a string /= operator that works\nwith mixed kinds Calls interface~~operator(SLASH=)~~CallsGraph interface~operator(SLASH=) operator(/=) proc~default_neq_ucs4 default_neq_ucs4 interface~operator(SLASH=)->proc~default_neq_ucs4 proc~ucs4_neq_default ucs4_neq_default interface~operator(SLASH=)->proc~ucs4_neq_default interface~to_unicode to_unicode proc~default_neq_ucs4->interface~to_unicode proc~ucs4_neq_default->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Module Procedures private pure elemental function ucs4_neq_default (ucs4_str, def_str) result(res) Author Jacob Williams CK /= CDK operator. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: ucs4_str character(kind=CDK, len=*), intent(in) :: def_str Return Value logical(kind=LK) private pure elemental function default_neq_ucs4 (def_str, ucs4_str) result(res) Author Jacob Williams CDK /= CK operator. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: def_str character(kind=CK, len=*), intent(in) :: ucs4_str Return Value logical(kind=LK)","tags":"","loc":"interface/operator(SLASH=).html"},{"title":"operator(==) – JSON-Fortran","text":"public interface operator(==) Provide a string == operator that works\nwith mixed kinds Calls interface~~operator(==)~~CallsGraph interface~operator(==) operator(==) proc~default_comp_ucs4 default_comp_ucs4 interface~operator(==)->proc~default_comp_ucs4 proc~ucs4_comp_default ucs4_comp_default interface~operator(==)->proc~ucs4_comp_default interface~to_unicode to_unicode proc~default_comp_ucs4->interface~to_unicode proc~ucs4_comp_default->interface~to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Module Procedures private pure elemental function ucs4_comp_default (ucs4_str, def_str) result(res) Author Izaak Beekman CK == CDK operator. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: ucs4_str character(kind=CDK, len=*), intent(in) :: def_str Return Value logical(kind=LK) private pure elemental function default_comp_ucs4 (def_str, ucs4_str) result(res) Author Izaak Beekman CDK == CK operator. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: def_str character(kind=CK, len=*), intent(in) :: ucs4_str Return Value logical(kind=LK)","tags":"","loc":"interface/operator(==).html"},{"title":"to_unicode – JSON-Fortran","text":"public interface to_unicode Convert a ‘DEFAULT’ kind character input to\n‘ISO_10646’ kind and return it Calls interface~~to_unicode~~CallsGraph interface~to_unicode to_unicode proc~to_uni to_uni interface~to_unicode->proc~to_uni proc~to_uni_vec to_uni_vec interface~to_unicode->proc~to_uni_vec Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Called by interface~~to_unicode~~CalledByGraph interface~to_unicode to_unicode proc~default_comp_ucs4 default_comp_ucs4 proc~default_comp_ucs4->interface~to_unicode proc~default_join_ucs4 default_join_ucs4 proc~default_join_ucs4->interface~to_unicode proc~default_neq_ucs4 default_neq_ucs4 proc~default_neq_ucs4->interface~to_unicode proc~json_add_string_by_path_path_ascii json_core%json_add_string_by_path_path_ascii proc~json_add_string_by_path_path_ascii->interface~to_unicode proc~json_add_string_by_path json_core%json_add_string_by_path proc~json_add_string_by_path_path_ascii->proc~json_add_string_by_path proc~json_add_string_by_path_value_ascii json_core%json_add_string_by_path_value_ascii proc~json_add_string_by_path_value_ascii->interface~to_unicode proc~json_add_string_by_path_value_ascii->proc~json_add_string_by_path proc~json_add_string_vec_by_path_path_ascii json_core%json_add_string_vec_by_path_path_ascii proc~json_add_string_vec_by_path_path_ascii->interface~to_unicode proc~json_add_string_vec_by_path json_core%json_add_string_vec_by_path proc~json_add_string_vec_by_path_path_ascii->proc~json_add_string_vec_by_path proc~json_add_string_vec_by_path_value_ascii json_core%json_add_string_vec_by_path_value_ascii proc~json_add_string_vec_by_path_value_ascii->interface~to_unicode proc~json_add_string_vec_by_path_value_ascii->proc~json_add_string_vec_by_path proc~json_file_add_string_path_ascii json_file%json_file_add_string_path_ascii proc~json_file_add_string_path_ascii->interface~to_unicode none~create_object json_core%create_object proc~json_file_add_string_path_ascii->none~create_object proc~json_file_add_string json_file%json_file_add_string proc~json_file_add_string_path_ascii->proc~json_file_add_string proc~json_file_add_string_value_ascii json_file%json_file_add_string_value_ascii proc~json_file_add_string_value_ascii->interface~to_unicode proc~json_file_add_string_value_ascii->none~create_object proc~json_file_add_string_value_ascii->proc~json_file_add_string proc~json_file_add_string_vec_path_ascii json_file%json_file_add_string_vec_path_ascii proc~json_file_add_string_vec_path_ascii->interface~to_unicode proc~json_file_add_string_vec json_file%json_file_add_string_vec proc~json_file_add_string_vec_path_ascii->proc~json_file_add_string_vec proc~json_file_add_string_vec_vec_ascii json_file%json_file_add_string_vec_vec_ascii proc~json_file_add_string_vec_vec_ascii->interface~to_unicode proc~json_file_add_string_vec_vec_ascii->proc~json_file_add_string_vec proc~json_file_rename_name_ascii json_file%json_file_rename_name_ascii proc~json_file_rename_name_ascii->interface~to_unicode proc~json_file_rename_path_ascii json_file%json_file_rename_path_ascii proc~json_file_rename_path_ascii->interface~to_unicode proc~json_file_update_string_name_ascii json_file%json_file_update_string_name_ascii proc~json_file_update_string_name_ascii->interface~to_unicode none~update~2 json_file%update proc~json_file_update_string_name_ascii->none~update~2 proc~json_file_update_string_val_ascii json_file%json_file_update_string_val_ascii proc~json_file_update_string_val_ascii->interface~to_unicode proc~json_file_update_string_val_ascii->none~update~2 proc~json_rename_by_path_name_ascii json_core%json_rename_by_path_name_ascii proc~json_rename_by_path_name_ascii->interface~to_unicode proc~json_rename_by_path_path_ascii json_core%json_rename_by_path_path_ascii proc~json_rename_by_path_path_ascii->interface~to_unicode proc~json_update_string_name_ascii json_core%json_update_string_name_ascii proc~json_update_string_name_ascii->interface~to_unicode none~update~4 json_core%update proc~json_update_string_name_ascii->none~update~4 proc~json_update_string_val_ascii json_core%json_update_string_val_ascii proc~json_update_string_val_ascii->interface~to_unicode proc~json_update_string_val_ascii->none~update~4 proc~json_value_add_string_name_ascii json_core%json_value_add_string_name_ascii proc~json_value_add_string_name_ascii->interface~to_unicode none~add~4 json_core%add proc~json_value_add_string_name_ascii->none~add~4 proc~json_value_add_string_val_ascii json_core%json_value_add_string_val_ascii proc~json_value_add_string_val_ascii->interface~to_unicode proc~json_value_add_string_val_ascii->none~add~4 proc~json_value_add_string_vec_name_ascii json_core%json_value_add_string_vec_name_ascii proc~json_value_add_string_vec_name_ascii->interface~to_unicode proc~json_value_add_string_vec_name_ascii->none~add~4 proc~json_value_add_string_vec_val_ascii json_core%json_value_add_string_vec_val_ascii proc~json_value_add_string_vec_val_ascii->interface~to_unicode proc~json_value_add_string_vec_val_ascii->none~add~4 proc~ucs4_comp_default ucs4_comp_default proc~ucs4_comp_default->interface~to_unicode proc~ucs4_join_default ucs4_join_default proc~ucs4_join_default->interface~to_unicode proc~ucs4_neq_default ucs4_neq_default proc~ucs4_neq_default->interface~to_unicode proc~wrap_assign_string_to_json_file json_file%wrap_assign_string_to_json_file proc~wrap_assign_string_to_json_file->interface~to_unicode proc~assign_string_to_json_file json_file%assign_string_to_json_file proc~wrap_assign_string_to_json_file->proc~assign_string_to_json_file proc~wrap_initialize_json_file_from_string wrap_initialize_json_file_from_string proc~wrap_initialize_json_file_from_string->interface~to_unicode proc~initialize_json_file_from_string initialize_json_file_from_string proc~wrap_initialize_json_file_from_string->proc~initialize_json_file_from_string proc~wrap_initialize_json_file_from_string_v2 wrap_initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string_v2->interface~to_unicode proc~initialize_json_file_from_string_v2 initialize_json_file_from_string_v2 proc~wrap_initialize_json_file_from_string_v2->proc~initialize_json_file_from_string_v2 proc~wrap_json_add_integer_by_path json_core%wrap_json_add_integer_by_path proc~wrap_json_add_integer_by_path->interface~to_unicode proc~json_add_integer_by_path json_core%json_add_integer_by_path proc~wrap_json_add_integer_by_path->proc~json_add_integer_by_path proc~wrap_json_add_integer_vec_by_path json_core%wrap_json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->interface~to_unicode proc~json_add_integer_vec_by_path json_core%json_add_integer_vec_by_path proc~wrap_json_add_integer_vec_by_path->proc~json_add_integer_vec_by_path proc~wrap_json_add_logical_by_path json_core%wrap_json_add_logical_by_path proc~wrap_json_add_logical_by_path->interface~to_unicode proc~json_add_logical_by_path json_core%json_add_logical_by_path proc~wrap_json_add_logical_by_path->proc~json_add_logical_by_path proc~wrap_json_add_logical_vec_by_path json_core%wrap_json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->interface~to_unicode proc~json_add_logical_vec_by_path json_core%json_add_logical_vec_by_path proc~wrap_json_add_logical_vec_by_path->proc~json_add_logical_vec_by_path proc~wrap_json_add_member_by_path json_core%wrap_json_add_member_by_path proc~wrap_json_add_member_by_path->interface~to_unicode proc~json_add_member_by_path json_core%json_add_member_by_path proc~wrap_json_add_member_by_path->proc~json_add_member_by_path proc~wrap_json_add_real32_by_path json_core%wrap_json_add_real32_by_path proc~wrap_json_add_real32_by_path->interface~to_unicode none~add_by_path~2 json_core%add_by_path proc~wrap_json_add_real32_by_path->none~add_by_path~2 proc~wrap_json_add_real32_vec_by_path json_core%wrap_json_add_real32_vec_by_path proc~wrap_json_add_real32_vec_by_path->interface~to_unicode proc~wrap_json_add_real32_vec_by_path->none~add_by_path~2 proc~wrap_json_add_real_by_path json_core%wrap_json_add_real_by_path proc~wrap_json_add_real_by_path->interface~to_unicode proc~json_add_real_by_path json_core%json_add_real_by_path proc~wrap_json_add_real_by_path->proc~json_add_real_by_path proc~wrap_json_add_real_vec_by_path json_core%wrap_json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->interface~to_unicode proc~json_add_real_vec_by_path json_core%json_add_real_vec_by_path proc~wrap_json_add_real_vec_by_path->proc~json_add_real_vec_by_path proc~wrap_json_add_string_by_path json_core%wrap_json_add_string_by_path proc~wrap_json_add_string_by_path->interface~to_unicode proc~wrap_json_add_string_by_path->proc~json_add_string_by_path proc~wrap_json_add_string_vec_by_path json_core%wrap_json_add_string_vec_by_path proc~wrap_json_add_string_vec_by_path->interface~to_unicode proc~wrap_json_add_string_vec_by_path->proc~json_add_string_vec_by_path proc~wrap_json_create_by_path json_core%wrap_json_create_by_path proc~wrap_json_create_by_path->interface~to_unicode none~create json_core%create proc~wrap_json_create_by_path->none~create proc~wrap_json_file_add_integer json_file%wrap_json_file_add_integer proc~wrap_json_file_add_integer->interface~to_unicode proc~json_file_add_integer json_file%json_file_add_integer proc~wrap_json_file_add_integer->proc~json_file_add_integer proc~wrap_json_file_add_integer_vec json_file%wrap_json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->interface~to_unicode proc~json_file_add_integer_vec json_file%json_file_add_integer_vec proc~wrap_json_file_add_integer_vec->proc~json_file_add_integer_vec proc~wrap_json_file_add_logical json_file%wrap_json_file_add_logical proc~wrap_json_file_add_logical->interface~to_unicode proc~json_file_add_logical json_file%json_file_add_logical proc~wrap_json_file_add_logical->proc~json_file_add_logical proc~wrap_json_file_add_logical_vec json_file%wrap_json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->interface~to_unicode proc~json_file_add_logical_vec json_file%json_file_add_logical_vec proc~wrap_json_file_add_logical_vec->proc~json_file_add_logical_vec proc~wrap_json_file_add_object json_file%wrap_json_file_add_object proc~wrap_json_file_add_object->interface~to_unicode proc~json_file_add_object json_file%json_file_add_object proc~wrap_json_file_add_object->proc~json_file_add_object proc~wrap_json_file_add_real json_file%wrap_json_file_add_real proc~wrap_json_file_add_real->interface~to_unicode proc~json_file_add_real json_file%json_file_add_real proc~wrap_json_file_add_real->proc~json_file_add_real proc~wrap_json_file_add_real32 json_file%wrap_json_file_add_real32 proc~wrap_json_file_add_real32->interface~to_unicode proc~json_file_add_real32 json_file%json_file_add_real32 proc~wrap_json_file_add_real32->proc~json_file_add_real32 proc~wrap_json_file_add_real32_vec json_file%wrap_json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->interface~to_unicode proc~json_file_add_real32_vec json_file%json_file_add_real32_vec proc~wrap_json_file_add_real32_vec->proc~json_file_add_real32_vec proc~wrap_json_file_add_real_vec json_file%wrap_json_file_add_real_vec proc~wrap_json_file_add_real_vec->interface~to_unicode proc~json_file_add_real_vec json_file%json_file_add_real_vec proc~wrap_json_file_add_real_vec->proc~json_file_add_real_vec proc~wrap_json_file_add_string json_file%wrap_json_file_add_string proc~wrap_json_file_add_string->interface~to_unicode proc~wrap_json_file_add_string->proc~json_file_add_string proc~wrap_json_file_add_string_vec json_file%wrap_json_file_add_string_vec proc~wrap_json_file_add_string_vec->interface~to_unicode proc~wrap_json_file_add_string_vec->proc~json_file_add_string_vec proc~wrap_json_file_get_alloc_string_vec json_file%wrap_json_file_get_alloc_string_vec proc~wrap_json_file_get_alloc_string_vec->interface~to_unicode none~get json_file%get proc~wrap_json_file_get_alloc_string_vec->none~get proc~wrap_json_file_get_integer json_file%wrap_json_file_get_integer proc~wrap_json_file_get_integer->interface~to_unicode proc~wrap_json_file_get_integer->none~get proc~wrap_json_file_get_integer_vec json_file%wrap_json_file_get_integer_vec proc~wrap_json_file_get_integer_vec->interface~to_unicode proc~wrap_json_file_get_integer_vec->none~get proc~wrap_json_file_get_logical json_file%wrap_json_file_get_logical proc~wrap_json_file_get_logical->interface~to_unicode proc~wrap_json_file_get_logical->none~get proc~wrap_json_file_get_logical_vec json_file%wrap_json_file_get_logical_vec proc~wrap_json_file_get_logical_vec->interface~to_unicode proc~wrap_json_file_get_logical_vec->none~get proc~wrap_json_file_get_object json_file%wrap_json_file_get_object proc~wrap_json_file_get_object->interface~to_unicode proc~wrap_json_file_get_object->none~get proc~wrap_json_file_get_real json_file%wrap_json_file_get_real proc~wrap_json_file_get_real->interface~to_unicode proc~wrap_json_file_get_real->none~get proc~wrap_json_file_get_real32 json_file%wrap_json_file_get_real32 proc~wrap_json_file_get_real32->interface~to_unicode proc~wrap_json_file_get_real32->none~get proc~wrap_json_file_get_real32_vec json_file%wrap_json_file_get_real32_vec proc~wrap_json_file_get_real32_vec->interface~to_unicode proc~wrap_json_file_get_real32_vec->none~get proc~wrap_json_file_get_real_vec json_file%wrap_json_file_get_real_vec proc~wrap_json_file_get_real_vec->interface~to_unicode proc~wrap_json_file_get_real_vec->none~get proc~wrap_json_file_get_string json_file%wrap_json_file_get_string proc~wrap_json_file_get_string->interface~to_unicode proc~wrap_json_file_get_string->none~get proc~wrap_json_file_get_string_vec json_file%wrap_json_file_get_string_vec proc~wrap_json_file_get_string_vec->interface~to_unicode proc~wrap_json_file_get_string_vec->none~get proc~wrap_json_file_load_from_string json_file%wrap_json_file_load_from_string proc~wrap_json_file_load_from_string->interface~to_unicode none~deserialize json_file%deserialize proc~wrap_json_file_load_from_string->none~deserialize proc~wrap_json_file_remove json_file%wrap_json_file_remove proc~wrap_json_file_remove->interface~to_unicode none~remove json_file%remove proc~wrap_json_file_remove->none~remove proc~wrap_json_file_rename json_file%wrap_json_file_rename proc~wrap_json_file_rename->interface~to_unicode proc~wrap_json_file_update_integer json_file%wrap_json_file_update_integer proc~wrap_json_file_update_integer->interface~to_unicode proc~wrap_json_file_update_integer->none~update~2 proc~wrap_json_file_update_logical json_file%wrap_json_file_update_logical proc~wrap_json_file_update_logical->interface~to_unicode proc~wrap_json_file_update_logical->none~update~2 proc~wrap_json_file_update_real json_file%wrap_json_file_update_real proc~wrap_json_file_update_real->interface~to_unicode proc~wrap_json_file_update_real->none~update~2 proc~wrap_json_file_update_real32 json_file%wrap_json_file_update_real32 proc~wrap_json_file_update_real32->interface~to_unicode proc~wrap_json_file_update_real32->none~update~2 proc~wrap_json_file_update_string json_file%wrap_json_file_update_string proc~wrap_json_file_update_string->interface~to_unicode proc~wrap_json_file_update_string->none~update~2 proc~wrap_json_file_valid_path json_file%wrap_json_file_valid_path proc~wrap_json_file_valid_path->interface~to_unicode none~valid_path json_file%valid_path proc~wrap_json_file_valid_path->none~valid_path proc~wrap_json_file_valid_path_op json_file%wrap_json_file_valid_path_op proc~wrap_json_file_valid_path_op->interface~to_unicode proc~wrap_json_file_variable_info json_file%wrap_json_file_variable_info proc~wrap_json_file_variable_info->interface~to_unicode none~info json_file%info proc~wrap_json_file_variable_info->none~info proc~wrap_json_file_variable_matrix_info json_file%wrap_json_file_variable_matrix_info proc~wrap_json_file_variable_matrix_info->interface~to_unicode none~matrix_info json_file%matrix_info proc~wrap_json_file_variable_matrix_info->none~matrix_info proc~wrap_json_get_alloc_string_vec_by_path json_core%wrap_json_get_alloc_string_vec_by_path proc~wrap_json_get_alloc_string_vec_by_path->interface~to_unicode none~get~2 json_core%get proc~wrap_json_get_alloc_string_vec_by_path->none~get~2 proc~wrap_json_get_array_by_path json_core%wrap_json_get_array_by_path proc~wrap_json_get_array_by_path->interface~to_unicode proc~wrap_json_get_array_by_path->none~get~2 proc~wrap_json_get_by_path json_core%wrap_json_get_by_path proc~wrap_json_get_by_path->interface~to_unicode proc~wrap_json_get_by_path->none~get~2 proc~wrap_json_get_integer_by_path json_core%wrap_json_get_integer_by_path proc~wrap_json_get_integer_by_path->interface~to_unicode proc~wrap_json_get_integer_by_path->none~get~2 proc~wrap_json_get_integer_vec_by_path json_core%wrap_json_get_integer_vec_by_path proc~wrap_json_get_integer_vec_by_path->interface~to_unicode proc~wrap_json_get_integer_vec_by_path->none~get~2 proc~wrap_json_get_logical_by_path json_core%wrap_json_get_logical_by_path proc~wrap_json_get_logical_by_path->interface~to_unicode proc~wrap_json_get_logical_by_path->none~get~2 proc~wrap_json_get_logical_vec_by_path json_core%wrap_json_get_logical_vec_by_path proc~wrap_json_get_logical_vec_by_path->interface~to_unicode proc~wrap_json_get_logical_vec_by_path->none~get~2 proc~wrap_json_get_path json_core%wrap_json_get_path proc~wrap_json_get_path->interface~to_unicode none~get_path json_core%get_path proc~wrap_json_get_path->none~get_path proc~wrap_json_get_real32_by_path json_core%wrap_json_get_real32_by_path proc~wrap_json_get_real32_by_path->interface~to_unicode proc~wrap_json_get_real32_by_path->none~get~2 proc~wrap_json_get_real32_vec_by_path json_core%wrap_json_get_real32_vec_by_path proc~wrap_json_get_real32_vec_by_path->interface~to_unicode proc~wrap_json_get_real32_vec_by_path->none~get~2 proc~wrap_json_get_real_by_path json_core%wrap_json_get_real_by_path proc~wrap_json_get_real_by_path->interface~to_unicode proc~wrap_json_get_real_by_path->none~get~2 proc~wrap_json_get_real_vec_by_path json_core%wrap_json_get_real_vec_by_path proc~wrap_json_get_real_vec_by_path->interface~to_unicode proc~wrap_json_get_real_vec_by_path->none~get~2 proc~wrap_json_get_string_by_path json_core%wrap_json_get_string_by_path proc~wrap_json_get_string_by_path->interface~to_unicode proc~wrap_json_get_string_by_path->none~get~2 proc~wrap_json_get_string_vec_by_path json_core%wrap_json_get_string_vec_by_path proc~wrap_json_get_string_vec_by_path->interface~to_unicode proc~wrap_json_get_string_vec_by_path->none~get~2 proc~wrap_json_info_by_path json_core%wrap_json_info_by_path proc~wrap_json_info_by_path->interface~to_unicode none~info~2 json_core%info proc~wrap_json_info_by_path->none~info~2 proc~wrap_json_matrix_info_by_path json_core%wrap_json_matrix_info_by_path proc~wrap_json_matrix_info_by_path->interface~to_unicode none~matrix_info~2 json_core%matrix_info proc~wrap_json_matrix_info_by_path->none~matrix_info~2 proc~wrap_json_parse_string json_core%wrap_json_parse_string proc~wrap_json_parse_string->interface~to_unicode none~deserialize~2 json_core%deserialize proc~wrap_json_parse_string->none~deserialize~2 proc~wrap_json_rename_by_path json_core%wrap_json_rename_by_path proc~wrap_json_rename_by_path->interface~to_unicode proc~wrap_json_throw_exception json_core%wrap_json_throw_exception proc~wrap_json_throw_exception->interface~to_unicode none~throw_exception json_core%throw_exception proc~wrap_json_throw_exception->none~throw_exception proc~wrap_json_update_integer json_core%wrap_json_update_integer proc~wrap_json_update_integer->interface~to_unicode proc~wrap_json_update_integer->none~update~4 proc~wrap_json_update_logical json_core%wrap_json_update_logical proc~wrap_json_update_logical->interface~to_unicode proc~wrap_json_update_logical->none~update~4 proc~wrap_json_update_real json_core%wrap_json_update_real proc~wrap_json_update_real->interface~to_unicode proc~wrap_json_update_real->none~update~4 proc~wrap_json_update_real32 json_core%wrap_json_update_real32 proc~wrap_json_update_real32->interface~to_unicode proc~wrap_json_update_real32->none~update~4 proc~wrap_json_update_string json_core%wrap_json_update_string proc~wrap_json_update_string->interface~to_unicode proc~wrap_json_update_string->none~update~4 proc~wrap_json_valid_path json_core%wrap_json_valid_path proc~wrap_json_valid_path->interface~to_unicode none~valid_path~2 json_core%valid_path proc~wrap_json_valid_path->none~valid_path~2 proc~wrap_json_value_add_integer json_core%wrap_json_value_add_integer proc~wrap_json_value_add_integer->interface~to_unicode proc~wrap_json_value_add_integer->none~add~4 proc~wrap_json_value_add_integer_vec json_core%wrap_json_value_add_integer_vec proc~wrap_json_value_add_integer_vec->interface~to_unicode proc~wrap_json_value_add_integer_vec->none~add~4 proc~wrap_json_value_add_logical json_core%wrap_json_value_add_logical proc~wrap_json_value_add_logical->interface~to_unicode proc~wrap_json_value_add_logical->none~add~4 proc~wrap_json_value_add_logical_vec json_core%wrap_json_value_add_logical_vec proc~wrap_json_value_add_logical_vec->interface~to_unicode proc~wrap_json_value_add_logical_vec->none~add~4 proc~wrap_json_value_add_null json_core%wrap_json_value_add_null proc~wrap_json_value_add_null->interface~to_unicode proc~wrap_json_value_add_null->none~add~4 proc~wrap_json_value_add_real json_core%wrap_json_value_add_real proc~wrap_json_value_add_real->interface~to_unicode proc~wrap_json_value_add_real->none~add~4 proc~wrap_json_value_add_real32 json_core%wrap_json_value_add_real32 proc~wrap_json_value_add_real32->interface~to_unicode proc~wrap_json_value_add_real32->none~add~4 proc~wrap_json_value_add_real32_vec json_core%wrap_json_value_add_real32_vec proc~wrap_json_value_add_real32_vec->interface~to_unicode proc~wrap_json_value_add_real32_vec->none~add~4 proc~wrap_json_value_add_real_vec json_core%wrap_json_value_add_real_vec proc~wrap_json_value_add_real_vec->interface~to_unicode proc~wrap_json_value_add_real_vec->none~add~4 proc~wrap_json_value_add_string json_core%wrap_json_value_add_string proc~wrap_json_value_add_string->interface~to_unicode proc~wrap_json_value_add_string->none~add~4 proc~wrap_json_value_add_string_vec json_core%wrap_json_value_add_string_vec proc~wrap_json_value_add_string_vec->interface~to_unicode proc~wrap_json_value_add_string_vec->none~add~4 proc~wrap_json_value_create_array json_core%wrap_json_value_create_array proc~wrap_json_value_create_array->interface~to_unicode none~create_array json_core%create_array proc~wrap_json_value_create_array->none~create_array proc~wrap_json_value_create_integer json_core%wrap_json_value_create_integer proc~wrap_json_value_create_integer->interface~to_unicode none~create_integer json_core%create_integer proc~wrap_json_value_create_integer->none~create_integer proc~wrap_json_value_create_logical json_core%wrap_json_value_create_logical proc~wrap_json_value_create_logical->interface~to_unicode none~create_logical json_core%create_logical proc~wrap_json_value_create_logical->none~create_logical proc~wrap_json_value_create_null json_core%wrap_json_value_create_null proc~wrap_json_value_create_null->interface~to_unicode none~create_null json_core%create_null proc~wrap_json_value_create_null->none~create_null proc~wrap_json_value_create_object json_core%wrap_json_value_create_object proc~wrap_json_value_create_object->interface~to_unicode proc~wrap_json_value_create_object->none~create_object proc~wrap_json_value_create_real json_core%wrap_json_value_create_real proc~wrap_json_value_create_real->interface~to_unicode none~create_real~2 json_core%create_real proc~wrap_json_value_create_real->none~create_real~2 proc~wrap_json_value_create_real32 json_core%wrap_json_value_create_real32 proc~wrap_json_value_create_real32->interface~to_unicode proc~wrap_json_value_create_real32->none~create_real~2 proc~wrap_json_value_create_string json_core%wrap_json_value_create_string proc~wrap_json_value_create_string->interface~to_unicode none~create_string json_core%create_string proc~wrap_json_value_create_string->none~create_string proc~wrap_json_value_get_child_by_name json_core%wrap_json_value_get_child_by_name proc~wrap_json_value_get_child_by_name->interface~to_unicode proc~wrap_json_value_get_child_by_name->none~get~2 proc~wrap_json_value_remove_if_present json_core%wrap_json_value_remove_if_present proc~wrap_json_value_remove_if_present->interface~to_unicode none~remove_if_present json_core%remove_if_present proc~wrap_json_value_remove_if_present->none~remove_if_present proc~wrap_json_value_rename json_core%wrap_json_value_rename proc~wrap_json_value_rename->interface~to_unicode interface~json_file json_file interface~json_file->proc~wrap_initialize_json_file_from_string interface~json_file->proc~wrap_initialize_json_file_from_string_v2 interface~json_file->proc~initialize_json_file_from_string interface~json_file->proc~initialize_json_file_from_string_v2 proc~initialize_json_file initialize_json_file interface~json_file->proc~initialize_json_file interface~operator(==) operator(==) interface~operator(==)->proc~default_comp_ucs4 interface~operator(==)->proc~ucs4_comp_default interface~operator(SLASH=) operator(/=) interface~operator(SLASH=)->proc~default_neq_ucs4 interface~operator(SLASH=)->proc~ucs4_neq_default interface~operator(SLASHSLASH) operator(//) interface~operator(SLASHSLASH)->proc~default_join_ucs4 interface~operator(SLASHSLASH)->proc~ucs4_join_default none~add_by_path~2->proc~json_add_string_by_path_path_ascii none~add_by_path~2->proc~json_add_string_by_path_value_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_path_ascii none~add_by_path~2->proc~json_add_string_vec_by_path_value_ascii none~add~4->proc~json_value_add_string_name_ascii none~add~4->proc~json_value_add_string_val_ascii none~add~4->proc~json_value_add_string_vec_name_ascii none~add~4->proc~json_value_add_string_vec_val_ascii none~create->proc~wrap_json_create_by_path proc~json_create_by_path json_core%json_create_by_path none~create->proc~json_create_by_path none~create_array->proc~wrap_json_value_create_array none~create_integer->proc~wrap_json_value_create_integer none~create_logical->proc~wrap_json_value_create_logical none~create_null->proc~wrap_json_value_create_null none~create_object->proc~wrap_json_value_create_object none~create_real~2->proc~wrap_json_value_create_real32 proc~json_value_create_real32 json_core%json_value_create_real32 none~create_real~2->proc~json_value_create_real32 none~create_string->proc~wrap_json_value_create_string none~deserialize->proc~wrap_json_file_load_from_string proc~json_file_load_from_string json_file%json_file_load_from_string none~deserialize->proc~json_file_load_from_string none~deserialize~2->proc~wrap_json_parse_string proc~json_parse_string json_core%json_parse_string none~deserialize~2->proc~json_parse_string none~get->proc~wrap_json_file_get_alloc_string_vec none~get->proc~wrap_json_file_get_integer none~get->proc~wrap_json_file_get_integer_vec none~get->proc~wrap_json_file_get_logical none~get->proc~wrap_json_file_get_logical_vec none~get->proc~wrap_json_file_get_object none~get->proc~wrap_json_file_get_real none~get->proc~wrap_json_file_get_real32 none~get->proc~wrap_json_file_get_real32_vec none~get->proc~wrap_json_file_get_real_vec none~get->proc~wrap_json_file_get_string none~get->proc~wrap_json_file_get_string_vec proc~json_file_get_alloc_string_vec json_file%json_file_get_alloc_string_vec none~get->proc~json_file_get_alloc_string_vec proc~json_file_get_integer json_file%json_file_get_integer none~get->proc~json_file_get_integer proc~json_file_get_integer_vec json_file%json_file_get_integer_vec none~get->proc~json_file_get_integer_vec proc~json_file_get_logical json_file%json_file_get_logical none~get->proc~json_file_get_logical proc~json_file_get_logical_vec json_file%json_file_get_logical_vec none~get->proc~json_file_get_logical_vec proc~json_file_get_object json_file%json_file_get_object none~get->proc~json_file_get_object proc~json_file_get_real json_file%json_file_get_real none~get->proc~json_file_get_real proc~json_file_get_real32 json_file%json_file_get_real32 none~get->proc~json_file_get_real32 proc~json_file_get_real32_vec json_file%json_file_get_real32_vec none~get->proc~json_file_get_real32_vec proc~json_file_get_real_vec json_file%json_file_get_real_vec none~get->proc~json_file_get_real_vec proc~json_file_get_string json_file%json_file_get_string none~get->proc~json_file_get_string proc~json_file_get_string_vec json_file%json_file_get_string_vec none~get->proc~json_file_get_string_vec none~get_child json_core%get_child none~get_child->proc~wrap_json_value_get_child_by_name proc~json_value_get_child json_core%json_value_get_child none~get_child->proc~json_value_get_child proc~json_value_get_child_by_index json_core%json_value_get_child_by_index none~get_child->proc~json_value_get_child_by_index proc~json_value_get_child_by_name json_core%json_value_get_child_by_name none~get_child->proc~json_value_get_child_by_name none~get_path->proc~wrap_json_get_path proc~json_get_path json_core%json_get_path none~get_path->proc~json_get_path none~get~2->proc~wrap_json_get_alloc_string_vec_by_path none~get~2->proc~wrap_json_get_array_by_path none~get~2->proc~wrap_json_get_by_path none~get~2->proc~wrap_json_get_integer_by_path none~get~2->proc~wrap_json_get_integer_vec_by_path none~get~2->proc~wrap_json_get_logical_by_path none~get~2->proc~wrap_json_get_logical_vec_by_path none~get~2->proc~wrap_json_get_real32_by_path none~get~2->proc~wrap_json_get_real32_vec_by_path none~get~2->proc~wrap_json_get_real_by_path none~get~2->proc~wrap_json_get_real_vec_by_path none~get~2->proc~wrap_json_get_string_by_path none~get~2->proc~wrap_json_get_string_vec_by_path proc~json_get_alloc_string_vec json_core%json_get_alloc_string_vec none~get~2->proc~json_get_alloc_string_vec proc~json_get_alloc_string_vec_by_path json_core%json_get_alloc_string_vec_by_path none~get~2->proc~json_get_alloc_string_vec_by_path proc~json_get_array json_core%json_get_array none~get~2->proc~json_get_array proc~json_get_array_by_path json_core%json_get_array_by_path none~get~2->proc~json_get_array_by_path proc~json_get_by_path json_core%json_get_by_path none~get~2->proc~json_get_by_path proc~json_get_integer json_core%json_get_integer none~get~2->proc~json_get_integer proc~json_get_integer_by_path json_core%json_get_integer_by_path none~get~2->proc~json_get_integer_by_path proc~json_get_integer_vec json_core%json_get_integer_vec none~get~2->proc~json_get_integer_vec proc~json_get_integer_vec_by_path json_core%json_get_integer_vec_by_path none~get~2->proc~json_get_integer_vec_by_path proc~json_get_logical json_core%json_get_logical none~get~2->proc~json_get_logical proc~json_get_logical_by_path json_core%json_get_logical_by_path none~get~2->proc~json_get_logical_by_path proc~json_get_logical_vec json_core%json_get_logical_vec none~get~2->proc~json_get_logical_vec proc~json_get_logical_vec_by_path json_core%json_get_logical_vec_by_path none~get~2->proc~json_get_logical_vec_by_path proc~json_get_real json_core%json_get_real none~get~2->proc~json_get_real proc~json_get_real32 json_core%json_get_real32 none~get~2->proc~json_get_real32 proc~json_get_real32_by_path json_core%json_get_real32_by_path none~get~2->proc~json_get_real32_by_path proc~json_get_real32_vec json_core%json_get_real32_vec none~get~2->proc~json_get_real32_vec proc~json_get_real32_vec_by_path json_core%json_get_real32_vec_by_path none~get~2->proc~json_get_real32_vec_by_path proc~json_get_real_by_path json_core%json_get_real_by_path none~get~2->proc~json_get_real_by_path proc~json_get_real_vec json_core%json_get_real_vec none~get~2->proc~json_get_real_vec proc~json_get_real_vec_by_path json_core%json_get_real_vec_by_path none~get~2->proc~json_get_real_vec_by_path proc~json_get_string json_core%json_get_string none~get~2->proc~json_get_string proc~json_get_string_by_path json_core%json_get_string_by_path none~get~2->proc~json_get_string_by_path proc~json_get_string_vec json_core%json_get_string_vec none~get~2->proc~json_get_string_vec proc~json_get_string_vec_by_path json_core%json_get_string_vec_by_path none~get~2->proc~json_get_string_vec_by_path none~info->proc~wrap_json_file_variable_info proc~json_file_variable_info json_file%json_file_variable_info none~info->proc~json_file_variable_info none~info~2->proc~wrap_json_info_by_path proc~json_info json_core%json_info none~info~2->proc~json_info proc~json_info_by_path json_core%json_info_by_path none~info~2->proc~json_info_by_path none~matrix_info->proc~wrap_json_file_variable_matrix_info proc~json_file_variable_matrix_info json_file%json_file_variable_matrix_info none~matrix_info->proc~json_file_variable_matrix_info none~matrix_info~2->proc~wrap_json_matrix_info_by_path proc~json_matrix_info json_core%json_matrix_info none~matrix_info~2->proc~json_matrix_info proc~json_matrix_info_by_path json_core%json_matrix_info_by_path none~matrix_info~2->proc~json_matrix_info_by_path none~remove->proc~wrap_json_file_remove proc~json_file_remove json_file%json_file_remove none~remove->proc~json_file_remove none~remove_if_present->proc~wrap_json_value_remove_if_present proc~json_value_remove_if_present json_core%json_value_remove_if_present none~remove_if_present->proc~json_value_remove_if_present none~throw_exception->proc~wrap_json_throw_exception none~update~2->proc~json_file_update_string_name_ascii none~update~2->proc~json_file_update_string_val_ascii none~update~4->proc~json_update_string_name_ascii none~update~4->proc~json_update_string_val_ascii none~valid_path->proc~wrap_json_file_valid_path proc~json_file_valid_path json_file%json_file_valid_path none~valid_path->proc~json_file_valid_path none~valid_path~2->proc~wrap_json_valid_path proc~json_valid_path json_core%json_valid_path none~valid_path~2->proc~json_valid_path proc~assign_string_to_json_file->none~deserialize proc~convert json_core%convert proc~convert->none~create_array proc~convert->none~create_null proc~convert->none~create_object proc~convert->none~info~2 proc~convert->none~throw_exception proc~json_value_replace json_core%json_value_replace proc~convert->proc~json_value_replace proc~initialize_json_file_from_string->none~deserialize none~initialize json_file%initialize proc~initialize_json_file_from_string->none~initialize proc~initialize_json_file_from_string_v2->none~deserialize proc~json_add_integer_by_path->none~create proc~json_add_integer_by_path->none~create_integer proc~json_add_integer_by_path->none~info~2 proc~json_add_integer_by_path->none~throw_exception proc~json_add_integer_by_path->proc~json_value_replace proc~json_add_integer_vec_by_path->none~add~4 proc~json_add_integer_vec_by_path->none~create proc~json_add_integer_vec_by_path->none~create_array proc~json_add_integer_vec_by_path->none~info~2 proc~json_add_integer_vec_by_path->proc~json_value_replace proc~json_add_logical_by_path->none~create proc~json_add_logical_by_path->none~create_logical proc~json_add_logical_by_path->none~info~2 proc~json_add_logical_by_path->none~throw_exception proc~json_add_logical_by_path->proc~json_value_replace proc~json_add_logical_vec_by_path->none~add~4 proc~json_add_logical_vec_by_path->none~create proc~json_add_logical_vec_by_path->none~create_array proc~json_add_logical_vec_by_path->none~info~2 proc~json_add_logical_vec_by_path->proc~json_value_replace proc~json_add_member_by_path->none~create proc~json_add_member_by_path->none~info~2 proc~json_add_member_by_path->none~throw_exception proc~json_add_member_by_path->proc~json_value_replace proc~json_add_real32_by_path json_core%json_add_real32_by_path proc~json_add_real32_by_path->none~add_by_path~2 proc~json_add_real32_vec_by_path json_core%json_add_real32_vec_by_path proc~json_add_real32_vec_by_path->none~add_by_path~2 proc~json_add_real_by_path->none~create proc~json_add_real_by_path->none~create_real~2 proc~json_add_real_by_path->none~info~2 proc~json_add_real_by_path->none~throw_exception proc~json_add_real_by_path->proc~json_value_replace proc~json_add_real_vec_by_path->none~add~4 proc~json_add_real_vec_by_path->none~create proc~json_add_real_vec_by_path->none~create_array proc~json_add_real_vec_by_path->none~info~2 proc~json_add_real_vec_by_path->proc~json_value_replace proc~json_add_string_by_path->none~create proc~json_add_string_by_path->none~create_string proc~json_add_string_by_path->none~info~2 proc~json_add_string_by_path->none~throw_exception proc~json_add_string_by_path->proc~json_value_replace proc~json_add_string_vec_by_path->none~add~4 proc~json_add_string_vec_by_path->none~create proc~json_add_string_vec_by_path->none~create_array proc~json_add_string_vec_by_path->none~info~2 proc~json_add_string_vec_by_path->none~throw_exception proc~json_add_string_vec_by_path->proc~json_value_replace proc~json_check_children_for_duplicate_keys json_core%json_check_children_for_duplicate_keys proc~json_check_children_for_duplicate_keys->none~get_child proc~json_check_children_for_duplicate_keys->none~get_path proc~json_check_children_for_duplicate_keys->none~throw_exception proc~json_count json_core%json_count proc~json_count->none~throw_exception proc~json_create_by_path->none~throw_exception proc~json_get_by_path_default json_core%json_get_by_path_default proc~json_create_by_path->proc~json_get_by_path_default proc~json_get_by_path_jsonpath_bracket json_core%json_get_by_path_jsonpath_bracket proc~json_create_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_file_add_integer->none~add_by_path~2 proc~json_file_add_integer->none~create_object proc~json_file_add_integer_vec->none~add_by_path~2 proc~json_file_add_integer_vec->none~create_object proc~json_file_add_logical->none~add_by_path~2 proc~json_file_add_logical->none~create_object proc~json_file_add_logical_vec->none~add_by_path~2 proc~json_file_add_logical_vec->none~create_object proc~json_file_add_object->none~add_by_path~2 proc~json_file_add_object->none~create_object proc~json_file_add_real->none~add_by_path~2 proc~json_file_add_real->none~create_object proc~json_file_add_real32->none~add_by_path~2 proc~json_file_add_real32_vec->none~add_by_path~2 proc~json_file_add_real_vec->none~add_by_path~2 proc~json_file_add_real_vec->none~create_object proc~json_file_add_string->none~add_by_path~2 proc~json_file_add_string->none~create_object proc~json_file_add_string_vec->none~add_by_path~2 proc~json_file_add_string_vec->none~create_object proc~json_file_get_alloc_string_vec->none~get~2 proc~json_file_get_integer->none~get~2 proc~json_file_get_integer_vec->none~get~2 proc~json_file_get_logical->none~get~2 proc~json_file_get_logical_vec->none~get~2 proc~json_file_get_object->none~get~2 proc~json_file_get_real->none~get~2 proc~json_file_get_real32->none~get~2 proc~json_file_get_real32_vec->none~get~2 proc~json_file_get_real_vec->none~get~2 proc~json_file_get_string->none~get~2 proc~json_file_get_string_vec->none~get~2 proc~json_file_load_from_string->none~deserialize~2 proc~json_file_move_pointer json_file%json_file_move_pointer proc~json_file_move_pointer->none~throw_exception proc~json_file_move_pointer->none~initialize proc~json_file_print_to_unit json_file%json_file_print_to_unit proc~json_file_print_to_unit->none~throw_exception proc~json_file_remove->none~remove_if_present proc~json_file_update_integer json_file%json_file_update_integer proc~json_file_update_integer->none~update~4 proc~json_file_update_logical json_file%json_file_update_logical proc~json_file_update_logical->none~update~4 proc~json_file_update_real json_file%json_file_update_real proc~json_file_update_real->none~update~4 proc~json_file_update_real32 json_file%json_file_update_real32 proc~json_file_update_real32->none~update~2 proc~json_file_update_string json_file%json_file_update_string proc~json_file_update_string->none~update~4 proc~json_file_valid_path->none~valid_path~2 proc~json_file_valid_path_op json_file%json_file_valid_path_op proc~json_file_valid_path_op->none~valid_path~2 proc~json_file_variable_info->none~info~2 proc~json_file_variable_matrix_info->none~matrix_info~2 proc~json_get_alloc_string_vec->none~get~2 none~string_info json_core%string_info proc~json_get_alloc_string_vec->none~string_info proc~json_get_alloc_string_vec_by_path->none~get~2 proc~json_get_alloc_string_vec_by_path->none~throw_exception proc~json_get_array->none~throw_exception proc~json_get_array_by_path->none~get~2 proc~json_get_array_by_path->none~throw_exception proc~json_get_by_path->none~throw_exception proc~json_get_by_path->proc~json_get_by_path_default proc~json_get_by_path->proc~json_get_by_path_jsonpath_bracket proc~json_get_by_path_rfc6901 json_core%json_get_by_path_rfc6901 proc~json_get_by_path->proc~json_get_by_path_rfc6901 proc~json_get_by_path_default->none~add~4 proc~json_get_by_path_default->none~get_child proc~json_get_by_path_default->none~throw_exception proc~json_get_by_path_jsonpath_bracket->none~add~4 proc~json_get_by_path_jsonpath_bracket->none~get_child proc~json_get_by_path_jsonpath_bracket->none~throw_exception proc~json_get_by_path_jsonpath_bracket->proc~convert proc~json_get_by_path_rfc6901->none~get_child proc~json_get_by_path_rfc6901->none~throw_exception proc~json_get_integer->none~throw_exception proc~json_get_integer_by_path->none~get~2 proc~json_get_integer_by_path->none~throw_exception proc~json_get_integer_vec->none~get~2 proc~json_get_integer_vec_by_path->none~get~2 proc~json_get_integer_vec_by_path->none~throw_exception proc~json_get_logical->none~throw_exception proc~json_get_logical_by_path->none~get~2 proc~json_get_logical_by_path->none~throw_exception proc~json_get_logical_vec->none~get~2 proc~json_get_logical_vec_by_path->none~get~2 proc~json_get_logical_vec_by_path->none~throw_exception proc~json_get_next json_core%json_get_next proc~json_get_next->none~throw_exception proc~json_get_parent json_core%json_get_parent proc~json_get_parent->none~throw_exception proc~json_get_path->none~info~2 proc~json_get_path->none~throw_exception proc~json_get_previous json_core%json_get_previous proc~json_get_previous->none~throw_exception proc~json_get_real->none~throw_exception proc~json_get_real32->none~get~2 proc~json_get_real32_by_path->none~get~2 proc~json_get_real32_vec->none~get~2 proc~json_get_real32_vec_by_path->none~get~2 proc~json_get_real_by_path->none~get~2 proc~json_get_real_by_path->none~throw_exception proc~json_get_real_vec->none~get~2 proc~json_get_real_vec_by_path->none~get~2 proc~json_get_real_vec_by_path->none~throw_exception proc~json_get_string->none~throw_exception proc~json_get_string_by_path->none~get~2 proc~json_get_string_by_path->none~throw_exception proc~json_get_string_vec->none~get~2 proc~json_get_string_vec_by_path->none~get~2 proc~json_get_string_vec_by_path->none~throw_exception proc~json_get_tail json_core%json_get_tail proc~json_get_tail->none~throw_exception proc~json_info->none~throw_exception proc~json_info_by_path->none~get~2 proc~json_info_by_path->none~info~2 proc~json_initialize json_core%json_initialize proc~json_initialize->none~throw_exception proc~json_is_vector json_core%json_is_vector proc~json_is_vector->none~info~2 proc~json_is_vector->none~throw_exception proc~json_matrix_info->none~get_child proc~json_matrix_info->none~info~2 proc~json_matrix_info->none~throw_exception proc~json_matrix_info_by_path->none~get~2 proc~json_matrix_info_by_path->none~matrix_info~2 proc~json_parse_end json_core%json_parse_end proc~json_parse_end->none~throw_exception proc~json_parse_file json_core%json_parse_file proc~json_parse_file->none~throw_exception proc~json_parse_file->proc~json_initialize proc~json_parse_file->proc~json_parse_end proc~parse_value json_core%parse_value proc~json_parse_file->proc~parse_value proc~json_check_all_for_duplicate_keys json_core%json_check_all_for_duplicate_keys proc~json_parse_file->proc~json_check_all_for_duplicate_keys proc~json_parse_string->none~throw_exception proc~json_parse_string->proc~json_initialize proc~json_parse_string->proc~json_parse_end proc~json_parse_string->proc~parse_value proc~json_parse_string->proc~json_check_all_for_duplicate_keys proc~json_print_to_filename json_core%json_print_to_filename proc~json_print_to_filename->none~throw_exception proc~json_print_to_unit json_core%json_print_to_unit proc~json_print_to_unit->none~throw_exception proc~json_value_print json_core%json_value_print proc~json_print_to_unit->proc~json_value_print proc~json_rename_by_path json_core%json_rename_by_path proc~json_rename_by_path->none~get~2 proc~json_rename_by_path->none~throw_exception proc~json_string_info json_core%json_string_info proc~json_string_info->none~get~2 proc~json_string_info->none~info~2 proc~json_string_info->none~throw_exception proc~json_traverse json_core%json_traverse proc~json_traverse->none~throw_exception proc~json_update_integer json_core%json_update_integer proc~json_update_integer->none~add_by_path~2 proc~json_update_integer->none~get~2 proc~json_update_integer->none~info~2 proc~json_update_integer->none~throw_exception proc~json_update_logical json_core%json_update_logical proc~json_update_logical->none~add_by_path~2 proc~json_update_logical->none~get~2 proc~json_update_logical->none~info~2 proc~json_update_logical->none~throw_exception proc~json_update_real json_core%json_update_real proc~json_update_real->none~add_by_path~2 proc~json_update_real->none~get~2 proc~json_update_real->none~info~2 proc~json_update_real->none~throw_exception proc~json_update_real32 json_core%json_update_real32 proc~json_update_real32->none~update~4 proc~json_update_string json_core%json_update_string proc~json_update_string->none~add_by_path~2 proc~json_update_string->none~get~2 proc~json_update_string->none~info~2 proc~json_update_string->none~throw_exception proc~json_valid_path->none~get~2 proc~json_value_add_integer json_core%json_value_add_integer proc~json_value_add_integer->none~add~4 proc~json_value_add_integer->none~create_integer proc~json_value_add_integer_vec json_core%json_value_add_integer_vec proc~json_value_add_integer_vec->none~add~4 proc~json_value_add_integer_vec->none~create_array proc~json_value_add_logical json_core%json_value_add_logical proc~json_value_add_logical->none~add~4 proc~json_value_add_logical->none~create_logical proc~json_value_add_logical_vec json_core%json_value_add_logical_vec proc~json_value_add_logical_vec->none~add~4 proc~json_value_add_logical_vec->none~create_array proc~json_value_add_member json_core%json_value_add_member proc~json_value_add_member->none~info~2 proc~json_value_add_member->none~throw_exception proc~json_value_add_null json_core%json_value_add_null proc~json_value_add_null->none~add~4 proc~json_value_add_null->none~create_null proc~json_value_add_real json_core%json_value_add_real proc~json_value_add_real->none~add~4 proc~json_value_add_real->none~create_real~2 proc~json_value_add_real32 json_core%json_value_add_real32 proc~json_value_add_real32->none~add~4 proc~json_value_add_real32_vec json_core%json_value_add_real32_vec proc~json_value_add_real32_vec->none~add~4 proc~json_value_add_real_vec json_core%json_value_add_real_vec proc~json_value_add_real_vec->none~add~4 proc~json_value_add_real_vec->none~create_array proc~json_value_add_string json_core%json_value_add_string proc~json_value_add_string->none~add~4 proc~json_value_add_string->none~create_string proc~json_value_add_string_vec json_core%json_value_add_string_vec proc~json_value_add_string_vec->none~add~4 proc~json_value_add_string_vec->none~create_array proc~json_value_create_real32->none~create_real~2 proc~json_value_get_child->none~throw_exception proc~json_value_get_child_by_index->none~throw_exception proc~json_value_get_child_by_name->none~throw_exception proc~json_value_insert_after_child_by_index json_core%json_value_insert_after_child_by_index proc~json_value_insert_after_child_by_index->none~get_child none~insert_after json_core%insert_after proc~json_value_insert_after_child_by_index->none~insert_after proc~json_value_print->none~throw_exception proc~json_value_print->proc~json_is_vector proc~json_value_print->proc~json_value_print proc~json_value_remove_if_present->none~get~2 proc~json_value_reverse json_core%json_value_reverse proc~json_value_reverse->none~info~2 proc~json_value_swap json_core%json_value_swap proc~json_value_swap->none~throw_exception proc~json_value_is_child_of json_core%json_value_is_child_of proc~json_value_swap->proc~json_value_is_child_of proc~json_value_validate json_core%json_value_validate proc~json_value_validate->none~throw_exception proc~json_value_validate->proc~json_check_all_for_duplicate_keys proc~parse_array json_core%parse_array proc~parse_array->none~add~4 proc~parse_array->none~throw_exception proc~parse_array->proc~parse_value proc~parse_for_chars json_core%parse_for_chars proc~parse_for_chars->none~throw_exception proc~parse_object json_core%parse_object proc~parse_object->none~add~4 proc~parse_object->none~throw_exception proc~parse_object->proc~parse_object proc~parse_string json_core%parse_string proc~parse_object->proc~parse_string proc~parse_object->proc~parse_value proc~parse_string->none~throw_exception proc~parse_value->none~throw_exception proc~parse_value->proc~parse_array proc~parse_value->proc~parse_for_chars proc~parse_value->proc~parse_object proc~parse_value->proc~parse_string proc~push_char json_core%push_char proc~parse_value->proc~push_char proc~parse_number json_core%parse_number proc~parse_value->proc~parse_number proc~push_char->none~throw_exception proc~string_to_dble json_core%string_to_dble proc~string_to_dble->none~throw_exception proc~string_to_int json_core%string_to_int proc~string_to_int->none~throw_exception none~insert_after->proc~json_value_insert_after_child_by_index none~load~2 json_core%load none~load~2->proc~json_parse_file none~string_info->proc~json_string_info proc~initialize_json_core initialize_json_core proc~initialize_json_core->proc~json_initialize proc~initialize_json_core_in_file json_file%initialize_json_core_in_file proc~initialize_json_core_in_file->proc~json_initialize proc~json_check_all_for_duplicate_keys->proc~json_traverse proc~json_file_traverse json_file%json_file_traverse proc~json_file_traverse->proc~json_traverse proc~json_value_is_child_of->proc~json_traverse proc~json_value_to_string json_core%json_value_to_string proc~json_value_to_string->proc~json_value_print proc~parse_number->proc~push_char proc~parse_number->proc~string_to_dble proc~parse_number->proc~string_to_int interface~json_core json_core interface~json_core->proc~initialize_json_core none~initialize->proc~initialize_json_core_in_file proc~assign_json_file_to_string json_file%assign_json_file_to_string proc~assign_json_file_to_string->proc~json_value_to_string proc~json_file_load json_file%json_file_load proc~json_file_load->none~load~2 proc~json_file_print_to_string json_file%json_file_print_to_string proc~json_file_print_to_string->proc~json_value_to_string proc~json_value_replace->none~insert_after proc~initialize_json_file->none~initialize Help Graph Key Nodes of different colours represent the following: Graph Key Subroutine Subroutine Function Function Interface Interface Type Bound Procedure Type Bound Procedure Unknown Procedure Type Unknown Procedure Type Program Program This Page's Entity This Page's Entity Solid arrows point from a procedure to one which it calls. Dashed \narrows point from an interface to procedures which implement that interface.\nThis could include the module procedures in a generic interface or the\nimplementation in a submodule of an interface in a parent module. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Module Procedures private pure function to_uni (str) Author Izaak Beekman Convert string to unicode (CDK to CK). Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: str Return Value character(kind=CK, len=len) private pure function to_uni_vec (str) Author Izaak Beekman Convert array of strings to unicode (CDK to CK). Read more… Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in), dimension(:) :: str Return Value character(kind=CK, len=len), dimension(size(str))","tags":"","loc":"interface/to_unicode.html"},{"title":"json_module – JSON-Fortran","text":"A Modern Fortran JSON (JavaScript Object Notation) API . This module provides access to json_value_module and json_file_module . For normal JSON -Fortran use, using this module\n is all that is necessary. Note that this module renames the kind definition variables from json_kinds from [ RK , IK , LK , CK , and CDK ] to [ json_RK , json_IK , json_LK , json_CK , and json_CDK ] so as to avoid namespace pollution with short\n variable names. Since USE_UCS4 is defined, this module also exports the\n operators == , /= , and // from json_string_utilities for CK and CDK operations. License JSON -Fortran is released under a BSD-style license.\n See the LICENSE file for details. History Joseph A. Levin : March 2012 : Original FSON code [retrieved on 12/2/2013]. Jacob Williams : 2/8/2014 : Extensive modifications to the original FSON code.\n The original F95 code was split into four files:\n fson_path_m.f95, fson_string_m.f95, fson_value_m.f95, and fson.f95.\n The new code has been extensively updated, refactored and combined into this\n one module (json_module.f90).\n Various Fortran 2003/2008 features are now used\n (e.g., allocatable strings, newunit, generic, class, and abstract interface). Development continues at: Github See also json-fortran development site json-fortran online documentation JSON website JSON validator Note Originally JSON -Fortran was entirely contained within this module. Uses json_kinds json_string_utilities json_value_module json_parameters json_file_module module~~json_module~~UsesGraph module~json_module json_module module~json_file_module json_file_module module~json_module->module~json_file_module module~json_kinds json_kinds module~json_module->module~json_kinds module~json_parameters json_parameters module~json_module->module~json_parameters module~json_string_utilities json_string_utilities module~json_module->module~json_string_utilities module~json_value_module json_value_module module~json_module->module~json_value_module module~json_file_module->module~json_kinds module~json_file_module->module~json_parameters module~json_file_module->module~json_string_utilities module~json_file_module->module~json_value_module iso_fortran_env iso_fortran_env module~json_file_module->iso_fortran_env module~json_kinds->iso_fortran_env module~json_parameters->module~json_kinds module~json_string_utilities->module~json_kinds module~json_string_utilities->module~json_parameters ieee_arithmetic ieee_arithmetic module~json_string_utilities->ieee_arithmetic module~json_value_module->module~json_kinds module~json_value_module->module~json_parameters module~json_value_module->module~json_string_utilities module~json_value_module->ieee_arithmetic module~json_value_module->iso_fortran_env Help Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\ndescended from. Dashed arrows point from a module or program unit to \nmodules which it uses. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Variables Type Visibility Attributes Name Initial character(kind=json_CK, len=*), private, parameter :: version = '9.0.0' JSON -Fortran version. Note This string should match the one in the .VERSION file (which is used\n for the documentation generation.) Functions public function json_fortran_version () result(ver) Returns the JSON -Fortran version string. Arguments None Return Value character(len=:), allocatable JSON -Fortran version string","tags":"","loc":"module/json_module.html"},{"title":"json_file_module – JSON-Fortran","text":"Higher-level json_file interface for the json_value type. License JSON -Fortran is released under a BSD-style license.\n See the LICENSE file for details. Uses json_kinds json_string_utilities json_value_module json_parameters iso_fortran_env module~~json_file_module~~UsesGraph module~json_file_module json_file_module iso_fortran_env iso_fortran_env module~json_file_module->iso_fortran_env module~json_kinds json_kinds module~json_file_module->module~json_kinds module~json_parameters json_parameters module~json_file_module->module~json_parameters module~json_string_utilities json_string_utilities module~json_file_module->module~json_string_utilities module~json_value_module json_value_module module~json_file_module->module~json_value_module module~json_kinds->iso_fortran_env module~json_parameters->module~json_kinds module~json_string_utilities->module~json_kinds module~json_string_utilities->module~json_parameters ieee_arithmetic ieee_arithmetic module~json_string_utilities->ieee_arithmetic module~json_value_module->iso_fortran_env module~json_value_module->module~json_kinds module~json_value_module->module~json_parameters module~json_value_module->module~json_string_utilities module~json_value_module->ieee_arithmetic Help Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\ndescended from. Dashed arrows point from a module or program unit to \nmodules which it uses. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Used by module~~json_file_module~~UsedByGraph module~json_file_module json_file_module module~json_module json_module module~json_module->module~json_file_module Help Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\ndescended from. Dashed arrows point from a module or program unit to \nmodules which it uses. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Interfaces public interface json_file Structure constructor to initialize a json_file object with an existing json_value object or a JSON string, and either the json_core settings or a json_core instance. Example ... type ( json_file ) :: my_file type ( json_value ), pointer :: json_object type ( json_core ) :: json_core_object ... ! Construct a json_object: !could do this: my_file = json_file ( json_object ) !or: my_file = json_file ( json_object , verbose = . true .) !or: my_file = json_file ( '{\"x\": [1]}' , verbose = . true .) !or: my_file = json_file ( json_object , json_core_object ) !or: my_file = json_file ( '{\"x\": [1]}' , json_core_object ) private function initialize_json_file (p, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma, nullify_pointer) result(file_object) Author Izaak Beekman Date 07/23/2015 Cast a json_value object as a json_file object.\n It also calls the initialize() method. Note initialize_json_core , json_initialize , initialize_json_core_in_file , initialize_json_file , initialize_json_file_v2 , initialize_json_file_from_string ,\n and initialize_json_file_from_string_v2 all have a similar interface. Arguments Type Intent Optional Attributes Name type( json_value ), optional, pointer :: p json_value object to cast\nas a json_file object. This\nwill be nullified. logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) logical(kind=LK), intent(in), optional :: nullify_pointer if True, then p will be nullified\nif present. (default is True). Normally,\nthis should be done, because the json_file will destroy\nthe pointer when the class goes out of scope (causing p to be\na dangling pointer). However, if the intent is to use p in\na json_file and then call nullify and continue\nto use p , then this should be set to False. Return Value type( json_file ) private function initialize_json_file_v2 (json_value_object, json_core_object) result(file_object) Author Jacob Williams Date 4/26/2016 Cast a json_value pointer and a json_core object\nas a json_file object. Arguments Type Intent Optional Attributes Name type( json_value ), intent(in), pointer :: json_value_object type( json_core ), intent(in) :: json_core_object Return Value type( json_file ) private function initialize_json_file_from_string (str, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) result(file_object) Author Jacob Williams Date 01/19/2019 Cast a JSON string as a json_file object.\n It also calls the initialize() method. Example type ( json_file ) :: f f = json_file ( '{\"key \": 1}' , trailing_spaces_significant = . true .) Note initialize_json_core , json_initialize , initialize_json_core_in_file , initialize_json_file , initialize_json_file_v2 , initialize_json_file_from_string ,\n and initialize_json_file_from_string_v2 all have a similar interface. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str string to load JSON data from logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Return Value type( json_file ) private function wrap_initialize_json_file_from_string (str, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) result(file_object) Alternate version of initialize_json_file_from_string , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: str string to load JSON data from logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Return Value type( json_file ) private function initialize_json_file_from_string_v2 (str, json_core_object) result(file_object) Author Jacob Williams Date 1/19/2019 Cast a JSON string and a json_core object\nas a json_file object. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str string to load JSON data from type( json_core ), intent(in) :: json_core_object Return Value type( json_file ) private function wrap_initialize_json_file_from_string_v2 (str, json_core_object) result(file_object) Alternate version of initialize_json_file_from_string_v2 , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: str string to load JSON data from type( json_core ), intent(in) :: json_core_object Return Value type( json_file ) Derived Types type, public :: json_file The json_file is the main public class that is\n used to open a file and get data from it. Read more… Components Type Visibility Attributes Name Initial type( json_core ), private :: core The instance of the json_core factory used for this file. type( json_value ), private, pointer :: p => null() the JSON structure read from the file Constructor Structure constructor to initialize a json_file object with an existing json_value object or a JSON string, and either the json_core settings or a json_core instance. Read more… private\n\n \n function initialize_json_file (p, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma, nullify_pointer) Cast a json_value object as a json_file object.\n It also calls the initialize() method. Read more… private\n\n \n function initialize_json_file_v2 (json_value_object, json_core_object) Cast a json_value pointer and a json_core object\nas a json_file object. private\n\n \n function initialize_json_file_from_string (str, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) Cast a JSON string as a json_file object.\n It also calls the initialize() method. Read more… private\n\n \n function wrap_initialize_json_file_from_string (str, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) Alternate version of initialize_json_file_from_string , where “str” is kind=CDK. private\n\n \n function initialize_json_file_from_string_v2 (str, json_core_object) Cast a JSON string and a json_core object\nas a json_file object. private\n\n \n function wrap_initialize_json_file_from_string_v2 (str, json_core_object) Alternate version of initialize_json_file_from_string_v2 , where “str” is kind=CDK. Finalizations Procedures final :: finalize_json_file Type-Bound Procedures generic, public :: add => json_file_add , json_file_add_object , wrap_json_file_add_object , json_file_add_integer , wrap_json_file_add_integer , json_file_add_real32 , wrap_json_file_add_real32 , json_file_add_real , wrap_json_file_add_real , json_file_add_logical , wrap_json_file_add_logical , json_file_add_string , wrap_json_file_add_string , json_file_add_integer_vec , wrap_json_file_add_integer_vec , json_file_add_real32_vec , wrap_json_file_add_real32_vec , json_file_add_real_vec , wrap_json_file_add_real_vec , json_file_add_logical_vec , wrap_json_file_add_logical_vec , json_file_add_string_vec , wrap_json_file_add_string_vec Add a variable to a json_file , by specifying the path. Read more… generic, public :: add => json_file_add_string_path_ascii , json_file_add_string_value_ascii , json_file_add_string_vec_path_ascii , json_file_add_string_vec_vec_ascii procedure, public :: assign_json_file procedure, public, pass(me) :: assign_json_file_to_string procedure, public :: assign_string_to_json_file generic, public :: assignment(=) => assign_json_file , assign_json_file_to_string , assign_string_to_json_file , wrap_assign_string_to_json_file procedure, public :: check_for_errors => json_file_check_for_errors procedure, public :: clear_exceptions => json_file_clear_exceptions generic, public :: deserialize => json_file_load_from_string , wrap_json_file_load_from_string ../../ Load JSON from a string. procedure, public :: destroy => json_file_destroy procedure, public :: failed => json_file_failed generic, public :: get => json_file_get_object , wrap_json_file_get_object , json_file_get_integer , wrap_json_file_get_integer , json_file_get_real32 , wrap_json_file_get_real32 , json_file_get_real , wrap_json_file_get_real , json_file_get_logical , wrap_json_file_get_logical , json_file_get_string , wrap_json_file_get_string , json_file_get_integer_vec , wrap_json_file_get_integer_vec , json_file_get_real32_vec , wrap_json_file_get_real32_vec , json_file_get_real_vec , wrap_json_file_get_real_vec , json_file_get_logical_vec , wrap_json_file_get_logical_vec , json_file_get_string_vec , wrap_json_file_get_string_vec , json_file_get_alloc_string_vec , wrap_json_file_get_alloc_string_vec , json_file_get_root Get a variable from a json_file , by specifying the path. procedure, public :: get_core => get_json_core_in_file generic, public :: info => json_file_variable_info , wrap_json_file_variable_info generic, public :: initialize => initialize_json_core_in_file , set_json_core_in_file procedure, public :: initialize_json_core_in_file procedure, public :: json_file_add procedure, public :: json_file_add_integer procedure, public :: json_file_add_integer_vec procedure, public :: json_file_add_logical procedure, public :: json_file_add_logical_vec procedure, public :: json_file_add_object procedure, public :: json_file_add_real procedure, public :: json_file_add_real32 procedure, public :: json_file_add_real32_vec procedure, public :: json_file_add_real_vec procedure, public :: json_file_add_string procedure, public :: json_file_add_string_path_ascii procedure, public :: json_file_add_string_value_ascii procedure, public :: json_file_add_string_vec procedure, public :: json_file_add_string_vec_path_ascii procedure, public :: json_file_add_string_vec_vec_ascii procedure, public :: json_file_get_alloc_string_vec procedure, public :: json_file_get_integer procedure, public :: json_file_get_integer_vec procedure, public :: json_file_get_logical procedure, public :: json_file_get_logical_vec procedure, public :: json_file_get_object procedure, public :: json_file_get_real procedure, public :: json_file_get_real32 procedure, public :: json_file_get_real32_vec procedure, public :: json_file_get_real_vec procedure, public :: json_file_get_root procedure, public :: json_file_get_string procedure, public :: json_file_get_string_vec procedure, public :: json_file_load_from_string procedure, public :: json_file_print_to_console procedure, public :: json_file_print_to_filename procedure, public :: json_file_print_to_unit procedure, public :: json_file_remove procedure, public :: json_file_rename procedure, public :: json_file_rename_name_ascii procedure, public :: json_file_rename_path_ascii procedure, public :: json_file_update_integer procedure, public :: json_file_update_logical procedure, public :: json_file_update_real procedure, public :: json_file_update_real32 procedure, public :: json_file_update_string procedure, public :: json_file_update_string_name_ascii procedure, public :: json_file_update_string_val_ascii procedure, public :: json_file_valid_path procedure, public, pass(me) :: json_file_valid_path_op procedure, public :: json_file_variable_info procedure, public :: json_file_variable_matrix_info procedure, public :: load => json_file_load ../../ Load JSON from a file. procedure, public :: load_file => json_file_load ../../ The same as load , but only here for backward compatibility generic, public :: load_from_string => json_file_load_from_string , wrap_json_file_load_from_string ../../ The same as deserialize , but only here for backward compatibility generic, public :: matrix_info => json_file_variable_matrix_info , wrap_json_file_variable_matrix_info procedure, public :: move => json_file_move_pointer procedure, public :: nullify => json_file_nullify generic, public :: operator(.in.) => json_file_valid_path_op , wrap_json_file_valid_path_op generic, public :: print => json_file_print_to_console , json_file_print_to_unit , json_file_print_to_filename procedure, public :: print_error_message => json_file_print_error_message generic, public :: print_file => json_file_print_to_console , json_file_print_to_unit , json_file_print_to_filename ../../ The same as print , but only here for backward compatibility procedure, public :: print_to_string => json_file_print_to_string ../../ The same as serialize , but only here for backward compatibility generic, public :: remove => json_file_remove , wrap_json_file_remove Remove a variable from a json_file by specifying the path. generic, public :: rename => json_file_rename , wrap_json_file_rename ../../ Rename a variable, specifying it by path generic, public :: rename => json_file_rename_path_ascii , json_file_rename_name_ascii procedure, public :: serialize => json_file_print_to_string Print the json_value structure to an allocatable string procedure, public :: set_json_core_in_file procedure, public :: traverse => json_file_traverse generic, public :: update => json_file_update_integer , wrap_json_file_update_integer , json_file_update_logical , wrap_json_file_update_logical , json_file_update_real32 , wrap_json_file_update_real32 , json_file_update_real , wrap_json_file_update_real , json_file_update_string , wrap_json_file_update_string Update a scalar variable in a json_file ,\n by specifying the path. Read more… generic, public :: update => json_file_update_string_name_ascii , json_file_update_string_val_ascii generic, public :: valid_path => json_file_valid_path , wrap_json_file_valid_path ../../ Verify that a path is valid\n(i.e., a variable with this path exists in the file). procedure, public :: wrap_assign_string_to_json_file procedure, public :: wrap_json_file_add_integer procedure, public :: wrap_json_file_add_integer_vec procedure, public :: wrap_json_file_add_logical procedure, public :: wrap_json_file_add_logical_vec procedure, public :: wrap_json_file_add_object procedure, public :: wrap_json_file_add_real procedure, public :: wrap_json_file_add_real32 procedure, public :: wrap_json_file_add_real32_vec procedure, public :: wrap_json_file_add_real_vec procedure, public :: wrap_json_file_add_string procedure, public :: wrap_json_file_add_string_vec procedure, public :: wrap_json_file_get_alloc_string_vec procedure, public :: wrap_json_file_get_integer procedure, public :: wrap_json_file_get_integer_vec procedure, public :: wrap_json_file_get_logical procedure, public :: wrap_json_file_get_logical_vec procedure, public :: wrap_json_file_get_object procedure, public :: wrap_json_file_get_real procedure, public :: wrap_json_file_get_real32 procedure, public :: wrap_json_file_get_real32_vec procedure, public :: wrap_json_file_get_real_vec procedure, public :: wrap_json_file_get_string procedure, public :: wrap_json_file_get_string_vec procedure, public :: wrap_json_file_load_from_string procedure, public :: wrap_json_file_remove procedure, public :: wrap_json_file_rename procedure, public :: wrap_json_file_update_integer procedure, public :: wrap_json_file_update_logical procedure, public :: wrap_json_file_update_real procedure, public :: wrap_json_file_update_real32 procedure, public :: wrap_json_file_update_string procedure, public :: wrap_json_file_valid_path procedure, public, pass(me) :: wrap_json_file_valid_path_op procedure, public :: wrap_json_file_variable_info procedure, public :: wrap_json_file_variable_matrix_info Functions private function initialize_json_file (p, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma, nullify_pointer) result(file_object) Author Izaak Beekman Date 07/23/2015 Cast a json_value object as a json_file object.\n It also calls the initialize() method. Read more… Arguments Type Intent Optional Attributes Name type( json_value ), optional, pointer :: p json_value object to cast\nas a json_file object. This\nwill be nullified. logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) logical(kind=LK), intent(in), optional :: nullify_pointer if True, then p will be nullified\nif present. (default is True). Normally,\nthis should be done, because the json_file will destroy\nthe pointer when the class goes out of scope (causing p to be\na dangling pointer). However, if the intent is to use p in\na json_file and then call nullify and continue\nto use p , then this should be set to False. Return Value type( json_file ) private function initialize_json_file_from_string (str, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) result(file_object) Author Jacob Williams Date 01/19/2019 Cast a JSON string as a json_file object.\n It also calls the initialize() method. Read more… Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str string to load JSON data from logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Return Value type( json_file ) private function initialize_json_file_from_string_v2 (str, json_core_object) result(file_object) Author Jacob Williams Date 1/19/2019 Cast a JSON string and a json_core object\nas a json_file object. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str string to load JSON data from type( json_core ), intent(in) :: json_core_object Return Value type( json_file ) private function initialize_json_file_v2 (json_value_object, json_core_object) result(file_object) Author Jacob Williams Date 4/26/2016 Cast a json_value pointer and a json_core object\nas a json_file object. Arguments Type Intent Optional Attributes Name type( json_value ), intent(in), pointer :: json_value_object type( json_core ), intent(in) :: json_core_object Return Value type( json_file ) private pure function json_file_failed (me) result(failed) Check error status in the file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(in) :: me Return Value logical(kind=LK) will be true if there has been an error. private function json_file_valid_path (me, path) result(found) Author Jacob Williams Returns true if the path is present in the JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable Return Value logical(kind=LK) if the variable was found private function json_file_valid_path_op (path, me) result(found) Author Jacob Williams A wrapper for json_file_valid_path for the .in. operator Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: path the path to the variable class( json_file ), intent(in) :: me the JSON file Return Value logical(kind=LK) if the variable was found private function wrap_initialize_json_file_from_string (str, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) result(file_object) Alternate version of initialize_json_file_from_string , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: str string to load JSON data from logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Return Value type( json_file ) private function wrap_initialize_json_file_from_string_v2 (str, json_core_object) result(file_object) Alternate version of initialize_json_file_from_string_v2 , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: str string to load JSON data from type( json_core ), intent(in) :: json_core_object Return Value type( json_file ) private function wrap_json_file_valid_path (me, path) result(found) Author Jacob Williams Alternate version of json_file_valid_path , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable Return Value logical(kind=LK) if the variable was found private function wrap_json_file_valid_path_op (path, me) result(found) Author Jacob Williams Alternate version of json_file_valid_path_op , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: path the path to the variable class( json_file ), intent(in) :: me the JSON file Return Value logical(kind=LK) if the variable was found Subroutines private subroutine assign_json_file (me, f) Author Jacob Williams Assignment operator for json_core = json_core .\nThis will duplicate the json_core and also\nperform a deep copy of the json_value data structure. Arguments Type Intent Optional Attributes Name class( json_file ), intent(out) :: me type( json_file ), intent(in) :: f private subroutine assign_json_file_to_string (str, me) Author Jacob Williams Assignment operator for character = json_core .\n This is just a wrapper for the json_value_to_string routine. Read more… Arguments Type Intent Optional Attributes Name character(kind=CK, len=:), intent(out), allocatable :: str class( json_file ), intent(in) :: me private subroutine assign_string_to_json_file (me, str) Author Jacob Williams Assignment operator for json_core = character.\nThis is just a wrapper for the json_file_load_from_string routine. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: str private subroutine finalize_json_file (me) Finalizer for json_file class. Read more… Arguments Type Intent Optional Attributes Name type( json_file ), intent(inout) :: me private subroutine get_json_core_in_file (me, core) Get a copy of the json_core in this json_file . Arguments Type Intent Optional Attributes Name class( json_file ), intent(in) :: me type( json_core ), intent(out) :: core private subroutine initialize_json_core_in_file (me, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) Initialize the json_core for this json_file .\n This is just a wrapper for json_initialize . Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) private subroutine json_file_add (me, p, destroy_original) Author Jacob Williams Add a json_value pointer as the root object to a JSON file. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me type( json_value ), intent(in), pointer :: p pointer to the variable to add logical(kind=LK), intent(in), optional :: destroy_original if the file currently contains\nan associated pointer, it is\ndestroyed. [Default is True] private subroutine json_file_add_integer (me, path, val, found, was_created) Author Jacob Williams Add an integer value to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_integer_vec (me, path, vec, found, was_created) Author Jacob Williams Add an integer vector to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_logical (me, path, val, found, was_created) Author Jacob Williams Add a logical(LK) value to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_logical_vec (me, path, vec, found, was_created) Author Jacob Williams Add a logical(LK) vector to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_object (me, path, p, found, was_created) Author Jacob Williams Add a json_value pointer to an object to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(in), pointer :: p pointer to the variable to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_real (me, path, val, found, was_created) Author Jacob Williams Add a real(RK) variable value to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_real32 (me, path, val, found, was_created) Author Jacob Williams Alternate version of json_file_add_real where val is real32 . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_real32_vec (me, path, vec, found, was_created) Author Jacob Williams Alternate version of json_file_add_real_vec where vec is real32 . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_real_vec (me, path, vec, found, was_created) Author Jacob Williams Add a real(RK) vector to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_file_add_string (me, path, val, found, was_created, trim_str, adjustl_str) Author Jacob Williams Add a character string to a json file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) private subroutine json_file_add_string_path_ascii (me, path, val, found, was_created, trim_str, adjustl_str) Author Jacob Williams Wrapper for json_file_add_string where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) private subroutine json_file_add_string_value_ascii (me, path, val, found, was_created, trim_str, adjustl_str) Author Jacob Williams Wrapper for json_file_add_string where “val” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) private subroutine json_file_add_string_vec (me, path, vec, found, was_created, ilen, trim_str, adjustl_str) Author Jacob Williams Add a string vector to a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element\n(note that ADJUSTL is done before TRIM) private subroutine json_file_add_string_vec_path_ascii (me, path, vec, found, was_created, ilen, trim_str, adjustl_str) Author Jacob Williams Alternate version of json_file_add_string_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element\n(note that ADJUSTL is done before TRIM) private subroutine json_file_add_string_vec_vec_ascii (me, path, vec, found, was_created, ilen, trim_str, adjustl_str) Author Jacob Williams Alternate version of json_file_add_string_vec , where “vec” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element\n(note that ADJUSTL is done before TRIM) private subroutine json_file_check_for_errors (me, status_ok, error_msg) Retrieve error status and message from the class. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me logical(kind=LK), intent(out), optional :: status_ok true if there were no errors character(kind=CK, len=:), intent(out), optional, allocatable :: error_msg the error message\n(if there were errors) private pure subroutine json_file_clear_exceptions (me) Clear exceptions in the class. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me private subroutine json_file_destroy (me, destroy_core) Author Jacob Williams Destroy the json_value data in a json_file .\n This may be done when the variable is no longer needed,\n or will be reused to open a different file.\n Otherwise a memory leak will occur. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me logical, intent(in), optional :: destroy_core to also destroy the json_core .\ndefault is to leave it as is. private subroutine json_file_get_alloc_string_vec (me, path, vec, ilen, found, default, default_ilen) Author Jacob Williams Date 12/17/2016 Get an (allocatable length) string vector from a JSON file.\nThis is just a wrapper for json_get_alloc_string_vec_by_path . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec value vector integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default integer(kind=IK), intent(in), optional, dimension(:) :: default_ilen the actual\nlength of default private subroutine json_file_get_integer (me, path, val, found, default) Author Jacob Williams Date 12/9/2013 Get an integer value from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found integer(kind=IK), intent(in), optional :: default private subroutine json_file_get_integer_vec (me, path, vec, found, default) Author Jacob Williams Date 1/20/2014 Get an integer vector from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found integer(kind=IK), intent(in), optional, dimension(:) :: default private subroutine json_file_get_logical (me, path, val, found, default) Author Jacob Williams Date 12/9/2013 Get a logical(LK) value from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found logical(kind=LK), intent(in), optional :: default private subroutine json_file_get_logical_vec (me, path, vec, found, default) Author Jacob Williams Date 1/20/2014 Get a logical(LK) vector from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found logical(kind=LK), intent(in), optional, dimension(:) :: default private subroutine json_file_get_object (me, path, p, found) Author Jacob Williams Date 2/3/2014 Get a json_value pointer to an object from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(out), pointer :: p pointer to the variable logical(kind=LK), intent(out), optional :: found if it was really found private subroutine json_file_get_real (me, path, val, found, default) Author Jacob Williams Date 12/9/2013 Get a real(RK) variable value from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found real(kind=RK), intent(in), optional :: default private subroutine json_file_get_real32 (me, path, val, found, default) Author Jacob Williams Date 1/21/2019 Alternate version of json_file_get_real where val is real32 . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found real(kind=real32), intent(in), optional :: default private subroutine json_file_get_real32_vec (me, path, vec, found, default) Author Jacob Williams Date 1/21/2019 Alternate version of json_file_get_real_vec where vec is real32 . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found real(kind=real32), intent(in), optional, dimension(:) :: default private subroutine json_file_get_real_vec (me, path, vec, found, default) Author Jacob Williams Date 1/19/2014 Get a real(RK) vector from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found real(kind=RK), intent(in), optional, dimension(:) :: default private subroutine json_file_get_root (me, p) Author Izaak Beekman Date 7/23/2015 Get a json_value pointer to the JSON file root. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me type( json_value ), intent(out), pointer :: p pointer to the variable private subroutine json_file_get_string (me, path, val, found, default) Author Jacob Williams Date 12/9/2013 Get a character string from a json file.\nThe output val is an allocatable character string. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=:), intent(out), allocatable :: val value logical(kind=LK), intent(out), optional :: found if it was really found character(kind=CK, len=*), intent(in), optional :: default private subroutine json_file_get_string_vec (me, path, vec, found, default) Author Jacob Williams Date 1/19/2014 Get a string vector from a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec value vector logical(kind=LK), intent(out), optional :: found if it was really found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default private subroutine json_file_load (me, filename, unit, destroy_pointer) Author Jacob Williams Date 12/9/2013 Load the JSON data from a file. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: filename the filename to open integer(kind=IK), intent(in), optional :: unit the unit number to use\n(if not present, a newunit\nis used) logical(kind=LK), intent(in), optional :: destroy_pointer destroy the pointer before\nloading (default is True) private subroutine json_file_load_from_string (me, str, destroy_pointer) Author Jacob Williams Date 1/13/2015 Load the JSON data from a string. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: str string to load JSON data from logical(kind=LK), intent(in), optional :: destroy_pointer destroy the pointer before\nloading (default is True) private subroutine json_file_move_pointer (to, from) Author Jacob Williams Date 12/5/2014 Move the json_value pointer from one json_file to another.\n The “from” pointer is then nullified, but not destroyed. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: to class( json_file ), intent(inout) :: from private subroutine json_file_nullify (me) Author Jacob Williams Nullify the json_value pointer in a json_file ,\n but do not destroy it. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me private subroutine json_file_print_error_message (me, io_unit) This is a wrapper for json_print_error_message . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me integer, intent(in), optional :: io_unit private subroutine json_file_print_to_console (me) Author Jacob Williams Date 1/11/2015 Print the JSON file to the console. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me private subroutine json_file_print_to_filename (me, filename) Author Jacob Williams Date 1/11/2015 Print the JSON structure to the specified filename.\n The file is opened, printed, and then closed. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: filename filename to print to private subroutine json_file_print_to_string (me, str) Author Jacob Williams Date 1/11/2015 Print the JSON file to a string. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=:), intent(out), allocatable :: str string to print JSON data to private subroutine json_file_print_to_unit (me, iunit) Author Jacob Williams Date 12/9/2013 Prints the JSON file to the specified file unit number. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me integer(kind=IK), intent(in) :: iunit file unit number (must not be -1) private subroutine json_file_remove (me, path) Author Jacob Williams Date 7/7/2018 Remove a variable from a JSON file. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable private subroutine json_file_rename (me, path, name, found) Author Jacob Williams Rename a variable in a JSON file. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if the variable was found private subroutine json_file_rename_name_ascii (me, path, name, found) Author Jacob Williams Wrapper for json_file_rename where “name” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if the variable was found private subroutine json_file_rename_path_ascii (me, path, name, found) Author Jacob Williams Wrapper for json_file_rename where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if the variable was found private subroutine json_file_traverse (me, traverse_callback) Author Jacob Williams Date 6/11/2016 Traverse the JSON structure in the file.\nThis routine calls the user-specified json_traverse_callback_func for each element of the structure. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me procedure( json_traverse_callback_func ) :: traverse_callback private subroutine json_file_update_integer (me, path, val, found) Author Jacob Williams Date 1/10/2015 Given the path string, if the variable is present in the file,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path integer(kind=IK), intent(in) :: val logical(kind=LK), intent(out) :: found private subroutine json_file_update_logical (me, path, val, found) Author Jacob Williams Date 1/10/2015 Given the path string, if the variable is present in the file,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path logical(kind=LK), intent(in) :: val logical(kind=LK), intent(out) :: found private subroutine json_file_update_real (me, path, val, found) Author Jacob Williams Date 1/10/2015 Given the path string, if the variable is present in the file,\nand is a scalar, then update its value.\nIf it is not present, then create it and set its value. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path real(kind=RK), intent(in) :: val logical(kind=LK), intent(out) :: found private subroutine json_file_update_real32 (me, path, val, found) Author Jacob Williams Date 1/21/2019 Alternate version of json_file_update_real where val is real32 . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path real(kind=real32), intent(in) :: val logical(kind=LK), intent(out) :: found private subroutine json_file_update_string (me, path, val, found, trim_str, adjustl_str) Author Jacob Williams Date 1/10/2015 Given the path string, if the variable is present in the file,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path character(kind=CK, len=*), intent(in) :: val logical(kind=LK), intent(out) :: found logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) private subroutine json_file_update_string_name_ascii (me, path, val, found, trim_str, adjustl_str) Alternate version of json_file_update_string , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=*), intent(in) :: val logical(kind=LK), intent(out) :: found logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) private subroutine json_file_update_string_val_ascii (me, path, val, found, trim_str, adjustl_str) Alternate version of json_file_update_string , where “val” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path character(kind=CDK, len=*), intent(in) :: val logical(kind=LK), intent(out) :: found logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) private subroutine json_file_variable_info (me, path, found, var_type, n_children, name) Author Jacob Williams Date 2/3/2014 Returns information about a variable in a json_file . Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, len=*), intent(in) :: path path to the variable logical(kind=LK), intent(out), optional :: found the variable exists in the structure integer(kind=IK), intent(out), optional :: var_type variable type integer(kind=IK), intent(out), optional :: n_children number of children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name private subroutine json_file_variable_matrix_info (me, path, is_matrix, found, var_type, n_sets, set_size, name) Author Jacob Williams Date 6/26/2016 Returns matrix information about a variable in a json_file . Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CK, 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\nthe matrix (if all elements have\nthe same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name private subroutine set_json_core_in_file (me, core) Set the json_core for this json_file . Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me type( json_core ), intent(in) :: core private subroutine wrap_assign_string_to_json_file (me, str) Author Jacob Williams Alternate version of assign_string_to_json_file , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: str private subroutine wrap_json_file_add_integer (me, path, val, found, was_created) Author Jacob Williams Alternate version of json_file_add_integer , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_integer_vec (me, path, vec, found, was_created) Author Jacob Williams Alternate version of json_file_add_integer_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_logical (me, path, val, found, was_created) Author Jacob Williams Alternate version of json_file_add_logical , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_logical_vec (me, path, vec, found, was_created) Author Jacob Williams Alternate version of json_file_add_logical_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_object (me, path, p, found, was_created) Author Jacob Williams Alternate version of json_file_add_object , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(in), pointer :: p pointer to the variable to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_real (me, path, val, found, was_created) Author Jacob Williams Alternate version of json_file_add_real , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_real32 (me, path, val, found, was_created) Author Jacob Williams Alternate version of json_file_add_real32 , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_real32_vec (me, path, vec, found, was_created) Author Jacob Williams Alternate version of json_file_add_real32_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_real_vec (me, path, vec, found, was_created) Author Jacob Williams Alternate version of json_file_add_real_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_file_add_string (me, path, val, found, was_created, trim_str, adjustl_str) Author Jacob Williams Alternate version of json_file_add_string , where “path” and “val” are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: val value logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) private subroutine wrap_json_file_add_string_vec (me, path, vec, found, was_created, ilen, trim_str, adjustl_str) Author Jacob Williams Alternate version of json_file_add_string_vec , where “path” and “vec” are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in), dimension(:) :: vec the value vector logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element\n(note that ADJUSTL is done before TRIM) private subroutine wrap_json_file_get_alloc_string_vec (me, path, vec, ilen, found, default, default_ilen) Alternate version of json_file_get_alloc_string_vec , where “path” is kind=CDK.\nThis is just a wrapper for wrap_json_get_alloc_string_vec_by_path . Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec value vector integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default integer(kind=IK), intent(in), optional, dimension(:) :: default_ilen the actual\nlength of default private subroutine wrap_json_file_get_integer (me, path, val, found, default) Alternate version of json_file_get_integer , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found integer(kind=IK), intent(in), optional :: default private subroutine wrap_json_file_get_integer_vec (me, path, vec, found, default) Alternate version of json_file_get_integer_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found integer(kind=IK), intent(in), optional, dimension(:) :: default private subroutine wrap_json_file_get_logical (me, path, val, found, default) Alternate version of json_file_get_logical , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found logical(kind=LK), intent(in), optional :: default private subroutine wrap_json_file_get_logical_vec (me, path, vec, found, default) Alternate version of json_file_get_logical_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found logical(kind=LK), intent(in), optional, dimension(:) :: default private subroutine wrap_json_file_get_object (me, path, p, found) Alternate version of json_file_get_object , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(out), pointer :: p pointer to the variable logical(kind=LK), intent(out), optional :: found if it was really found private subroutine wrap_json_file_get_real (me, path, val, found, default) Alternate version of json_file_get_real , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found real(kind=RK), intent(in), optional :: default private subroutine wrap_json_file_get_real32 (me, path, val, found, default) Alternate version of json_file_get_real32 , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(out) :: val value logical(kind=LK), intent(out), optional :: found if it was really found real(kind=real32), intent(in), optional :: default private subroutine wrap_json_file_get_real32_vec (me, path, vec, found, default) Alternate version of json_file_get_real32_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found real(kind=real32), intent(in), optional, dimension(:) :: default private subroutine wrap_json_file_get_real_vec (me, path, vec, found, default) Alternate version of json_file_get_real_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(out), dimension(:), allocatable :: vec the value vector logical(kind=LK), intent(out), optional :: found if it was really found real(kind=RK), intent(in), optional, dimension(:) :: default private subroutine wrap_json_file_get_string (me, path, val, found, default) Alternate version of json_file_get_string , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=:), intent(out), allocatable :: val value logical(kind=LK), intent(out), optional :: found if it was really found character(kind=CK, len=*), intent(in), optional :: default private subroutine wrap_json_file_get_string_vec (me, path, vec, found, default) Alternate version of json_file_get_string_vec , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec value vector logical(kind=LK), intent(out), optional :: found if it was really found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default private subroutine wrap_json_file_load_from_string (me, str) Alternate version of json_file_load_from_string , where “str” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: str private subroutine wrap_json_file_remove (me, path) Alternate version of json_file_remove , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable private subroutine wrap_json_file_rename (me, path, name, found) Author Jacob Williams Alternate version of json_file_rename , where “path” and “name” are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if the variable was found private subroutine wrap_json_file_update_integer (me, path, val, found) Alternate version of json_file_update_integer , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path integer(kind=IK), intent(in) :: val logical(kind=LK), intent(out) :: found private subroutine wrap_json_file_update_logical (me, path, val, found) Alternate version of json_file_update_logical , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path logical(kind=LK), intent(in) :: val logical(kind=LK), intent(out) :: found private subroutine wrap_json_file_update_real (me, path, val, found) Alternate version of json_file_update_real , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path real(kind=RK), intent(in) :: val logical(kind=LK), intent(out) :: found private subroutine wrap_json_file_update_real32 (me, path, val, found) Alternate version of json_file_update_real32 , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path real(kind=real32), intent(in) :: val logical(kind=LK), intent(out) :: found private subroutine wrap_json_file_update_string (me, path, val, found, trim_str, adjustl_str) Alternate version of json_file_update_string , where “path” and “val” are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CDK, len=*), intent(in) :: val logical(kind=LK), intent(out) :: found logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (note that ADJUSTL is done before TRIM) private subroutine wrap_json_file_variable_info (me, path, found, var_type, n_children, name) Alternate version of json_file_variable_info , where “path” is kind=CDK. Read more… Arguments Type Intent Optional Attributes Name class( json_file ), intent(inout) :: me character(kind=CDK, len=*), intent(in) :: path logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(out), optional :: var_type integer(kind=IK), intent(out), optional :: n_children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name private subroutine wrap_json_file_variable_matrix_info (me, path, is_matrix, found, var_type, n_sets, set_size, name) Alternate version of json_file_variable_matrix_info , where “path” is kind=CDK. Read more… Arguments 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\nthe matrix (if all elements have\nthe same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name","tags":"","loc":"module/json_file_module.html"},{"title":"json_parameters – JSON-Fortran","text":"Other parameters used by JSON -Fortran.\n This is a low-level module not meant to be used by a JSON -Fortran user. License JSON -Fortran is released under a BSD-style license.\n See the LICENSE file for details. Uses json_kinds module~~json_parameters~~UsesGraph module~json_parameters json_parameters module~json_kinds json_kinds module~json_parameters->module~json_kinds iso_fortran_env iso_fortran_env module~json_kinds->iso_fortran_env Help Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\ndescended from. Dashed arrows point from a module or program unit to \nmodules which it uses. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Used by module~~json_parameters~~UsedByGraph module~json_parameters json_parameters module~json_file_module json_file_module module~json_file_module->module~json_parameters module~json_string_utilities json_string_utilities module~json_file_module->module~json_string_utilities module~json_value_module json_value_module module~json_file_module->module~json_value_module module~json_module json_module module~json_module->module~json_parameters module~json_module->module~json_file_module module~json_module->module~json_string_utilities module~json_module->module~json_value_module module~json_string_utilities->module~json_parameters module~json_value_module->module~json_parameters module~json_value_module->module~json_string_utilities Help Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\ndescended from. Dashed arrows point from a module or program unit to \nmodules which it uses. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Variables Type Visibility Attributes Name Initial character(kind=CK, len=*), public, parameter :: backslash = achar(92, kind=CK) JSON special character character(kind=CK, len=*), public, parameter :: blank_chunk = repeat(space, chunk_size) a blank string character(kind=CK, len=*), public, parameter :: bspace = achar(8, kind=CK) JSON special character character(kind=CK, len=*), public, parameter :: carriage_return = achar(13, kind=CK) JSON special character integer(kind=IK), public, parameter :: chunk_size = 256_IK for allocatable strings: allocate chunks of this size character(kind=CK, len=*), public, parameter :: colon_char = CK_':' colon character for JSON character(kind=CK, len=*), public, parameter, dimension(32) :: control_chars = [(achar(i_, kind=CK), i_=1, 31), achar(127, kind=CK)] Control characters, possibly in unicode character(kind=CDK, len=*), public, parameter :: default_real_fmt = '(ss,E27.17E4)' default real number format statement (for writing real values to strings and files).\n Note that this can be overridden by calling json_initialize . character(kind=CK, len=*), public, parameter :: delimiter = CK_',' delimiter for JSON character(kind=CK, len=*), public, parameter :: dot = CK_'.' path separator for json_get_by_path_default character(kind=CK, len=*), public, parameter :: end_array = CK_']' end of a JSON array character(kind=CK, len=*), public, parameter :: end_array_alt = CK_')' alternate end of JSON array for json_get_by_path_default character(kind=CK, len=*), public, parameter :: end_object = CK_'}' end of a JSON object character(kind=CK, len=5), protected :: false_str = CK_'false' JSON logical False string character(kind=CK, len=*), public, parameter :: formfeed = achar(12, kind=CK) JSON special character character(kind=CK, len=*), public, parameter :: horizontal_tab = achar(9, kind=CK) JSON special character integer, private :: i_ just a counter for control_chars array character(kind=CDK, len=*), public, parameter :: int_fmt = '(ss,I0)' minimum width format for integers integer(kind=IK), public, parameter :: json_array = 3 Array JSON data type\n(see json_file_variable_info and json_info ) integer(kind=IK), public, parameter :: json_double = json_real Equivalent to json_real for\nbackward compatibility. character(kind=CDK, len=*), public, parameter :: json_ext = '.json' JSON file extension integer(kind=IK), public, parameter :: json_integer = 5 Integer JSON data type ( integer(IK) )\n(see json_file_variable_info and json_info ). integer(kind=IK), public, parameter :: json_logical = 4 Logical JSON data type ( logical(LK) )\n(see json_file_variable_info and json_info ) integer(kind=IK), public, parameter :: json_null = 1 Null JSON data type\n(see json_file_variable_info and json_info ) integer(kind=IK), public, parameter :: json_object = 2 Object JSON data type\n(see json_file_variable_info and json_info ) integer(kind=IK), public, parameter :: json_real = 6 Real number JSON data type ( real(RK) )\n(see json_file_variable_info and json_info ) integer(kind=IK), public, parameter :: json_string = 7 String JSON data type ( character(kind=CK) )\n(see json_file_variable_info and json_info ) integer(kind=IK), public, parameter :: json_unknown = 0 Unknown JSON data type\n(see json_file_variable_info and json_info ) character(kind=CK, len=26), protected :: lower = CK_'abcdefghijklmnopqrstuvwxyz' lowercase characters integer(kind=IK), public, parameter :: max_integer_str_len = 256_IK maximum string length of an integer.\nThis is totally arbitrary (any way\nto get the compiler to tell us this?) integer(kind=IK), public, parameter :: max_numeric_str_len = real_precision+real_exponent_digits+6_IK 6 = sign + leading 0 + decimal + ‘E’ + exponent sign + 1 extra integer(kind=IK), public, parameter :: maxexp = maxexponent(1.0_RK) integer(kind=IK), public, parameter :: minexp = minexponent(1.0_RK) character(kind=CK, len=*), public, parameter :: newline = achar(10, kind=CK) JSON special character character(kind=CK, len=4), protected :: null_str = CK_'null' JSON Null variable string integer(kind=IK), public, parameter :: print_str_chunk_size = 1000_IK chunk size for writing JSON to a string integer(kind=IK), public, parameter :: pushed_char_size = 10_IK size for pushed_char array in json_core character(kind=CK, len=*), public, parameter :: quotation_mark = CK_'\"' JSON special character integer(kind=IK), public, parameter :: real_exponent_digits = floor(1_IK+log10(real(max(maxexp, abs(maxexp)), kind=RK))) integer(kind=IK), public, parameter :: real_precision = rp_safety_factor*precision(1.0_RK)+rp_addl_safety character(kind=CK, len=*), public, parameter :: root = achar(36, kind=CK) ( $ ) root for json_get_by_path_default integer(kind=IK), public, parameter :: rp_addl_safety = 2_IK integer(kind=IK), public, parameter :: rp_safety_factor = 1_IK integer(kind=IK), public, parameter :: seq_chunk_size = 256_IK chunk size for reading sequential files character(kind=CK, len=*), public, parameter :: single_quote = CK_\"'\" for JSONPath bracket-notation character(kind=CK, len=*), public, parameter :: slash = achar(47, kind=CK) JSON special character character(kind=CK, len=*), public, parameter :: space = CK_' ' space character character(kind=CK, len=*), public, parameter :: star = CK_'*' for invalid numbers and\nlist-directed real output character(kind=CK, len=*), public, parameter :: start_array = CK_'[' start of a JSON array character(kind=CK, len=*), public, parameter :: start_array_alt = CK_'(' alternate start of JSON array for json_get_by_path_default character(kind=CK, len=*), public, parameter :: start_object = CK_'{' start of a JSON object integer(kind=IK), public, parameter :: stream_chunk_size = 256_IK chunk size for reading stream files character(kind=CK, len=*), public, parameter :: this = CK_'@' ‘this’ for json_get_by_path_default character(kind=CK, len=*), public, parameter :: tilde = CK_'~' RFC 6901 escape character character(kind=CK, len=4), protected :: true_str = CK_'true' JSON logical True string integer(kind=IK), public, parameter :: unit2str = -1_IK unit number to cause stuff to be\noutput to strings rather than files.\nSee 9.5.6.12 in the F2003/08 standard character(kind=CK, len=26), protected :: upper = CK_'ABCDEFGHIJKLMNOPQRSTUVWXYZ' uppercase characters","tags":"","loc":"module/json_parameters.html"},{"title":"json_kinds – JSON-Fortran","text":"JSON -Fortran kind definitions. License JSON -Fortran is released under a BSD-style license.\n See the LICENSE file for details. Note -DUSE_UCS4 is an optional preprocessor flag.\n When present, Unicode support is enabled. Note that this\n is currently only supported with the gfortran compiler.\n Example: gfortran -DUSE_UCS4 ... The documentation given here assumes USE_UCS4 is defined. Warning CK and CDK are the JSON -Fortran character kind and JSON -Fortran default\n character kind respectively. Client code MUST ensure characters of kind=CK are used for all character variables and strings passed to the JSON -Fortran\n library EXCEPT for file names which must be of 'DEFAULT' character kind,\n provided here as CDK . In particular, any variable that is a: json path, string\n value or object name passed to the JSON -Fortran library MUST be of type CK . Note Most string literal constants of default kind are fine to pass as arguments to JSON -Fortran procedures since they have been overloaded to accept intent(in) character arguments of the default ( CDK ) kind. If you find a procedure which does\n not accept an intent(in) literal string argument of default kind, please file an issue on GitHub. Note The default real kind ( RK ) and the default integer kind ( IK ) can be\n changed using optional preprocessor flags. This library was built with kinds:\n real(kind=real64) [8 bytes]\n and\n integer(kind=int32) [4 bytes]\n . Note In addition to the real kind specified by RK , interfaces for\n the real kinds with less precision are also provided in the library,\n but all are converted to real(RK) variables internally. Uses iso_fortran_env module~~json_kinds~~UsesGraph module~json_kinds json_kinds iso_fortran_env iso_fortran_env module~json_kinds->iso_fortran_env Help Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\ndescended from. Dashed arrows point from a module or program unit to \nmodules which it uses. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Used by module~~json_kinds~~UsedByGraph module~json_kinds json_kinds module~json_file_module json_file_module module~json_file_module->module~json_kinds module~json_parameters json_parameters module~json_file_module->module~json_parameters module~json_string_utilities json_string_utilities module~json_file_module->module~json_string_utilities module~json_value_module json_value_module module~json_file_module->module~json_value_module module~json_module json_module module~json_module->module~json_kinds module~json_module->module~json_file_module module~json_module->module~json_parameters module~json_module->module~json_string_utilities module~json_module->module~json_value_module module~json_parameters->module~json_kinds module~json_string_utilities->module~json_kinds module~json_string_utilities->module~json_parameters module~json_value_module->module~json_kinds module~json_value_module->module~json_parameters module~json_value_module->module~json_string_utilities Help Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\ndescended from. Dashed arrows point from a module or program unit to \nmodules which it uses. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Variables Type Visibility Attributes Name Initial integer, public, parameter :: CDK = selected_char_kind('DEFAULT') Processor dependent ‘DEFAULT’ character kind.\nThis is 1 byte for the Intel and Gfortran compilers. integer, public, parameter :: CK = selected_char_kind(json_fortran_string_kind) Default character kind used by JSON -Fortran.\nIf ISO 10646 (UCS4) support is available, use that,\notherwise, gracefully fall back on ‘DEFAULT’ characters.\nCurrently only gfortran >= 4.9.2 will correctly support\nUCS4 which is stored in 4 bytes.\n(and perhaps others). integer, public, parameter :: IK = int32 Default integer kind if not specified [4 bytes] integer, public, parameter :: LK = logical_kinds(min(3, size(logical_kinds))) Default logical kind.\nThis is 4 bytes for the Intel and Gfortran compilers\n(and perhaps others).\nThe declaration ensures a valid kind\nif the compiler doesn’t have a logical_kinds(3). integer, public, parameter :: RK = real64 Default real kind if not specified [8 bytes] character(kind=CDK, len=*), private, parameter :: json_fortran_string_kind = 'ISO_10646' String kind preprocessor macro.\ngfortran compiler AND UCS4 support requested:","tags":"","loc":"module/json_kinds.html"},{"title":"json_value_module – JSON-Fortran","text":"This module provides a low-level interface for manipulation of JSON data.\n The two public entities are json_value , and json_core .\n The json_file_module provides a higher-level interface to some\n of these routines. License JSON -Fortran is released under a BSD-style license.\n See the LICENSE file for details. Uses json_kinds json_string_utilities ieee_arithmetic json_parameters iso_fortran_env module~~json_value_module~~UsesGraph module~json_value_module json_value_module ieee_arithmetic ieee_arithmetic module~json_value_module->ieee_arithmetic iso_fortran_env iso_fortran_env module~json_value_module->iso_fortran_env module~json_kinds json_kinds module~json_value_module->module~json_kinds module~json_parameters json_parameters module~json_value_module->module~json_parameters module~json_string_utilities json_string_utilities module~json_value_module->module~json_string_utilities module~json_kinds->iso_fortran_env module~json_parameters->module~json_kinds module~json_string_utilities->ieee_arithmetic module~json_string_utilities->module~json_kinds module~json_string_utilities->module~json_parameters Help Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\ndescended from. Dashed arrows point from a module or program unit to \nmodules which it uses. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Used by module~~json_value_module~~UsedByGraph module~json_value_module json_value_module module~json_file_module json_file_module module~json_file_module->module~json_value_module module~json_module json_module module~json_module->module~json_value_module module~json_module->module~json_file_module Help Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\ndescended from. Dashed arrows point from a module or program unit to \nmodules which it uses. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Variables Type Visibility Attributes Name Initial character(kind=CDK, len=*), private, parameter :: access_spec = 'SEQUENTIAL' If Unicode is not enabled, then JSON files are opened using access=’STREAM’ and\nform=’UNFORMATTED’. This allows the file to\nbe read faster. character(kind=CDK, len=*), private, parameter :: form_spec = 'FORMATTED' If Unicode is not enabled, then JSON files are opened using access=’STREAM’ and\nform=’UNFORMATTED’. This allows the file to\nbe read faster. logical, private, parameter :: use_unformatted_stream = .false. If Unicode is not enabled, then JSON files are opened using access=’STREAM’ and\nform=’UNFORMATTED’. This allows the file to\nbe read faster. Interfaces public interface json_core Structure constructor to initialize a json_core object Example type ( json_file ) :: json_core json_core = json_core () private function initialize_json_core (verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) result(json_core_object) Author Jacob Williams Date 4/26/2016 Function constructor for a json_core .\n This is just a wrapper for json_initialize . Note initialize_json_core , json_initialize , initialize_json_core_in_file , and initialize_json_file all have a similar interface. Arguments Type Intent Optional Attributes Name logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Return Value type( json_core ) Abstract Interfaces abstract interface public subroutine json_array_callback_func(json, element, i, count) Array element callback function. Used by json_get_array Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: element integer(kind=IK), intent(in) :: i index integer(kind=IK), intent(in) :: count size of array abstract interface public subroutine json_traverse_callback_func(json, p, finished) Callback function used by json_traverse Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p logical(kind=LK), intent(out) :: finished set true to stop traversing Derived Types type, public :: json_core To access the core routines for manipulation\n of json_value pointer variables. This class allows\n for thread safe use of the module. Read more… Components Type Visibility Attributes Name Initial logical(kind=LK), private :: allow_comments = .true. if true, any comments will be ignored when\nparsing a file. The comment tokens are defined\nby the comment_char character variable. logical(kind=LK), private :: allow_duplicate_keys = .true. If False, then after parsing, if any\nduplicate keys are found, an error is\nthrown. A call to json_value_validate will also check for duplicates. If True\n[default] then no special checks are done logical(kind=LK), private :: allow_trailing_comma = .true. Allow a single trailing comma in arrays and objects. logical(kind=LK), private :: case_sensitive_keys = .true. if name and path comparisons\nare case sensitive. integer(kind=IK), private :: char_count = 0 character position in the current line character(kind=CK, len=:), private, allocatable :: chunk a chunk read from a stream file\nwhen use_unformatted_stream=True character(kind=CK, len=:), private, allocatable :: comment_char comment tokens when allow_comments is true.\nExamples: ‘ ! ’ or ‘ # ’.\nDefault is CK_'/!#' . logical(kind=LK), private :: compact_real = .true. to use the “compact” form of real\nnumbers for output logical(kind=LK), private :: compress_vectors = .false. If true, then arrays of integers,\nnulls, reals, & logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary] character(kind=CK, len=:), private, allocatable :: err_message the error message.\nif exception_thrown=False then\nthis variable is not allocated. logical(kind=LK), private :: escape_solidus = .false. If True then the solidus “ / ” is always escaped\n(“ \\/ ”) when serializing JSON .\nIf False [default], then it is not escaped.\nNote that this option does not affect parsing\n(both escaped and unescaped versions are still\nvalid in all cases). logical(kind=LK), private :: exception_thrown = .false. The error flag. Will be set to true\nwhen an error is thrown in the class.\nMany of the methods will check this\nand return immediately if it is true. integer, private :: filesize = 0 the file size when when use_unformatted_stream=True integer, private :: ichunk = 0 index in chunk for pop_char when use_unformatted_stream=True integer(kind=IK), private :: ipos = 1 for allocatable strings: next character to read logical(kind=LK), private :: is_verbose = .false. if true, all exceptions are\nimmediately printed to console. integer(kind=IK), private :: line_count = 1 lines read counter logical(kind=LK), private :: no_whitespace = .false. when printing a JSON string, don’t include\nnon-significant spaces or line breaks.\nIf true, the entire structure will be\nprinted on one line. logical(kind=LK), private :: non_normals_to_null = .false. How to serialize NaN, Infinity,\nand -Infinity real values: Read more… integer(kind=IK), private :: null_to_real_mode = 2_IK if strict_type_checking=false : Read more… integer(kind=IK), private :: path_mode = 1_IK How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), private :: path_separator = dot The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nNote: if path_mode/=1 then this is ignored. character(kind=CK, len=pushed_char_size), private :: pushed_char = CK_'' used when parsing\nlines in file integer(kind=IK), private :: pushed_index = 0 used when parsing lines in file character(kind=CDK, len=:), private, allocatable :: real_fmt the format string to use\nfor converting real numbers to strings.\nIt can be set in json_initialize ,\nand used in json_value_print If not set, then default_real_fmt is used instead. integer(kind=IK), private :: spaces_per_tab = 2 number of spaces for indenting logical(kind=LK), private :: stop_on_error = .false. if true, then the program is\nstopped immediately when an\nexception is raised. logical(kind=LK), private :: strict_integer_type_checking = .true. Read more… logical(kind=LK), private :: strict_type_checking = .false. if true, then no type conversions are done\nin the get routines if the actual variable\ntype is different from the return type (for\nexample, integer to real). logical(kind=LK), private :: trailing_spaces_significant = .false. for name and path comparisons, if trailing\nspace is to be considered significant. logical(kind=LK), private :: unescaped_strings = .true. If false, then the escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. logical(kind=LK), private :: use_quiet_nan = .true. if true [default], null_to_real_mode=2 and string_to_real will use ieee_quiet_nan for NaN values. If false, ieee_signaling_nan will be used. Constructor Structure constructor to initialize a json_core object Read more… private\n\n \n function initialize_json_core (verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) Function constructor for a json_core .\n This is just a wrapper for json_initialize . Read more… Type-Bound Procedures generic, public :: add => json_value_add_member , json_value_add_null , wrap_json_value_add_null , json_value_add_integer , wrap_json_value_add_integer , json_value_add_integer_vec , wrap_json_value_add_integer_vec , json_value_add_real32 , wrap_json_value_add_real32 , json_value_add_real32_vec , wrap_json_value_add_real32_vec , json_value_add_real , wrap_json_value_add_real , json_value_add_real_vec , wrap_json_value_add_real_vec , json_value_add_logical , wrap_json_value_add_logical , json_value_add_logical_vec , wrap_json_value_add_logical_vec , json_value_add_string , wrap_json_value_add_string , json_value_add_string_vec , wrap_json_value_add_string_vec Add objects to a linked list of json_value s. Read more… generic, public :: add => json_value_add_string_name_ascii , json_value_add_string_val_ascii , json_value_add_string_vec_name_ascii , json_value_add_string_vec_val_ascii generic, public :: add_by_path => json_add_member_by_path , wrap_json_add_member_by_path , json_add_integer_by_path , wrap_json_add_integer_by_path , json_add_real32_by_path , wrap_json_add_real32_by_path , json_add_real_by_path , wrap_json_add_real_by_path , json_add_logical_by_path , wrap_json_add_logical_by_path , json_add_string_by_path , wrap_json_add_string_by_path , json_add_integer_vec_by_path , wrap_json_add_integer_vec_by_path , json_add_real32_vec_by_path , wrap_json_add_real32_vec_by_path , json_add_real_vec_by_path , wrap_json_add_real_vec_by_path , json_add_logical_vec_by_path , wrap_json_add_logical_vec_by_path , json_add_string_vec_by_path , wrap_json_add_string_vec_by_path Add variables to a json_value linked list\n by specifying their paths. Read more… generic, public :: add_by_path => json_add_string_by_path_value_ascii , json_add_string_by_path_path_ascii , json_add_string_vec_by_path_value_ascii , json_add_string_vec_by_path_path_ascii procedure, private :: annotate_invalid_json procedure, public :: check_children_for_duplicate_keys => json_check_children_for_duplicate_keys ../../ Check a json_value object’s\nchildren for duplicate keys procedure, public :: check_for_duplicate_keys => json_check_all_for_duplicate_keys ../../ Check entire JSON structure\nfor duplicate keys (recursively) procedure, public :: check_for_errors => json_check_for_errors ../../ check for error and get error message procedure, public :: clear_exceptions => json_clear_exceptions ../../ clear exceptions procedure, public :: clone => json_clone ../../ clone a JSON structure (deep copy) procedure, private :: convert procedure, public :: count => json_count ../../ count the number of children generic, public :: create => json_create_by_path , wrap_json_create_by_path Create a json_value linked list using the\n path to the variables. Optionally return a\n pointer to the variable. Read more… generic, public :: create_array => json_value_create_array , wrap_json_value_create_array Allocate a json_value pointer and make it an array variable.\n The pointer should not already be allocated. Read more… generic, public :: create_double => json_value_create_real , wrap_json_value_create_real This is equivalent to create_real ,\nand is here only for backward compatibility. generic, public :: create_double => json_value_create_real32 , wrap_json_value_create_real32 generic, public :: create_integer => json_value_create_integer , wrap_json_value_create_integer Allocate a json_value pointer and make it an integer variable.\n The pointer should not already be allocated. Read more… generic, public :: create_logical => json_value_create_logical , wrap_json_value_create_logical Allocate a json_value pointer and make it a logical variable.\n The pointer should not already be allocated. Read more… generic, public :: create_null => json_value_create_null , wrap_json_value_create_null Allocate a json_value pointer and make it a null variable.\n The pointer should not already be allocated. Read more… generic, public :: create_object => json_value_create_object , wrap_json_value_create_object Allocate a json_value pointer and make it an object variable.\n The pointer should not already be allocated. Read more… generic, public :: create_real => json_value_create_real , wrap_json_value_create_real Allocate a json_value pointer and make it a real variable.\n The pointer should not already be allocated. Read more… generic, public :: create_real => json_value_create_real32 , wrap_json_value_create_real32 generic, public :: create_string => json_value_create_string , wrap_json_value_create_string Allocate a json_value pointer and make it a string variable.\n The pointer should not already be allocated. Read more… generic, public :: deserialize => json_parse_string , wrap_json_parse_string Parse the JSON string and populate the json_value tree. generic, public :: destroy => json_value_destroy , destroy_json_core Destructor routine for a json_value pointer.\n This must be called explicitly if it is no longer needed,\n before it goes out of scope. Otherwise, a memory leak will result. Read more… procedure, private :: destroy_json_core procedure, public :: failed => json_failed ../../ check for error generic, public :: get => json_get_by_path , wrap_json_get_by_path , json_get_integer , json_get_integer_by_path , wrap_json_get_integer_by_path , json_get_integer_vec , json_get_integer_vec_by_path , wrap_json_get_integer_vec_by_path , json_get_real32 , json_get_real32_by_path , wrap_json_get_real32_by_path , json_get_real32_vec , json_get_real32_vec_by_path , wrap_json_get_real32_vec_by_path , json_get_real , json_get_real_by_path , wrap_json_get_real_by_path , json_get_real_vec , json_get_real_vec_by_path , wrap_json_get_real_vec_by_path , json_get_logical , json_get_logical_by_path , wrap_json_get_logical_by_path , json_get_logical_vec , json_get_logical_vec_by_path , wrap_json_get_logical_vec_by_path , json_get_string , json_get_string_by_path , wrap_json_get_string_by_path , json_get_string_vec , json_get_string_vec_by_path , wrap_json_get_string_vec_by_path , json_get_alloc_string_vec , json_get_alloc_string_vec_by_path , wrap_json_get_alloc_string_vec_by_path , json_get_array , json_get_array_by_path , wrap_json_get_array_by_path Get data from a json_value linked list. Read more… generic, public :: get_child => json_value_get_child_by_index , json_value_get_child , json_value_get_child_by_name , wrap_json_value_get_child_by_name Return a child of a json_value structure. procedure, private, nopass :: get_current_line_from_file_sequential procedure, private :: get_current_line_from_file_stream procedure, public :: get_next => json_get_next ../../ get pointer to json_value next procedure, public :: get_parent => json_get_parent ../../ get pointer to json_value parent generic, public :: get_path => json_get_path , wrap_json_get_path ../../ get the path to a JSON variable in a structure: procedure, public :: get_previous => json_get_previous ../../ get pointer to json_value previous procedure, public :: get_tail => json_get_tail ../../ get pointer to json_value tail generic, public :: info => json_info , json_info_by_path , wrap_json_info_by_path get info about a json_value procedure, public :: initialize => json_initialize ../../ to initialize some parsing parameters generic, public :: insert_after => json_value_insert_after , json_value_insert_after_child_by_index ../../ insert a new element after an existing one,\nupdating the JSON structure accordingly procedure, public :: is_child_of => json_value_is_child_of Check if a json_value is a\ndescendant of another. procedure, private :: is_vector => json_is_vector procedure, private :: json_add_integer_by_path procedure, private :: json_add_integer_vec_by_path procedure, private :: json_add_logical_by_path procedure, private :: json_add_logical_vec_by_path procedure, private :: json_add_member_by_path procedure, private :: json_add_real32_by_path procedure, private :: json_add_real32_vec_by_path procedure, private :: json_add_real_by_path procedure, private :: json_add_real_vec_by_path procedure, private :: json_add_string_by_path procedure, private :: json_add_string_by_path_path_ascii procedure, private :: json_add_string_by_path_value_ascii procedure, private :: json_add_string_vec_by_path procedure, private :: json_add_string_vec_by_path_path_ascii procedure, private :: json_add_string_vec_by_path_value_ascii procedure, private :: json_create_by_path procedure, private :: json_get_alloc_string_vec procedure, private :: json_get_alloc_string_vec_by_path procedure, private :: json_get_array procedure, private :: json_get_array_by_path procedure, private :: json_get_by_path procedure, private :: json_get_by_path_default procedure, private :: json_get_by_path_jsonpath_bracket procedure, private :: json_get_by_path_rfc6901 procedure, private :: json_get_integer procedure, private :: json_get_integer_by_path procedure, private :: json_get_integer_vec procedure, private :: json_get_integer_vec_by_path procedure, private :: json_get_logical procedure, private :: json_get_logical_by_path procedure, private :: json_get_logical_vec procedure, private :: json_get_logical_vec_by_path procedure, private :: json_get_path procedure, private :: json_get_real procedure, private :: json_get_real32 procedure, private :: json_get_real32_by_path procedure, private :: json_get_real32_vec procedure, private :: json_get_real32_vec_by_path procedure, private :: json_get_real_by_path procedure, private :: json_get_real_vec procedure, private :: json_get_real_vec_by_path procedure, private :: json_get_string procedure, private :: json_get_string_by_path procedure, private :: json_get_string_vec procedure, private :: json_get_string_vec_by_path procedure, private :: json_info procedure, private :: json_info_by_path procedure, private :: json_matrix_info procedure, private :: json_matrix_info_by_path procedure, private :: json_parse_file procedure, private :: json_parse_string procedure, private :: json_print_to_console procedure, private :: json_print_to_filename procedure, private :: json_print_to_unit procedure, private :: json_rename_by_path procedure, private :: json_rename_by_path_name_ascii procedure, private :: json_rename_by_path_path_ascii procedure, private :: json_string_info procedure, private :: json_throw_exception procedure, private :: json_update_integer procedure, private :: json_update_logical procedure, private :: json_update_real procedure, private :: json_update_real32 procedure, private :: json_update_string procedure, private :: json_update_string_name_ascii procedure, private :: json_update_string_val_ascii procedure, private :: json_valid_path procedure, private :: json_value_add_integer procedure, private :: json_value_add_integer_vec procedure, private :: json_value_add_logical procedure, private :: json_value_add_logical_vec procedure, private :: json_value_add_member procedure, private :: json_value_add_null procedure, private :: json_value_add_real procedure, private :: json_value_add_real32 procedure, private :: json_value_add_real32_vec procedure, private :: json_value_add_real_vec procedure, private :: json_value_add_string procedure, private :: json_value_add_string_name_ascii procedure, private :: json_value_add_string_val_ascii procedure, private :: json_value_add_string_vec procedure, private :: json_value_add_string_vec_name_ascii procedure, private :: json_value_add_string_vec_val_ascii procedure, private, nopass :: json_value_clone_func procedure, private :: json_value_create_array procedure, private :: json_value_create_integer procedure, private :: json_value_create_logical procedure, private :: json_value_create_null procedure, private :: json_value_create_object procedure, private :: json_value_create_real procedure, private :: json_value_create_real32 procedure, private :: json_value_create_string procedure, private :: json_value_destroy procedure, private :: json_value_get_child procedure, private :: json_value_get_child_by_index procedure, private :: json_value_get_child_by_name procedure, private :: json_value_insert_after procedure, private :: json_value_insert_after_child_by_index procedure, private :: json_value_print procedure, private :: json_value_remove_if_present procedure, private :: json_value_rename generic, public :: load => json_parse_file Parse the JSON file and populate the json_value tree. generic, public :: matrix_info => json_matrix_info , json_matrix_info_by_path , wrap_json_matrix_info_by_path get matrix info about a json_value procedure, private :: name_equal procedure, private :: name_strings_equal generic, public :: parse => json_parse_file , json_parse_string , wrap_json_parse_string ../../ Same as load and deserialize but only here for backward compatibility. procedure, private :: parse_array procedure, private :: parse_end => json_parse_end procedure, private :: parse_for_chars procedure, private :: parse_number procedure, private :: parse_object procedure, private :: parse_string procedure, private :: parse_value procedure, private :: pop_char procedure, private :: prepare_parser => json_prepare_parser generic, public :: print => json_print_to_console , json_print_to_unit , json_print_to_filename Print the json_value to an output unit or file. Read more… procedure, public :: print_error_message => json_print_error_message ../../ simply routine to print error\nmessages procedure, public :: print_to_string => json_value_to_string ../../ The same as serialize , but only here for backward compatibility procedure, private :: push_char procedure, public :: remove => json_value_remove Remove a json_value from a\nlinked-list structure. generic, public :: remove_if_present => json_value_remove_if_present , wrap_json_value_remove_if_present ../../ If the child variable is present, then remove it. generic, public :: rename => json_value_rename , wrap_json_value_rename , json_rename_by_path , wrap_json_rename_by_path Rename a json_value variable. generic, public :: rename => json_rename_by_path_name_ascii , json_rename_by_path_path_ascii procedure, public :: replace => json_value_replace Replace a json_value in a\nlinked-list structure. procedure, public :: reverse => json_value_reverse ../../ Reverse the order of the children\nof an array of object. procedure, public :: serialize => json_value_to_string Print the json_value structure to an allocatable string generic, public :: string_info => json_string_info get string info about a json_value procedure, private :: string_to_dble procedure, private :: string_to_int procedure, public :: swap => json_value_swap Swap two json_value pointers\nin a structure (or two different\nstructures). generic, public :: throw_exception => json_throw_exception , wrap_json_throw_exception ../../ Throw an exception. procedure, private :: to_array procedure, private :: to_integer procedure, private :: to_logical procedure, private :: to_null procedure, private :: to_object procedure, private :: to_real procedure, private :: to_string procedure, public :: traverse => json_traverse ../../ to traverse all elements of a JSON structure generic, public :: update => json_update_logical , wrap_json_update_logical , json_update_real32 , wrap_json_update_real32 , json_update_real , wrap_json_update_real , json_update_integer , wrap_json_update_integer , json_update_string , wrap_json_update_string These are like the add methods, except if a variable with the\n same path is already present, then its value is simply updated.\n Note that currently, these only work for scalar variables.\n These routines can also change the variable’s type (but an error will be\n thrown if the existing variable is not a scalar). Read more… generic, public :: update => json_update_string_name_ascii , json_update_string_val_ascii generic, public :: valid_path => json_valid_path , wrap_json_valid_path ../../ verify if a path is valid\n(i.e., a variable with this path exists in the file). procedure, public :: validate => json_value_validate Check that a json_value linked\nlist is valid (i.e., is properly\nconstructed). This may be useful\nif it has been constructed externally. procedure, private :: wrap_json_add_integer_by_path procedure, private :: wrap_json_add_integer_vec_by_path procedure, private :: wrap_json_add_logical_by_path procedure, private :: wrap_json_add_logical_vec_by_path procedure, private :: wrap_json_add_member_by_path procedure, private :: wrap_json_add_real32_by_path procedure, private :: wrap_json_add_real32_vec_by_path procedure, private :: wrap_json_add_real_by_path procedure, private :: wrap_json_add_real_vec_by_path procedure, private :: wrap_json_add_string_by_path procedure, private :: wrap_json_add_string_vec_by_path procedure, private :: wrap_json_create_by_path procedure, private :: wrap_json_get_alloc_string_vec_by_path procedure, private :: wrap_json_get_array_by_path procedure, private :: wrap_json_get_by_path procedure, private :: wrap_json_get_integer_by_path procedure, private :: wrap_json_get_integer_vec_by_path procedure, private :: wrap_json_get_logical_by_path procedure, private :: wrap_json_get_logical_vec_by_path procedure, private :: wrap_json_get_path procedure, private :: wrap_json_get_real32_by_path procedure, private :: wrap_json_get_real32_vec_by_path procedure, private :: wrap_json_get_real_by_path procedure, private :: wrap_json_get_real_vec_by_path procedure, private :: wrap_json_get_string_by_path procedure, private :: wrap_json_get_string_vec_by_path procedure, private :: wrap_json_info_by_path procedure, private :: wrap_json_matrix_info_by_path procedure, private :: wrap_json_parse_string procedure, private :: wrap_json_rename_by_path procedure, private :: wrap_json_throw_exception procedure, private :: wrap_json_update_integer procedure, private :: wrap_json_update_logical procedure, private :: wrap_json_update_real procedure, private :: wrap_json_update_real32 procedure, private :: wrap_json_update_string procedure, private :: wrap_json_valid_path procedure, private :: wrap_json_value_add_integer procedure, private :: wrap_json_value_add_integer_vec procedure, private :: wrap_json_value_add_logical procedure, private :: wrap_json_value_add_logical_vec procedure, private :: wrap_json_value_add_null procedure, private :: wrap_json_value_add_real procedure, private :: wrap_json_value_add_real32 procedure, private :: wrap_json_value_add_real32_vec procedure, private :: wrap_json_value_add_real_vec procedure, private :: wrap_json_value_add_string procedure, private :: wrap_json_value_add_string_vec procedure, private :: wrap_json_value_create_array procedure, private :: wrap_json_value_create_integer procedure, private :: wrap_json_value_create_logical procedure, private :: wrap_json_value_create_null procedure, private :: wrap_json_value_create_object procedure, private :: wrap_json_value_create_real procedure, private :: wrap_json_value_create_real32 procedure, private :: wrap_json_value_create_string procedure, private :: wrap_json_value_get_child_by_name procedure, private :: wrap_json_value_remove_if_present procedure, private :: wrap_json_value_rename type, public, sequence :: json_value Type used to construct the linked-list JSON structure.\n Normally, this should always be a pointer variable.\n This type should only be used by an instance of json_core . Read more… Components Type Visibility Attributes Name Initial type( json_value ), private, pointer :: children => null() first child item of this real(kind=RK), private, allocatable :: dbl_value real data for this variable integer(kind=IK), private, allocatable :: int_value integer data for this variable logical(kind=LK), private, allocatable :: log_value logical data for this variable integer(kind=IK), private :: n_children = 0 number of children character(kind=CK, len=:), private, allocatable :: name variable name (unescaped) type( json_value ), private, pointer :: next => null() next item in the list type( json_value ), private, pointer :: parent => null() parent item of this type( json_value ), private, pointer :: previous => null() previous item in the list character(kind=CK, len=:), private, allocatable :: str_value string data for this variable\n(unescaped) type( json_value ), private, pointer :: tail => null() last child item of this integer(kind=IK), private :: var_type = json_unknown variable type Functions private function initialize_json_core (verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) result(json_core_object) Author Jacob Williams Date 4/26/2016 Function constructor for a json_core .\n This is just a wrapper for json_initialize . Read more… Arguments Type Intent Optional Attributes Name logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) Return Value type( json_core ) private function json_count (json, p) result(count) Count the number of children in the object or array. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p this should normally be a json_object or a json_array . For any other variable type this will return 0. Return Value integer(kind=IK) number of children in p . private pure function json_failed (json) result(failed) Author Jacob Williams Date 12/5/2013 Logical function to indicate if an exception has been thrown in a json_core . Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(in) :: json Return Value logical(kind=LK) will be true if an exception\nhas been thrown. private function json_is_vector (json, p) result(is_vector) Returns true if all the children are the same type (and a scalar).\nNote that integers and reals are considered the same type for this purpose.\nThis routine is used for the compress_vectors option. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p Return Value logical(kind=LK) if all elements of a vector\nare scalars of the same type private function json_valid_path (json, p, path) result(found) Returns true if the path is present in the p JSON structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable Return Value logical(kind=LK) true if it was found private function json_value_is_child_of (json, p1, p2) result(is_child_of) Author Jacob Williams Date 4/28/2016 Returns True if p2 is a descendant of p1 (i.e, a child, or a child of child, etc.) Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p1 type( json_value ), pointer :: p2 Return Value logical(kind=LK) private function name_equal (json, p, name) result(is_equal) Author Jacob Williams Returns true if name is equal to p%name , using the specified\n settings for case sensitivity and trailing whitespace. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in) :: p the json object character(kind=CK, len=*), intent(in) :: name the name to check for Return Value logical(kind=LK) true if the string are\nlexically equal private function name_strings_equal (json, name1, name2) result(is_equal) Author Jacob Williams Date 8/25/2017 Returns true if the name strings name1 is equal to name2 , using\nthe specified settings for case sensitivity and trailing whitespace. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CK, len=*), intent(in) :: name1 the name to check character(kind=CK, len=*), intent(in) :: name2 the name to check Return Value logical(kind=LK) true if the string are\nlexically equal private function string_to_dble (json, str) result(rval) Convert a string into a real(RK) value. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CK, len=*), intent(in) :: str a string Return Value real(kind=RK) str converted to a real(RK) private function string_to_int (json, str) result(ival) Convert a string into an integer. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CK, len=*), intent(in) :: str a string Return Value integer(kind=IK) str converted to an integer private function wrap_json_valid_path (json, p, path) result(found) Alternate version of json_valid_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list character(kind=CDK, len=*), intent(in) :: path path to the variable Return Value logical(kind=LK) true if it was found Subroutines private subroutine annotate_invalid_json (json, iunit, str) Generate a warning message if there was an error parsing a JSON file or string. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: iunit file unit number character(kind=CK, len=*), intent(in) :: str string with JSON data private subroutine convert (json, p, var_type) Convert an existing JSON variable p to a different variable type .\n The existing variable (and its children) is destroyed. It is replaced\n in the structure by a new variable of type var_type (which can be a json_null , json_object or json_array ). Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p the variable to convert integer(kind=IK), intent(in) :: var_type the variable type to convert p to private subroutine destroy_json_core (me) Author Jacob Williams Date 4/17/2016 Destructor for the json_core type. Arguments Type Intent Optional Attributes Name class( json_core ), intent(out) :: me private pure subroutine destroy_json_data (d) Author Jacob Williams Destroy the data within a json_value , and reset type to json_unknown . Arguments Type Intent Optional Attributes Name type( json_value ), intent(inout) :: d private subroutine flag_not_found (found) If found is present, set it it false. Arguments Type Intent Optional Attributes Name logical(kind=LK), intent(out), optional :: found private subroutine get_current_line_from_file_sequential (iunit, line) Author Jacob Williams Rewind the file to the beginning of the current line, and return this line.\nThe file is assumed to be opened.\nThis is the SEQUENTIAL version (see also get_current_line_from_file_stream ). Arguments Type Intent Optional Attributes Name integer(kind=IK), intent(in) :: iunit file unit number character(kind=CK, len=:), intent(out), allocatable :: line current line private subroutine get_current_line_from_file_stream (json, iunit, line) Author Jacob Williams Rewind the file to the beginning of the current line, and return this line.\nThe file is assumed to be opened.\nThis is the STREAM version (see also get_current_line_from_file_sequential ). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: iunit file unit number character(kind=CK, len=:), intent(out), allocatable :: line current line private subroutine json_add_integer_by_path (json, me, path, value, found, was_created) Add an integer value to a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_integer_vec_by_path (json, me, path, value, found, was_created) Wrapper to json_add_integer_by_path for adding an integer vector by path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_logical_by_path (json, me, path, value, found, was_created) Add a logical value to a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_logical_vec_by_path (json, me, path, value, found, was_created) Wrapper to json_add_logical_by_path for adding a logical vector by path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_member_by_path (json, me, path, p, found, was_created) Add a new member ( json_value pointer) to a JSON structure, given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(in), pointer :: p the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_real32_by_path (json, me, path, value, found, was_created) Alternate version of json_add_real_by_path where value=real32. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_real32_vec_by_path (json, me, path, value, found, was_created) Wrapper to json_add_real_by_path for adding a real vector by path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_real_by_path (json, me, path, value, found, was_created) Add an real value to a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_real_vec_by_path (json, me, path, value, found, was_created) Wrapper to json_add_real_by_path for adding a real vector by path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine json_add_string_by_path (json, me, path, value, found, was_created, trim_str, adjustl_str) Add a string value to a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element private subroutine json_add_string_by_path_path_ascii (json, me, path, value, found, was_created, trim_str, adjustl_str) Wrapper for json_add_string_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element private subroutine json_add_string_by_path_value_ascii (json, me, path, value, found, was_created, trim_str, adjustl_str) Wrapper for json_add_string_by_path where “value” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element private subroutine json_add_string_vec_by_path (json, me, path, value, found, was_created, ilen, trim_str, adjustl_str) Wrapper to json_add_string_by_path for adding a string vector by path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element private subroutine json_add_string_vec_by_path_path_ascii (json, me, path, value, found, was_created, ilen, trim_str, adjustl_str) Wrapper for json_add_string_vec_by_path where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CK, len=*), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element private subroutine json_add_string_vec_by_path_value_ascii (json, me, path, value, found, was_created, ilen, trim_str, adjustl_str) Wrapper for json_add_string_vec_by_path where “value” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element private subroutine json_check_all_for_duplicate_keys (json, p, has_duplicate, name, path) Author Jacob Williams Date 8/25/2017 Checks a JSON structure for duplicate child names.\n This one recursively traverses the entire structure\n (calling json_check_children_for_duplicate_keys recursively for each element). Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p the object to search. If p is\nnot a json_object , then has_duplicate will be false. logical(kind=LK), intent(out) :: has_duplicate true if there is at least\none duplicate name key anywhere\nin the structure. character(kind=CK, len=:), intent(out), optional, allocatable :: name the duplicate name\n(unallocated if no\nduplicates were found) character(kind=CK, len=:), intent(out), optional, allocatable :: path the full path to the\nduplicate name\n(unallocated if no\nduplicate was found) private subroutine json_check_children_for_duplicate_keys (json, p, has_duplicate, name, path) Author Jacob Williams Date 8/25/2017 Checks a JSON object for duplicate child names. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p the object to search. If p is\nnot a json_object , then has_duplicate will be false. logical(kind=LK), intent(out) :: has_duplicate true if there is at least\ntwo children have duplicate name values. character(kind=CK, len=:), intent(out), optional, allocatable :: name the duplicate name\n(unallocated if no\nduplicate was found) character(kind=CK, len=:), intent(out), optional, allocatable :: path the full path to the\nduplicate name\n(unallocated if no\nduplicate was found) private subroutine json_check_for_errors (json, status_ok, error_msg) Author Jacob Williams Date 12/4/2013 Retrieve error code from the json_core .\n This should be called after parse to check for errors.\n If an error is thrown, before using the class again, json_initialize should be called to clean up before it is used again. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(in) :: json logical(kind=LK), intent(out), optional :: status_ok true if there were no errors character(kind=CK, len=:), intent(out), optional, allocatable :: error_msg the error message.\n(not allocated if\nthere were no errors) private pure subroutine json_clear_exceptions (json) Author Jacob Williams Date 12/4/2013 Clear exceptions in the json_core . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json private subroutine json_clone (json, from, to) Author Jacob Williams Date 10/31/2015 Create a deep copy of a json_value linked-list structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: from this is the structure to clone type( json_value ), pointer :: to the clone is put here\n(it must not already be associated) private subroutine json_create_by_path (json, me, path, p, found, was_created) Returns the json_value pointer given the path string,\n If necessary, by creating the variables as needed. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable type( json_value ), intent(out), optional, pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if there were no errors\n(variable found or created) logical(kind=LK), intent(out), optional :: was_created true if it was actually created\n(as opposed to already being there) private subroutine json_get_alloc_string_vec (json, me, vec, ilen) Author Jacob Williams Date 12/16/2016 Get a string vector from a json_value . This is an alternate\n version of json_get_string_vec . This one returns an allocatable\n length character (where the string length is the maximum length of\n any element in the array). It also returns an integer array of the\n actual sizes of the strings in the JSON structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array private subroutine json_get_alloc_string_vec_by_path (json, me, path, vec, ilen, found, default, default_ilen) Alternate version of json_get_alloc_string_vec where input is the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default integer(kind=IK), intent(in), optional, dimension(:) :: default_ilen the actual\nlength of default private recursive subroutine json_get_array (json, me, array_callback) This routine calls the user-supplied json_array_callback_func subroutine for each element in the array. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me procedure( json_array_callback_func ) :: array_callback private recursive subroutine json_get_array_by_path (json, me, path, array_callback, found) This routine calls the user-supplied array_callback subroutine\nfor each element in the array (specified by the path). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path procedure( json_array_callback_func ) :: array_callback logical(kind=LK), intent(out), optional :: found private subroutine json_get_by_path (json, me, path, p, found) Returns the json_value pointer given the path string. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable type( json_value ), intent(out), pointer :: p pointer to the variable\nspecified by path logical(kind=LK), intent(out), optional :: found true if it was found private subroutine json_get_by_path_default (json, me, path, p, found, create_it, was_created) Returns the json_value pointer given the path string. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable type( json_value ), intent(out), pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if it was found logical(kind=LK), intent(in), optional :: create_it if a variable is not present\nin the path, then it is created.\nthe leaf node is returned as\na null json type and can be\nchanged by the caller. logical(kind=LK), intent(out), optional :: was_created if create_it is true, this\nwill be true if the variable\nwas actually created. Otherwise\nit will be false. private subroutine json_get_by_path_jsonpath_bracket (json, me, path, p, found, create_it, was_created) Author Jacob Williams Date 9/2/2017 Returns the json_value pointer given the path string,\n using the “ JSON Pointer” path specification defined by the\n JSONPath “bracket-notation”. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable\n(using JSONPath\n“bracket-notation”) type( json_value ), intent(out), pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if it was found logical(kind=LK), intent(in), optional :: create_it if a variable is not present\nin the path, then it is created.\nthe leaf node is returned as\na null json type and can be\nchanged by the caller. logical(kind=LK), intent(out), optional :: was_created if create_it is true, this\nwill be true if the variable\nwas actually created. Otherwise\nit will be false. private subroutine json_get_by_path_rfc6901 (json, me, path, p, found) Author Jacob Williams Date 2/4/2017 Returns the json_value pointer given the path string,\n using the “ JSON Pointer” path specification defined by RFC 6901. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable\n(an RFC 6901 “ JSON Pointer”) type( json_value ), intent(out), pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if it was found private subroutine json_get_integer (json, me, value) Get an integer value from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me integer(kind=IK), intent(out) :: value the integer value private subroutine json_get_integer_by_path (json, me, path, value, found, default) Get an integer value from a json_value , given the path string. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path integer(kind=IK), intent(out) :: value logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(in), optional :: default default value if not found private subroutine json_get_integer_vec (json, me, vec) Author Jacob Williams Date 5/14/2014 Get an integer vector from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me integer(kind=IK), intent(out), dimension(:), allocatable :: vec private subroutine json_get_integer_vec_by_path (json, me, path, vec, found, default) Get an integer vector from a json_value , given the path string. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path integer(kind=IK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(in), optional, dimension(:) :: default default value if not found private subroutine json_get_logical (json, me, value) Get a logical value from a json_value . Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me logical(kind=LK), intent(out) :: value private subroutine json_get_logical_by_path (json, me, path, value, found, default) Get a logical value from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path logical(kind=LK), intent(out) :: value logical(kind=LK), intent(out), optional :: found logical(kind=LK), intent(in), optional :: default default value if not found private subroutine json_get_logical_vec (json, me, vec) Author Jacob Williams Date 5/14/2014 Get a logical vector from json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me logical(kind=LK), intent(out), dimension(:), allocatable :: vec private subroutine json_get_logical_vec_by_path (json, me, path, vec, found, default) Get a logical vector from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path logical(kind=LK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found logical(kind=LK), intent(in), optional, dimension(:) :: default private subroutine json_get_next (json, p, next) Author Jacob Williams Date 10/31/2015 Returns a pointer to the next of a json_value .\nIf there is no next, then a null() pointer is returned. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p JSON object type( json_value ), intent(out), pointer :: next pointer to next private subroutine json_get_parent (json, p, parent) Author Jacob Williams Date 10/16/2015 Returns a pointer to the parent of a json_value .\nIf there is no parent, then a null() pointer is returned. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p JSON object type( json_value ), intent(out), pointer :: parent pointer to parent private subroutine json_get_path (json, p, path, found, use_alt_array_tokens, path_sep) Returns the path to a JSON object that is part\n of a linked list structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list object character(kind=CK, len=:), intent(out), allocatable :: path path to the variable logical(kind=LK), intent(out), optional :: found true if there were no problems logical(kind=LK), intent(in), optional :: use_alt_array_tokens if true, then ‘()’ are used for array elements\notherwise, ‘[]’ are used [default]\n(only used if path_mode=1 ) character(kind=CK, len=1), intent(in), optional :: path_sep character to use for path separator\n(otherwise use json%path_separator )\n(only used if path_mode=1 ) private subroutine json_get_previous (json, p, previous) Author Jacob Williams Date 10/31/2015 Returns a pointer to the previous of a json_value .\nIf there is no previous, then a null() pointer is returned. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p JSON object type( json_value ), intent(out), pointer :: previous pointer to previous private subroutine json_get_real (json, me, value) Get a real value from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me real(kind=RK), intent(out) :: value private subroutine json_get_real32 (json, me, value) Alternate version of json_get_real where value=real32. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me real(kind=real32), intent(out) :: value private subroutine json_get_real32_by_path (json, me, path, value, found, default) Alternate version of json_get_real_by_path where value=real32. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CK, len=*), intent(in) :: path real(kind=real32), intent(out) :: value logical(kind=LK), intent(out), optional :: found real(kind=real32), intent(in), optional :: default default value if not found private subroutine json_get_real32_vec (json, me, vec) Alternate version of json_get_real_vec where vec is real32 . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me real(kind=real32), intent(out), dimension(:), allocatable :: vec private subroutine json_get_real32_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_real_vec_by_path where vec is real32 . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path real(kind=real32), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found real(kind=real32), intent(in), optional, dimension(:) :: default default value if not found private subroutine json_get_real_by_path (json, me, path, value, found, default) Get a real value from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CK, len=*), intent(in) :: path real(kind=RK), intent(out) :: value logical(kind=LK), intent(out), optional :: found real(kind=RK), intent(in), optional :: default default value if not found private subroutine json_get_real_vec (json, me, vec) Author Jacob Williams Date 5/14/2014 Get a real vector from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me real(kind=RK), intent(out), dimension(:), allocatable :: vec private subroutine json_get_real_vec_by_path (json, me, path, vec, found, default) Get a real vector from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path real(kind=RK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found real(kind=RK), intent(in), optional, dimension(:) :: default default value if not found private subroutine json_get_string (json, me, value) Get a character string from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=:), intent(out), allocatable :: value private subroutine json_get_string_by_path (json, me, path, value, found, default) Get a character string from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path character(kind=CK, len=:), intent(out), allocatable :: value logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional :: default private subroutine json_get_string_vec (json, me, vec) Author Jacob Williams Date 5/14/2014 Get a string vector from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec private subroutine json_get_string_vec_by_path (json, me, path, vec, found, default) Get a string vector from a json_value , given the path. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default private subroutine json_get_tail (json, p, tail) Author Jacob Williams Date 10/31/2015 Returns a pointer to the tail of a json_value (the last child of an array of object).\nIf there is no tail, then a null() pointer is returned. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p JSON object type( json_value ), intent(out), pointer :: tail pointer to tail private subroutine json_info (json, p, var_type, n_children, name) Author Jacob Williams Date 2/13/2014 Returns information about a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(out), optional :: var_type variable type integer(kind=IK), intent(out), optional :: n_children number of children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name private subroutine json_info_by_path (json, p, path, found, var_type, n_children, name) Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list character(kind=CK, len=*), intent(in) :: path path to the variable logical(kind=LK), intent(out), optional :: found true if it was found integer(kind=IK), intent(out), optional :: var_type variable type integer(kind=IK), intent(out), optional :: n_children number of children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name private subroutine json_initialize (me, verbose, compact_reals, print_signs, real_format, spaces_per_tab, strict_type_checking, trailing_spaces_significant, case_sensitive_keys, no_whitespace, unescape_strings, comment_char, path_mode, path_separator, compress_vectors, allow_duplicate_keys, escape_solidus, stop_on_error, null_to_real_mode, non_normal_mode, use_quiet_nan, strict_integer_type_checking, allow_trailing_comma) Author Jacob Williams Date 12/4/2013 Initialize the json_core instance. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: me logical(kind=LK), intent(in), optional :: verbose mainly useful for debugging (default is false) logical(kind=LK), intent(in), optional :: compact_reals to compact the real number strings for output (default is true) logical(kind=LK), intent(in), optional :: print_signs always print numeric sign (default is false) character(kind=CDK, len=*), intent(in), optional :: real_format Real number format: ‘E’ [default], ‘*’, ‘G’, ‘EN’, or ‘ES’ integer(kind=IK), intent(in), optional :: spaces_per_tab number of spaces per tab for indenting (default is 2) logical(kind=LK), intent(in), optional :: strict_type_checking if true, no integer, double, or logical type\nconversions are done for the get routines\n(default is false). logical(kind=LK), intent(in), optional :: trailing_spaces_significant for name and path comparisons, is trailing\nspace to be considered significant.\n(default is false) logical(kind=LK), intent(in), optional :: case_sensitive_keys for name and path comparisons, are they\ncase sensitive. (default is true) logical(kind=LK), intent(in), optional :: no_whitespace if true, printing the JSON structure is\ndone without adding any non-significant\nspaces or linebreaks (default is false) logical(kind=LK), intent(in), optional :: unescape_strings If false, then the raw escaped\nstring is returned from json_get_string and similar routines. If true [default],\nthen the string is returned unescaped. character(kind=CK, len=*), intent(in), optional :: comment_char If present, these characters are used\nto denote comments in the JSON file,\nwhich will be ignored if present.\nExample: ! , # , or /!# . Setting this\nto a blank string disables the\nignoring of comments. (Default is /!# ). integer(kind=IK), intent(in), optional :: path_mode How the path strings are interpreted in the get_by_path routines: Read more… character(kind=CK, len=1), intent(in), optional :: path_separator The path separator to use\nin the “default” mode for\nthe paths in the various get_by_path routines.\nExample: . [default] or % .\nNote: if path_mode/=1 then this is ignored. logical(kind=LK), intent(in), optional :: compress_vectors If true, then arrays of integers,\nnulls, doubles, and logicals are\nprinted all on one line.\n[Note: no_whitespace will\noverride this option if necessary].\n(Default is False). logical(kind=LK), intent(in), optional :: allow_duplicate_keys Read more… logical(kind=LK), intent(in), optional :: escape_solidus Note that this option does not affect parsing\n(both escaped and unescaped are still valid in\nall cases). Read more… logical(kind=LK), intent(in), optional :: stop_on_error If an exception is raised, then immediately quit.\n(Default is False). integer(kind=IK), intent(in), optional :: null_to_real_mode if strict_type_checking=false : Read more… integer(kind=IK), intent(in), optional :: non_normal_mode How to serialize NaN, Infinity, and\n-Infinity real values: Read more… logical(kind=LK), intent(in), optional :: use_quiet_nan Read more… logical(kind=LK), intent(in), optional :: strict_integer_type_checking (default is true) Read more… logical(kind=LK), intent(in), optional :: allow_trailing_comma Allow a single trailing comma in arrays and objects.\n(default is true) private subroutine json_matrix_info (json, p, is_matrix, var_type, n_sets, set_size, name) Author Jacob Williams Date 10/16/2015 Alternate version of json_info that returns matrix\n information about a json_value . Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a JSON linked list logical(kind=LK), intent(out) :: is_matrix true if it is a valid matrix integer(kind=IK), intent(out), optional :: var_type variable type of data in the matrix\n(if all elements have the same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name private subroutine json_matrix_info_by_path (json, p, path, is_matrix, found, var_type, n_sets, set_size, name) Returns matrix information about a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a JSON linked list character(kind=CK, 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\nthe matrix (if all elements have\nthe same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name private subroutine json_parse_end (json, unit, str) An error checking routine to call after a file (or string) has been parsed.\nIt will throw an exception if there are any other non-whitespace characters\nin the file. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number character(kind=CK, len=*), intent(in) :: str string containing JSON data (only used if unit=0 ) private subroutine json_parse_file (json, file, p, unit) Parse the JSON file and populate the json_value tree. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CDK, len=*), intent(in) :: file JSON file name type( json_value ), pointer :: p output structure integer(kind=IK), intent(in), optional :: unit file unit number (/= 0) private subroutine json_parse_string (json, p, str) Parse the JSON string and populate the json_value tree. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p output structure character(kind=CK, len=*), intent(in) :: str string with JSON data private subroutine json_prepare_parser (json) Internal routine to be called before parsing JSON .\nCurrently, all this does it allocate the comment_char if none was specified. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json private subroutine json_print_error_message (json, io_unit) Author Jacob Williams Print any error message, and then clear the exceptions. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer, intent(in), optional :: io_unit unit number for\nprinting error message private subroutine json_print_to_console (json, p) Print the json_value structure to the console ( output_unit ). Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p private subroutine json_print_to_filename (json, p, filename) Author Jacob Williams Date 12/23/2014 Print the json_value structure to a file. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CDK, len=*), intent(in) :: filename the filename to print to\n(should not already be open) private subroutine json_print_to_unit (json, p, iunit) Author Jacob Williams Date 6/20/2014 Print the json_value structure to a file. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p integer(kind=IK), intent(in) :: iunit the file unit (the file must\nalready have been opened, can’t be -1). private subroutine json_rename_by_path (json, me, path, name, found) Rename a json_value , given the path. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path path to the variable to rename character(kind=CK, len=*), intent(in) :: name the new name logical(kind=LK), intent(out), optional :: found if there were no errors private subroutine json_rename_by_path_name_ascii (json, me, path, name, found) Alternate version of json_rename_by_path , where “name” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CK, len=*), intent(in) :: path character(kind=CDK, len=*), intent(in) :: name logical(kind=LK), intent(out), optional :: found private subroutine json_rename_by_path_path_ascii (json, me, path, name, found) Alternate version of json_rename_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=*), intent(in) :: name logical(kind=LK), intent(out), optional :: found private subroutine json_string_info (json, p, ilen, max_str_len, found) Author Jacob Williams Date 12/18/2016 Returns information about character strings returned from a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(out), optional, dimension(:), allocatable :: ilen if p is an array, this\nis the actual length\nof each character\nstring in the array.\nif not an array, this\nis returned unallocated. integer(kind=IK), intent(out), optional :: max_str_len The maximum length required to\nhold the string representation returned\nby a call to a get routine. If a scalar,\nthis is just the length of the scalar. If\na vector, this is the maximum length of\nany element. logical(kind=LK), intent(out), optional :: found true if there were no errors.\nif not present, an error will\nthrow an exception private subroutine json_throw_exception (json, msg, found) Author Jacob Williams Date 12/4/2013 Throw an exception in the json_core .\n This routine sets the error flag, and prevents any subsequent routine\n from doing anything, until json_clear_exceptions is called. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CK, len=*), intent(in) :: msg the error message logical(kind=LK), intent(inout), optional :: found if the caller is handling the\nexception with an optimal return\nargument. If so, json%stop_on_error is ignored. private subroutine json_traverse (json, p, traverse_callback) Author Jacob Williams Date 4/28/2016 Traverse a JSON structure.\nThis routine calls the user-specified json_traverse_callback_func for each element of the structure. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p procedure( json_traverse_callback_func ) :: traverse_callback private subroutine json_update_integer (json, p, path, val, found) Author Jacob Williams Date 12/6/2014 Given the path string, if the variable is present,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure integer(kind=IK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. private subroutine json_update_logical (json, p, path, val, found) Author Jacob Williams Date 12/6/2014 Given the path string, if the variable is present,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure logical(kind=LK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. private subroutine json_update_real (json, p, path, val, found) Author Jacob Williams Date 12/6/2014 Given the path string, if the variable is present,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure real(kind=RK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. private subroutine json_update_real32 (json, p, path, val, found) Alternate version of json_update_real , where val is real32 . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure real(kind=real32), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. private subroutine json_update_string (json, p, path, val, found, trim_str, adjustl_str) Author Jacob Williams Date 12/6/2014 Given the path string, if the variable is present,\n and is a scalar, then update its value.\n If it is not present, then create it and set its value. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure character(kind=CK, len=*), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) private subroutine json_update_string_name_ascii (json, p, path, val, found, trim_str, adjustl_str) Alternate version of json_update_string , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure character(kind=CK, len=*), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) private subroutine json_update_string_val_ascii (json, p, path, val, found, trim_str, adjustl_str) Alternate version of json_update_string , where val is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path path to the variable in the structure character(kind=CDK, len=*), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) private subroutine json_value_add_integer (json, p, name, val) Author Jacob Williams Date 1/20/2014 Add an integer value child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name integer(kind=IK), intent(in) :: val private subroutine json_value_add_integer_vec (json, p, name, val) Author Jacob Williams Date 1/20/2014 Add a integer vector child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the variable integer(kind=IK), intent(in), dimension(:) :: val value private subroutine json_value_add_logical (json, p, name, val) Author Jacob Williams Date 1/20/2014 Add a logical value child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the variable logical(kind=LK), intent(in) :: val value private subroutine json_value_add_logical_vec (json, p, name, val) Author Jacob Williams Date 1/20/2014 Add a logical vector child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the vector logical(kind=LK), intent(in), dimension(:) :: val value private subroutine json_value_add_member (json, p, member) Adds member as a child of p . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p p must be a json_object or a json_array type( json_value ), pointer :: member the child member\nto add to p private subroutine json_value_add_null (json, p, name) Add a NULL value child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name private subroutine json_value_add_real (json, p, name, val) Author Jacob Williams Date 1/19/2014 Add a real value child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name variable name real(kind=RK), intent(in) :: val real value private subroutine json_value_add_real32 (json, p, name, val) Alternate version of json_value_add_real where val is real32 . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name variable name real(kind=real32), intent(in) :: val real value private subroutine json_value_add_real32_vec (json, p, name, val) Alternate version of json_value_add_real_vec where val is real32 . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name real(kind=real32), intent(in), dimension(:) :: val private subroutine json_value_add_real_vec (json, p, name, val) Author Jacob Williams Date 1/20/2014 Add a real vector child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name real(kind=RK), intent(in), dimension(:) :: val private subroutine json_value_add_string (json, p, name, val, trim_str, adjustl_str) Author Jacob Williams Date 1/19/2014 Add a character string child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the variable character(kind=CK, len=*), intent(in) :: val value logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val private subroutine json_value_add_string_name_ascii (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable character(kind=CK, len=*), intent(in) :: val value logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val private subroutine json_value_add_string_val_ascii (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string where val is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name name of the variable character(kind=CDK, len=*), intent(in) :: val value logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val private subroutine json_value_add_string_vec (json, p, name, val, trim_str, adjustl_str) Author Jacob Williams Date 1/19/2014 Add a character string vector child to the json_value variable. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name variable name character(kind=CK, len=*), intent(in), dimension(:) :: val array of strings logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element private subroutine json_value_add_string_vec_name_ascii (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string_vec where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name character(kind=CK, len=*), intent(in), dimension(:) :: val logical(kind=LK), intent(in), optional :: trim_str logical(kind=LK), intent(in), optional :: adjustl_str private subroutine json_value_add_string_vec_val_ascii (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string_vec where val is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name character(kind=CDK, len=*), intent(in), dimension(:) :: val logical(kind=LK), intent(in), optional :: trim_str logical(kind=LK), intent(in), optional :: adjustl_str private recursive subroutine json_value_clone_func (from, to, parent, previous, tail) Author Jacob Williams Date 10/31/2015 Recursive deep copy function called by json_clone . Read more… Arguments Type Intent Optional Attributes Name type( json_value ), pointer :: from this is the structure to clone type( json_value ), pointer :: to the clone is put here (it\nmust not already be associated) type( json_value ), optional, pointer :: parent to%parent type( json_value ), optional, pointer :: previous to%previous logical, optional :: tail if “to” is the tail of\nits parent’s children private subroutine json_value_create (p) Allocate a json_value pointer variable.\n This should be called before adding data to it. Read more… Arguments Type Intent Optional Attributes Name type( json_value ), pointer :: p private subroutine json_value_create_array (json, p, name) Author Jacob Williams Allocate a json_value pointer and make it an array variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name private subroutine json_value_create_integer (json, p, val, name) Author Jacob Williams Allocate a json_value pointer and make it an integer(IK) variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(in) :: val character(kind=CK, len=*), intent(in) :: name private subroutine json_value_create_logical (json, p, val, name) Author Jacob Williams Allocate a json_value pointer and make it a logical(LK) variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p logical(kind=LK), intent(in) :: val variable value character(kind=CK, len=*), intent(in) :: name variable name private subroutine json_value_create_null (json, p, name) Author Jacob Williams Allocate a json_value pointer and make it a null variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name private subroutine json_value_create_object (json, p, name) Author Jacob Williams Allocate a json_value pointer and make it an object variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: name private subroutine json_value_create_real (json, p, val, name) Author Jacob Williams Allocate a json_value pointer and make it a real(RK) variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=RK), intent(in) :: val character(kind=CK, len=*), intent(in) :: name private subroutine json_value_create_real32 (json, p, val, name) Alternate version of json_value_create_real where val=real32. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=real32), intent(in) :: val character(kind=CK, len=*), intent(in) :: name private subroutine json_value_create_string (json, p, val, name, trim_str, adjustl_str) Author Jacob Williams Allocate a json_value pointer and make it a string variable.\n The pointer should not already be allocated. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: val character(kind=CK, len=*), intent(in) :: name logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val private pure recursive subroutine json_value_destroy (json, p, destroy_next) Author Jacob Williams Date 1/22/2014 Destroy a json_value linked-list structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p variable to destroy logical(kind=LK), intent(in), optional :: destroy_next if true, then p%next is also destroyed (default is true) private subroutine json_value_get_child (json, p, child) Returns pointer to the first child of the object\n(or null() if it is not associated). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p object or array JSON data type( json_value ), pointer :: child pointer to the child private subroutine json_value_get_child_by_index (json, p, idx, child, found) Returns a child in the object or array given the index. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p object or array JSON data integer(kind=IK), intent(in) :: idx index of the child\n(this is a 1-based Fortran\nstyle array index). type( json_value ), pointer :: child pointer to the child logical(kind=LK), intent(out), optional :: found true if the value was found\n(if not present, an exception\nwill be thrown if it was not\nfound. If present and not\nfound, no exception will be\nthrown). private subroutine json_value_get_child_by_name (json, p, name, child, found) Returns a child in the object or array given the name string. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CK, len=*), intent(in) :: name the name of a child of p type( json_value ), pointer :: child pointer to the child logical(kind=LK), intent(out), optional :: found true if the value was found\n(if not present, an exception\nwill be thrown if it was not\nfound. If present and not\nfound, no exception will be\nthrown). private subroutine json_value_insert_after (json, p, element) Inserts element after p , and updates the JSON structure accordingly. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a value from a JSON structure\n(presumably, this is a child of\nan object or array). type( json_value ), pointer :: element the element to insert after p private subroutine json_value_insert_after_child_by_index (json, p, idx, element) Inserts element after the idx -th child of p ,\nand updates the JSON structure accordingly. This is just\na wrapper for json_value_insert_after . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a JSON object or array. integer(kind=IK), intent(in) :: idx the index of the child of p to\ninsert the new element after\n(this is a 1-based Fortran\nstyle array index) type( json_value ), pointer :: element the element to insert private recursive subroutine json_value_print (json, p, iunit, str, indent, need_comma, colon, is_array_element, is_compressed_vector, iloc) Print the JSON structure to a string or a file. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p integer(kind=IK), intent(in) :: iunit file unit to write to (the\nfile is assumed to be open) character(kind=CK, len=:), intent(inout), allocatable :: str if iunit==unit2str (-1) then\nthe structure is printed to this\nstring rather than a file. This mode\nis used by json_value_to_string . integer(kind=IK), intent(in), optional :: indent indention level logical(kind=LK), intent(in), optional :: need_comma if it needs a comma after it logical(kind=LK), intent(in), optional :: colon if the colon was just written logical(kind=LK), intent(in), optional :: is_array_element if this is an array element logical(kind=LK), intent(in), optional :: is_compressed_vector if True, this is an element\nfrom an array being printed\non one line [default is False] integer(kind=IK), intent(inout) :: iloc current index in str . should be set to 0 initially.\n[only used when str is used.] private subroutine json_value_remove (json, p, destroy) Author Jacob Williams Date 9/9/2014 Remove a json_value (and all its children)\n from a linked-list structure, preserving the rest of the structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p logical(kind=LK), intent(in), optional :: destroy Option to destroy p after it is removed: Read more… private subroutine json_value_remove_if_present (json, p, path) Author Jacob Williams Date 12/6/2014 Given the path string, remove the variable\nfrom json_value , if it exists. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in) :: path the path to the variable to remove private subroutine json_value_rename (json, p, name) Author Jacob Williams Date 4/29/2016 Rename a json_value . Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CK, len=*), intent(in) :: name new variable name private subroutine json_value_replace (json, p1, p2, destroy) Replace p1 with p2 in a JSON structure. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p1 the item to replace type( json_value ), pointer :: p2 item to take the place of p1 logical(kind=LK), intent(in), optional :: destroy Should p1 also be destroyed\n(default is True). Normally,\nthis should be true to avoid\na memory leak. private subroutine json_value_reverse (json, p) Author Jacob Williams Date 4/11/2017 Reverse the order of the children of an array or object. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p private subroutine json_value_swap (json, p1, p2) Author Jacob Williams Date 4/26/2016 Swap two elements in a JSON structure.\n All of the children are carried along as well. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p1 swap with p2 type( json_value ), pointer :: p2 swap with p1 private subroutine json_value_to_string (json, p, str) Author Jacob Williams Date 2/12/2014 Print the json_value structure to an allocatable string. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CK, len=:), intent(out), allocatable :: str prints structure to this string private subroutine json_value_validate (json, p, is_valid, error_msg) Author Jacob Williams Date 5/2/2016 Validate a json_value linked list by checking to make sure\n all the pointers are properly associated, arrays and objects\n have the correct number of children, and the correct data is\n allocated for the variable types. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p logical(kind=LK), intent(out) :: is_valid True if the structure is valid. character(kind=CK, len=:), intent(out), allocatable :: error_msg if not valid, this will contain\na description of the problem private recursive subroutine parse_array (json, unit, str, array) Core parsing routine. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if parsing from a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing from a string) type( json_value ), pointer :: array private subroutine parse_for_chars (json, unit, str, chars) Core parsing routine. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if parsing from a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing from a string) character(kind=CK, len=*), intent(in) :: chars the string to check for. private subroutine parse_number (json, unit, str, value) Author Jacob Williams Date 1/20/2014 Read a numerical value from the file (or string).\n The routine will determine if it is an integer or a real, and\n allocate the type accordingly. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if parsing from a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing from a string) type( json_value ), pointer :: value private recursive subroutine parse_object (json, unit, str, parent, expecting_next_element) Core parsing routine. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if parsing from a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing from a string) type( json_value ), pointer :: parent the parsed object will be added as a child of this logical(kind=LK), intent(in) :: expecting_next_element if true, this object is preceeded by a comma, so\nwe expect a valid object to exist. used to check\nfor trailing delimiters. private subroutine parse_string (json, unit, str, string) Parses a string while reading a JSON file. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if\nparsing from a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing\nfrom a string) character(kind=CK, len=:), intent(out), allocatable :: string the string (unescaped\nif necessary) private recursive subroutine parse_value (json, unit, str, value) Core parsing routine. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number character(kind=CK, len=*), intent(in) :: str string containing JSON data (only used if unit=0 ) type( json_value ), pointer :: value JSON data that is extracted private subroutine pop_char (json, unit, str, skip_ws, skip_comments, eof, popped) Get the next character from the file (or string). Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json integer(kind=IK), intent(in) :: unit file unit number (if parsing\nfrom a file) character(kind=CK, len=*), intent(in) :: str JSON string (if parsing from a\nstring) – only used if unit=0 logical(kind=LK), intent(in), optional :: skip_ws to ignore whitespace [default False] logical(kind=LK), intent(in), optional :: skip_comments to ignore comment lines [default False] logical(kind=LK), intent(out) :: eof true if the end of the file has\nbeen reached. character(kind=CK, len=1), intent(out) :: popped the popped character returned private subroutine push_char (json, c) Core routine. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CK, len=1), intent(in) :: c to character to push private subroutine to_array (json, p, name) Author Jacob Williams Change the json_value variable to an array. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. private subroutine to_integer (json, p, val, name) Author Jacob Williams Change the json_value variable to an integer. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(in), optional :: val if the value is also to be set\n(if not present, then 0 is used). character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. private subroutine to_logical (json, p, val, name) Author Jacob Williams Change the json_value variable to a logical. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p logical(kind=LK), intent(in), optional :: val if the value is also to be set\n(if not present, then .false. is used). character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. private subroutine to_null (json, p, name) Author Jacob Williams Change the json_value variable to a null. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. private subroutine to_object (json, p, name) Author Jacob Williams Change the json_value variable to an object. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. private subroutine to_real (json, p, val, name) Author Jacob Williams Change the json_value variable to a real. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=RK), intent(in), optional :: val if the value is also to be set\n(if not present, then 0.0_rk is used). character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. private subroutine to_string (json, p, val, name, trim_str, adjustl_str) Author Jacob Williams Change the json_value variable to a string. Read more… Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CK, len=*), intent(in), optional :: val if the value is also to be set\n(if not present, then ‘’ is used). character(kind=CK, len=*), intent(in), optional :: name if the name is also to be changed. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) private subroutine wrap_json_add_integer_by_path (json, me, path, value, found, was_created) Wrapper to json_add_integer_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_integer_vec_by_path (json, me, path, value, found, was_created) Wrapper for json_add_integer_vec_by_path where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable integer(kind=IK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_logical_by_path (json, me, path, value, found, was_created) Wrapper to json_add_logical_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_logical_vec_by_path (json, me, path, value, found, was_created) Wrapper for json_add_logical_vec_by_path where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable logical(kind=LK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_member_by_path (json, me, path, p, found, was_created) Wrapper to json_add_member_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable type( json_value ), intent(in), pointer :: p the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_real32_by_path (json, me, path, value, found, was_created) Wrapper to json_add_real32_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_real32_vec_by_path (json, me, path, value, found, was_created) Wrapper for json_add_real32_vec_by_path where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=real32), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_real_by_path (json, me, path, value, found, was_created) Wrapper to json_add_real_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_real_vec_by_path (json, me, path, value, found, was_created) Wrapper for json_add_real_vec_by_path where “path” is kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable real(kind=RK), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created private subroutine wrap_json_add_string_by_path (json, me, path, value, found, was_created, trim_str, adjustl_str) Wrapper to json_add_string_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in) :: value the value to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element private subroutine wrap_json_add_string_vec_by_path (json, me, path, value, found, was_created, ilen, trim_str, adjustl_str) Wrapper for json_add_string_vec_by_path where “path” and “value” are kind=CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me the JSON structure character(kind=CDK, len=*), intent(in) :: path the path to the variable character(kind=CDK, len=*), intent(in), dimension(:) :: value the vector to add logical(kind=LK), intent(out), optional :: found if the variable was found logical(kind=LK), intent(out), optional :: was_created if the variable had to be created integer(kind=IK), intent(in), optional, dimension(:) :: ilen the string lengths of each\nelement in value . If not present,\nthe full len(value) string is added\nfor each element. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for each element logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for each element private subroutine wrap_json_create_by_path (json, me, path, p, found, was_created) Alternate version of json_create_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me a JSON linked list character(kind=CDK, len=*), intent(in) :: path path to the variable type( json_value ), intent(out), optional, pointer :: p pointer to the variable\nspecify by path logical(kind=LK), intent(out), optional :: found true if there were no errors\n(variable found or created) logical(kind=LK), intent(out), optional :: was_created true if it was actually created\n(as opposed to already being there) private subroutine wrap_json_get_alloc_string_vec_by_path (json, me, path, vec, ilen, found, default, default_ilen) Alternate version of json_get_alloc_string_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=:), intent(out), dimension(:), allocatable :: vec integer(kind=IK), intent(out), dimension(:), allocatable :: ilen the actual length\nof each character\nstring in the array logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default integer(kind=IK), intent(in), optional, dimension(:) :: default_ilen the actual\nlength of default private recursive subroutine wrap_json_get_array_by_path (json, me, path, array_callback, found) Alternate version of json_get_array_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path procedure( json_array_callback_func ) :: array_callback logical(kind=LK), intent(out), optional :: found private subroutine wrap_json_get_by_path (json, me, path, p, found) Alternate version of json_get_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path type( json_value ), intent(out), pointer :: p logical(kind=LK), intent(out), optional :: found private subroutine wrap_json_get_integer_by_path (json, me, path, value, found, default) Alternate version of json_get_integer_by_path , where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path integer(kind=IK), intent(out) :: value logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(in), optional :: default default value if not found private subroutine wrap_json_get_integer_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_integer_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path integer(kind=IK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found integer(kind=IK), intent(in), optional, dimension(:) :: default default value if not found private subroutine wrap_json_get_logical_by_path (json, me, path, value, found, default) Alternate version of json_get_logical_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path logical(kind=LK), intent(out) :: value logical(kind=LK), intent(out), optional :: found logical(kind=LK), intent(in), optional :: default default value if not found private subroutine wrap_json_get_logical_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_logical_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path logical(kind=LK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found logical(kind=LK), intent(in), optional, dimension(:) :: default private subroutine wrap_json_get_path (json, p, path, found, use_alt_array_tokens, path_sep) Wrapper for json_get_path where “path” and “path_sep” are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list object character(kind=CDK, len=:), intent(out), allocatable :: path path to the variable logical(kind=LK), intent(out), optional :: found true if there were no problems logical(kind=LK), intent(in), optional :: use_alt_array_tokens if true, then ‘()’ are used\nfor array elements otherwise,\n‘[]’ are used [default] character(kind=CDK, len=1), intent(in), optional :: path_sep character to use for path\nseparator (default is ‘.’) private subroutine wrap_json_get_real32_by_path (json, me, path, value, found, default) Alternate version of json_get_real32_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path real(kind=real32), intent(out) :: value logical(kind=LK), intent(out), optional :: found real(kind=real32), intent(in), optional :: default default value if not found private subroutine wrap_json_get_real32_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_real32_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path real(kind=real32), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found real(kind=real32), intent(in), optional, dimension(:) :: default default value if not found private subroutine wrap_json_get_real_by_path (json, me, path, value, found, default) Alternate version of json_get_real_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path real(kind=RK), intent(out) :: value logical(kind=LK), intent(out), optional :: found real(kind=RK), intent(in), optional :: default default value if not found private subroutine wrap_json_get_real_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_real_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: me character(kind=CDK, len=*), intent(in) :: path real(kind=RK), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found real(kind=RK), intent(in), optional, dimension(:) :: default default value if not found private subroutine wrap_json_get_string_by_path (json, me, path, value, found, default) Alternate version of json_get_string_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=:), intent(out), allocatable :: value logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional :: default private subroutine wrap_json_get_string_vec_by_path (json, me, path, vec, found, default) Alternate version of json_get_string_vec_by_path , where “path” is kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CK, len=*), intent(out), dimension(:), allocatable :: vec logical(kind=LK), intent(out), optional :: found character(kind=CK, len=*), intent(in), optional, dimension(:) :: default private subroutine wrap_json_info_by_path (json, p, path, found, var_type, n_children, name) Alternate version of json_info_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p a JSON linked list character(kind=CDK, len=*), intent(in) :: path path to the variable logical(kind=LK), intent(out), optional :: found true if it was found integer(kind=IK), intent(out), optional :: var_type variable type integer(kind=IK), intent(out), optional :: n_children number of children character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name private subroutine wrap_json_matrix_info_by_path (json, p, path, is_matrix, found, var_type, n_sets, set_size, name) Alternate version of json_matrix_info_by_path where “path” is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p a JSON linked list 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\nthe matrix (if all elements have\nthe same type) integer(kind=IK), intent(out), optional :: n_sets number of data sets (i.e., matrix\nrows if using row-major order) integer(kind=IK), intent(out), optional :: set_size size of each data set (i.e., matrix\ncols if using row-major order) character(kind=CK, len=:), intent(out), optional, allocatable :: name variable name private subroutine wrap_json_parse_string (json, p, str) Alternate version of json_parse_string , where str is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p output structure character(kind=CDK, len=*), intent(in) :: str string with JSON data private subroutine wrap_json_rename_by_path (json, me, path, name, found) Alternate version of json_rename_by_path , where “path” and “name” are kind=CDK Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: me character(kind=CDK, len=*), intent(in) :: path character(kind=CDK, len=*), intent(in) :: name logical(kind=LK), intent(out), optional :: found private subroutine wrap_json_throw_exception (json, msg, found) Alternate version of json_throw_exception , where msg is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json character(kind=CDK, len=*), intent(in) :: msg the error message logical(kind=LK), intent(inout), optional :: found if the caller is handling the\nexception with an optimal return\nargument. If so, json%stop_on_error is ignored. private subroutine wrap_json_update_integer (json, p, path, val, found) Alternate version of json_update_integer , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure integer(kind=IK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. private subroutine wrap_json_update_logical (json, p, path, val, found) Alternate version of json_update_logical , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure logical(kind=LK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. private subroutine wrap_json_update_real (json, p, path, val, found) Alternate version of json_update_real , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure real(kind=RK), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. private subroutine wrap_json_update_real32 (json, p, path, val, found) Alternate version of json_update_real32 , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure real(kind=real32), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. private subroutine wrap_json_update_string (json, p, path, val, found, trim_str, adjustl_str) Alternate version of json_update_string , where path and value are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path path to the variable in the structure character(kind=CDK, len=*), intent(in) :: val the new value logical(kind=LK), intent(out) :: found if the variable was found and was a scalar. logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val (only used if val is present) logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val (only used if val is present)\n(note that ADJUSTL is done before TRIM) private subroutine wrap_json_value_add_integer (json, p, name, val) Alternate version of json_value_add_integer where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable integer(kind=IK), intent(in) :: val value private subroutine wrap_json_value_add_integer_vec (json, p, name, val) Alternate version of json_value_add_integer_vec where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable integer(kind=IK), intent(in), dimension(:) :: val value private subroutine wrap_json_value_add_logical (json, p, name, val) Alternate version of json_value_add_logical where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable logical(kind=LK), intent(in) :: val value private subroutine wrap_json_value_add_logical_vec (json, p, name, val) Alternate version of json_value_add_logical_vec where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable logical(kind=LK), intent(in), dimension(:) :: val value private subroutine wrap_json_value_add_null (json, p, name) Alternate version of json_value_add_null where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable private subroutine wrap_json_value_add_real (json, p, name, val) Alternate version of json_value_add_real where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name variable name real(kind=RK), intent(in) :: val real value private subroutine wrap_json_value_add_real32 (json, p, name, val) Alternate version of json_value_add_real32 where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name variable name real(kind=real32), intent(in) :: val real value private subroutine wrap_json_value_add_real32_vec (json, p, name, val) Alternate version of json_value_add_real32_vec where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name real(kind=real32), intent(in), dimension(:) :: val private subroutine wrap_json_value_add_real_vec (json, p, name, val) Alternate version of json_value_add_real_vec where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name real(kind=RK), intent(in), dimension(:) :: val private subroutine wrap_json_value_add_string (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string where name and val are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name name of the variable character(kind=CDK, len=*), intent(in) :: val value logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val private subroutine wrap_json_value_add_string_vec (json, p, name, val, trim_str, adjustl_str) Alternate version of json_value_add_string_vec where name and val are kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name character(kind=CDK, len=*), intent(in), dimension(:) :: val logical(kind=LK), intent(in), optional :: trim_str logical(kind=LK), intent(in), optional :: adjustl_str private subroutine wrap_json_value_create_array (json, p, name) Author Izaak Beekman A wrapper for json_value_create_array so that create_array method may be\ncalled with an actual argument, corresponding to the dummy argument name ,\nthat is either of ‘DEFAULT’ or ‘ISO_10646’ character kind. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name private subroutine wrap_json_value_create_integer (json, p, val, name) Author Izaak Beekman A wrapper procedure for json_value_create_integer so that create_integer method may be called with either a ‘DEFAULT’ or ‘ISO_10646’ character kind name actual argument. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p integer(kind=IK), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name private subroutine wrap_json_value_create_logical (json, p, val, name) Author Izaak Beekman Wrapper for json_value_create_logical so create_logical method can\nbe called with name of character kind ‘DEFAULT’ or ‘ISO_10646’ Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p logical(kind=LK), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name private subroutine wrap_json_value_create_null (json, p, name) Author Izaak Beekman Wrap json_value_create_null so that create_null method may be called with\nan actual argument corresponding to the dummy argument name that is either\nof ‘DEFAULT’ or ‘ISO_10646’ character kind. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name private subroutine wrap_json_value_create_object (json, p, name) Author Izaak Beekman Wrap json_value_create_object so that create_object method may be called\nwith an actual argument corresponding to the dummy argument name that is of\neither ‘DEFAULT’ or ‘ISO_10646’ character kind. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: name private subroutine wrap_json_value_create_real (json, p, val, name) Author Izaak Beekman A wrapper for json_value_create_real so that create_real method\nmay be called with an actual argument corresponding to the dummy argument, name that may be of ‘DEFAULT’ or ‘ISO_10646’ character kind. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=RK), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name private subroutine wrap_json_value_create_real32 (json, p, val, name) Alternate version of json_value_create_real32 where “name” is kind(CDK). Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p real(kind=real32), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name private subroutine wrap_json_value_create_string (json, p, val, name, trim_str, adjustl_str) Author Izaak Beekman Wrap json_value_create_string so that create_string method may be called\nwith actual character string arguments for name and val that are BOTH of\n‘DEFAULT’ or ‘ISO_10646’ character kind. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: val character(kind=CDK, len=*), intent(in) :: name logical(kind=LK), intent(in), optional :: trim_str if TRIM() should be called for the val logical(kind=LK), intent(in), optional :: adjustl_str if ADJUSTL() should be called for the val private subroutine wrap_json_value_get_child_by_name (json, p, name, child, found) Alternate version of json_value_get_child_by_name where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CDK, len=*), intent(in) :: name type( json_value ), pointer :: child logical(kind=LK), intent(out), optional :: found private subroutine wrap_json_value_remove_if_present (json, p, path) Alternate version of json_value_remove_if_present , where path is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), pointer :: p character(kind=CDK, len=*), intent(in) :: path private subroutine wrap_json_value_rename (json, p, name) Author Jacob Williams Date 4/29/2016 Alternate version of json_value_rename , where name is kind=CDK. Arguments Type Intent Optional Attributes Name class( json_core ), intent(inout) :: json type( json_value ), intent(in), pointer :: p character(kind=CDK, len=*), intent(in) :: name new variable name","tags":"","loc":"module/json_value_module.html"},{"title":"json_string_utilities – JSON-Fortran","text":"JSON -Fortran support module for string manipulation. License JSON -Fortran is released under a BSD-style license.\n See the LICENSE file for details. Uses ieee_arithmetic json_parameters json_kinds module~~json_string_utilities~~UsesGraph module~json_string_utilities json_string_utilities ieee_arithmetic ieee_arithmetic module~json_string_utilities->ieee_arithmetic module~json_kinds json_kinds module~json_string_utilities->module~json_kinds module~json_parameters json_parameters module~json_string_utilities->module~json_parameters iso_fortran_env iso_fortran_env module~json_kinds->iso_fortran_env module~json_parameters->module~json_kinds Help Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\ndescended from. Dashed arrows point from a module or program unit to \nmodules which it uses. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Used by module~~json_string_utilities~~UsedByGraph module~json_string_utilities json_string_utilities module~json_file_module json_file_module module~json_file_module->module~json_string_utilities module~json_value_module json_value_module module~json_file_module->module~json_value_module module~json_module json_module module~json_module->module~json_string_utilities module~json_module->module~json_file_module module~json_module->module~json_value_module module~json_value_module->module~json_string_utilities Help Graph Key Nodes of different colours represent the following: Graph Key Module Module Submodule Submodule Subroutine Subroutine Function Function Program Program This Page's Entity This Page's Entity Solid arrows point from a submodule to the (sub)module which it is\ndescended from. Dashed arrows point from a module or program unit to \nmodules which it uses. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Interfaces public interface operator(//) Provide a means to convert to UCS4 while\nconcatenating UCS4 and default strings private pure function ucs4_join_default (ucs4_str, def_str) result(res) Author Izaak Beekman CK // CDK operator. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: ucs4_str character(kind=CDK, len=*), intent(in) :: def_str Return Value character(kind=CK, len=len=(len(ucs4_str)+len(def_str))) private pure function default_join_ucs4 (def_str, ucs4_str) result(res) Author Izaak Beekman CDK // CK operator. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: def_str character(kind=CK, len=*), intent(in) :: ucs4_str Return Value character(kind=CK, len=len=(len(def_str)+len(ucs4_str))) public interface operator(/=) Provide a string /= operator that works\nwith mixed kinds private pure elemental function ucs4_neq_default (ucs4_str, def_str) result(res) Author Jacob Williams CK /= CDK operator. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: ucs4_str character(kind=CDK, len=*), intent(in) :: def_str Return Value logical(kind=LK) private pure elemental function default_neq_ucs4 (def_str, ucs4_str) result(res) Author Jacob Williams CDK /= CK operator. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: def_str character(kind=CK, len=*), intent(in) :: ucs4_str Return Value logical(kind=LK) public interface operator(==) Provide a string == operator that works\nwith mixed kinds private pure elemental function ucs4_comp_default (ucs4_str, def_str) result(res) Author Izaak Beekman CK == CDK operator. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: ucs4_str character(kind=CDK, len=*), intent(in) :: def_str Return Value logical(kind=LK) private pure elemental function default_comp_ucs4 (def_str, ucs4_str) result(res) Author Izaak Beekman CDK == CK operator. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: def_str character(kind=CK, len=*), intent(in) :: ucs4_str Return Value logical(kind=LK) public interface to_unicode Convert a ‘DEFAULT’ kind character input to\n‘ISO_10646’ kind and return it private pure function to_uni (str) Author Izaak Beekman Convert string to unicode (CDK to CK). Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: str Return Value character(kind=CK, len=len) private pure function to_uni_vec (str) Author Izaak Beekman Convert array of strings to unicode (CDK to CK). Note JW: may be able to remove this by making to_uni PURE ELEMENTAL ? Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in), dimension(:) :: str Return Value character(kind=CK, len=len), dimension(size(str)) Functions public pure function decode_rfc6901 (str) result(str_out) Decode a string from the “ JSON Pointer” RFC 6901 format. Read more… Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str Return Value character(kind=CK, len=:), allocatable private pure elemental function default_comp_ucs4 (def_str, ucs4_str) result(res) Author Izaak Beekman CDK == CK operator. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: def_str character(kind=CK, len=*), intent(in) :: ucs4_str Return Value logical(kind=LK) private pure function default_join_ucs4 (def_str, ucs4_str) result(res) Author Izaak Beekman CDK // CK operator. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: def_str character(kind=CK, len=*), intent(in) :: ucs4_str Return Value character(kind=CK, len=len=(len(def_str)+len(ucs4_str))) private pure elemental function default_neq_ucs4 (def_str, ucs4_str) result(res) Author Jacob Williams CDK /= CK operator. Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: def_str character(kind=CK, len=*), intent(in) :: ucs4_str Return Value logical(kind=LK) public pure function encode_rfc6901 (str) result(str_out) Encode a string into the “ JSON Pointer” RFC 6901 format. Read more… Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str Return Value character(kind=CK, len=:), allocatable public pure function lowercase_string (str) result(s_lower) Author Jacob Williams Returns lowercase version of the CK string. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str input string Return Value character(kind=CK, len=len=(len(str))) lowercase version of the string private pure function to_uni (str) Author Izaak Beekman Convert string to unicode (CDK to CK). Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in) :: str Return Value character(kind=CK, len=len) private pure function to_uni_vec (str) Author Izaak Beekman Convert array of strings to unicode (CDK to CK). Read more… Arguments Type Intent Optional Attributes Name character(kind=CDK, len=*), intent(in), dimension(:) :: str Return Value character(kind=CK, len=len), dimension(size(str)) private pure elemental function ucs4_comp_default (ucs4_str, def_str) result(res) Author Izaak Beekman CK == CDK operator. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: ucs4_str character(kind=CDK, len=*), intent(in) :: def_str Return Value logical(kind=LK) private pure function ucs4_join_default (ucs4_str, def_str) result(res) Author Izaak Beekman CK // CDK operator. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: ucs4_str character(kind=CDK, len=*), intent(in) :: def_str Return Value character(kind=CK, len=len=(len(ucs4_str)+len(def_str))) private pure elemental function ucs4_neq_default (ucs4_str, def_str) result(res) Author Jacob Williams CK /= CDK operator. Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: ucs4_str character(kind=CDK, len=*), intent(in) :: def_str Return Value logical(kind=LK) public pure function valid_json_hex (str) result(valid) Author Jacob Williams Date 6/14/2014 Returns true if the string is a valid 4-digit hex string. Read more… Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str the string to check. Return Value logical(kind=LK) is str a value 4-digit hex string Subroutines private subroutine compact_real_string (str) Author Izaak Beekman Date 02/24/2015 Compact a string representing a real number, so that\n the same value is displayed with fewer characters. Read more… Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(inout) :: str string representation of a real number. public subroutine escape_string (str_in, str_out, escape_solidus) Author Jacob Williams Date 1/21/2014 Add the escape characters to a string for adding to JSON . Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str_in character(kind=CK, len=:), intent(out), allocatable :: str_out logical(kind=LK), intent(in) :: escape_solidus if the solidus (forward slash)\nis also to be escaped public pure subroutine integer_to_string (ival, int_fmt, str) Author Jacob Williams Date 12/4/2013 Convert an integer to a string. Arguments Type Intent Optional Attributes Name integer(kind=IK), intent(in) :: ival integer value. character(kind=CDK, len=*), intent(in) :: int_fmt format for integers character(kind=CK, len=*), intent(out) :: str ival converted to a string. public subroutine real_to_string (rval, real_fmt, compact_real, non_normals_to_null, str) Author Jacob Williams Date 12/4/2013 Convert a real value to a string. Read more… Arguments Type Intent Optional Attributes Name real(kind=RK), intent(in) :: rval real value. character(kind=CDK, len=*), intent(in) :: real_fmt format for real numbers logical(kind=LK), intent(in) :: compact_real compact the string so that it is\ndisplayed with fewer characters logical(kind=LK), intent(in) :: non_normals_to_null If True, NaN, Infinity, or -Infinity are returned as null .\nIf False, the string value will be returned in quotes\n(e.g., “NaN”, “Infinity”, or “-Infinity” ) character(kind=CK, len=*), intent(out) :: str rval converted to a string. public pure subroutine replace_string (str, s1, s2) Replace all occurrences of s1 in str with s2 . Read more… Arguments Type Intent Optional Attributes Name character(kind=CK, len=:), intent(inout), allocatable :: str character(kind=CK, len=*), intent(in) :: s1 character(kind=CK, len=*), intent(in) :: s2 public subroutine string_to_integer (str, ival, status_ok) Convert a string into an integer. Read more… Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str the string to convert to an integer integer(kind=IK), intent(out) :: ival the integer value logical(kind=LK), intent(out) :: status_ok true if there were no errors public subroutine string_to_real (str, use_quiet_nan, rval, status_ok) Author Jacob Williams Date 1/19/2014 Convert a string into a real(RK) . Read more… Arguments Type Intent Optional Attributes Name character(kind=CK, len=*), intent(in) :: str the string to convert to a real logical(kind=LK), intent(in) :: use_quiet_nan if true, return NaN’s as ieee_quiet_nan .\notherwise, use ieee_signaling_nan . real(kind=RK), intent(out) :: rval str converted to a real value logical(kind=LK), intent(out) :: status_ok true if there were no errors public subroutine unescape_string (str, error_message) Remove the escape characters from a JSON string and return it. Read more… Arguments Type Intent Optional Attributes Name character(kind=CK, len=:), intent(inout), allocatable :: str Read more… character(kind=CK, len=:), intent(out), allocatable :: error_message will be allocated if\nthere was an error","tags":"","loc":"module/json_string_utilities.html"},{"title":"json_module.F90 – JSON-Fortran","text":"This file depends on sourcefile~~json_module.f90~~EfferentGraph sourcefile~json_module.f90 json_module.F90 sourcefile~json_file_module.f90 json_file_module.F90 sourcefile~json_module.f90->sourcefile~json_file_module.f90 sourcefile~json_kinds.f90 json_kinds.F90 sourcefile~json_module.f90->sourcefile~json_kinds.f90 sourcefile~json_parameters.f90 json_parameters.F90 sourcefile~json_module.f90->sourcefile~json_parameters.f90 sourcefile~json_string_utilities.f90 json_string_utilities.F90 sourcefile~json_module.f90->sourcefile~json_string_utilities.f90 sourcefile~json_value_module.f90 json_value_module.F90 sourcefile~json_module.f90->sourcefile~json_value_module.f90 sourcefile~json_file_module.f90->sourcefile~json_kinds.f90 sourcefile~json_file_module.f90->sourcefile~json_parameters.f90 sourcefile~json_file_module.f90->sourcefile~json_string_utilities.f90 sourcefile~json_file_module.f90->sourcefile~json_value_module.f90 sourcefile~json_parameters.f90->sourcefile~json_kinds.f90 sourcefile~json_string_utilities.f90->sourcefile~json_kinds.f90 sourcefile~json_string_utilities.f90->sourcefile~json_parameters.f90 sourcefile~json_value_module.f90->sourcefile~json_kinds.f90 sourcefile~json_value_module.f90->sourcefile~json_parameters.f90 sourcefile~json_value_module.f90->sourcefile~json_string_utilities.f90 Help Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\nis dependent upon another if the latter must be compiled before the former\ncan be. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code !***************************************************************************************** !> author: Jacob Williams ! license: BSD ! ! A Modern Fortran JSON (JavaScript Object Notation) API. ! ! This module provides access to [[json_value_module]] and ! [[json_file_module]]. For normal JSON-Fortran use, using this module ! is all that is necessary. ! ! Note that this module renames the kind definition variables from [[json_kinds]] ! from [`RK`, `IK`, `LK`, `CK`, and `CDK`] to [`json_RK`, `json_IK`, `json_LK`, ! `json_CK`, and `json_CDK`] so as to avoid namespace pollution with short ! variable names. ! #ifdef USE_UCS4 #pragma push_macro(\"USE_UCS4\") #undef USE_UCS4 ! Since ```USE_UCS4``` **is** defined, this module also exports the ! operators `==`, `/=`, and `//` from [[json_string_utilities]] for ! `CK` and `CDK` operations. #pragma pop_macro(\"USE_UCS4\") #endif ! !### License ! * JSON-Fortran is released under a BSD-style license. ! See the [LICENSE](https://github.com/jacobwilliams/json-fortran/blob/master/LICENSE) ! file for details. ! !### History ! * Joseph A. Levin : March 2012 : Original [FSON](https://github.com/josephalevin/fson) ! code [retrieved on 12/2/2013]. ! * Jacob Williams : 2/8/2014 : Extensive modifications to the original FSON code. ! The original F95 code was split into four files: ! fson_path_m.f95, fson_string_m.f95, fson_value_m.f95, and fson.f95. ! The new code has been extensively updated, refactored and combined into this ! one module (json_module.f90). ! Various Fortran 2003/2008 features are now used ! (e.g., allocatable strings, newunit, generic, class, and abstract interface). ! * Development continues at: [Github](https://github.com/jacobwilliams/json-fortran) ! !### See also ! * [json-fortran development site](https://github.com/jacobwilliams/json-fortran) ! * [json-fortran online documentation](https://jacobwilliams.github.io/json-fortran) ! * [JSON website](http://www.json.org/) ! * [JSON validator](http://jsonlint.com/) ! !@note Originally JSON-Fortran was entirely contained within this module. module json_module use json_kinds , only : json_RK => RK , & json_IK => IK , & json_LK => LK , & json_CK => CK , & json_CDK => CDK #ifdef USE_UCS4 use json_string_utilities , only : operator ( == ),& operator ( // ),& operator ( /= ) #endif use json_parameters , only : json_unknown ,& json_null , & json_object , & json_array , & json_logical ,& json_integer ,& json_real , & json_double , & json_string use json_value_module use json_file_module implicit none character ( kind = json_CK , len =* ), parameter , private :: version = '9.0.0' !! JSON-Fortran version. !! !!@note This string should match the one in the `.VERSION` file (which is used !! for the documentation generation.) public contains !***************************************************************************************** !***************************************************************************************** !> ! Returns the JSON-Fortran version string. function json_fortran_version () result ( ver ) implicit none character ( len = :), allocatable :: ver !! JSON-Fortran version string ver = version end function json_fortran_version !***************************************************************************************** !***************************************************************************************** end module json_module !*****************************************************************************************","tags":"","loc":"sourcefile/json_module.f90.html"},{"title":"json_file_module.F90 – JSON-Fortran","text":"This file depends on sourcefile~~json_file_module.f90~~EfferentGraph sourcefile~json_file_module.f90 json_file_module.F90 sourcefile~json_kinds.f90 json_kinds.F90 sourcefile~json_file_module.f90->sourcefile~json_kinds.f90 sourcefile~json_parameters.f90 json_parameters.F90 sourcefile~json_file_module.f90->sourcefile~json_parameters.f90 sourcefile~json_string_utilities.f90 json_string_utilities.F90 sourcefile~json_file_module.f90->sourcefile~json_string_utilities.f90 sourcefile~json_value_module.f90 json_value_module.F90 sourcefile~json_file_module.f90->sourcefile~json_value_module.f90 sourcefile~json_parameters.f90->sourcefile~json_kinds.f90 sourcefile~json_string_utilities.f90->sourcefile~json_kinds.f90 sourcefile~json_string_utilities.f90->sourcefile~json_parameters.f90 sourcefile~json_value_module.f90->sourcefile~json_kinds.f90 sourcefile~json_value_module.f90->sourcefile~json_parameters.f90 sourcefile~json_value_module.f90->sourcefile~json_string_utilities.f90 Help Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\nis dependent upon another if the latter must be compiled before the former\ncan be. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Files dependent on this one sourcefile~~json_file_module.f90~~AfferentGraph sourcefile~json_file_module.f90 json_file_module.F90 sourcefile~json_module.f90 json_module.F90 sourcefile~json_module.f90->sourcefile~json_file_module.f90 Help Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\nis dependent upon another if the latter must be compiled before the former\ncan be. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code !***************************************************************************************** !> author: Jacob Williams ! license: BSD ! ! Higher-level [[json_file]] interface for the [[json_value]] type. ! !### License ! * JSON-Fortran is released under a BSD-style license. ! See the [LICENSE](https://github.com/jacobwilliams/json-fortran/blob/master/LICENSE) ! file for details. module json_file_module use , intrinsic :: iso_fortran_env use json_kinds use json_parameters , only : unit2str use json_string_utilities use json_value_module implicit none private #include \"json_macros.inc\" !********************************************************* !> author: Jacob Williams ! date: 12/9/2013 ! ! The `json_file` is the main public class that is ! used to open a file and get data from it. ! ! A `json_file` contains only two items: an instance of a [[json_core(type)]], ! which is used for all data manipulation, and a [[json_value]] pointer, ! which is used to construct the linked-list data structure. ! Note that most methods in the `json_file` class are simply wrappers ! to the lower-level routines in the [[json_value_module]]. ! !### Example ! !```fortran ! program test ! use json_module ! implicit none ! type(json_file) :: json ! integer :: ival ! real(real64) :: rval ! character(len=:),allocatable :: cval ! logical :: found ! call json%initialize(compact_reals=.true.) ! call json%load(filename='myfile.json') ! call json%print() !print to the console ! call json%get('var.i',ival,found) ! call json%get('var.r(3)',rval,found) ! call json%get('var.c',cval,found) ! call json%destroy() ! end program test !``` ! !@note The `destroy()` method may be called to free the memory if necessary. ! [[json_file(type)]] includes a finalizer that also calls ! `destroy()` when the variable goes out of scope. type , public :: json_file private type ( json_core ) :: core !! The instance of the [[json_core(type)]] !! factory used for this file. type ( json_value ), pointer :: p => null () !! the JSON structure read from the file contains generic , public :: initialize => initialize_json_core_in_file ,& set_json_core_in_file procedure , public :: get_core => get_json_core_in_file !> ! Load JSON from a file. procedure , public :: load => json_file_load !> ! The same as `load`, but only here for backward compatibility procedure , public :: load_file => json_file_load !> ! Load JSON from a string. generic , public :: deserialize => MAYBEWRAP ( json_file_load_from_string ) !> ! The same as `deserialize`, but only here for backward compatibility generic , public :: load_from_string => MAYBEWRAP ( json_file_load_from_string ) !> ! Print the [[json_value]] structure to an allocatable string procedure , public :: serialize => json_file_print_to_string !> ! The same as `serialize`, but only here for backward compatibility procedure , public :: print_to_string => json_file_print_to_string procedure , public :: destroy => json_file_destroy procedure , public :: nullify => json_file_nullify procedure , public :: move => json_file_move_pointer generic , public :: info => MAYBEWRAP ( json_file_variable_info ) generic , public :: matrix_info => MAYBEWRAP ( json_file_variable_matrix_info ) !error checking: procedure , public :: failed => json_file_failed procedure , public :: print_error_message => json_file_print_error_message procedure , public :: check_for_errors => json_file_check_for_errors procedure , public :: clear_exceptions => json_file_clear_exceptions generic , public :: print => json_file_print_to_console , & json_file_print_to_unit , & json_file_print_to_filename !> ! The same as `print`, but only here for backward compatibility generic , public :: print_file => json_file_print_to_console , & json_file_print_to_unit , & json_file_print_to_filename !> ! Rename a variable, specifying it by path generic , public :: rename => MAYBEWRAP ( json_file_rename ) #ifdef USE_UCS4 generic , public :: rename => json_file_rename_path_ascii , & json_file_rename_name_ascii #endif !> ! Verify that a path is valid ! (i.e., a variable with this path exists in the file). generic , public :: valid_path => MAYBEWRAP ( json_file_valid_path ) !> ! Get a variable from a [[json_file(type)]], by specifying the path. generic , public :: get => MAYBEWRAP ( json_file_get_object ), & MAYBEWRAP ( json_file_get_integer ), & #ifndef REAL32 MAYBEWRAP ( json_file_get_real32 ), & #endif MAYBEWRAP ( json_file_get_real ), & #ifdef REAL128 MAYBEWRAP ( json_file_get_real64 ), & #endif MAYBEWRAP ( json_file_get_logical ), & MAYBEWRAP ( json_file_get_string ), & MAYBEWRAP ( json_file_get_integer_vec ), & #ifndef REAL32 MAYBEWRAP ( json_file_get_real32_vec ), & #endif MAYBEWRAP ( json_file_get_real_vec ), & #ifdef REAL128 MAYBEWRAP ( json_file_get_real64_vec ), & #endif MAYBEWRAP ( json_file_get_logical_vec ), & MAYBEWRAP ( json_file_get_string_vec ), & MAYBEWRAP ( json_file_get_alloc_string_vec ), & json_file_get_root !> ! Add a variable to a [[json_file(type)]], by specifying the path. ! !### Example ! !```fortran ! program test ! use json_module, rk=>json_rk, ik=>json_ik ! implicit none ! type(json_file) :: f ! call f%initialize() ! specify whatever init options you want. ! call f%add('inputs.t', 0.0_rk) ! call f%add('inputs.x', [1.0_rk,2.0_rk,3.0_rk]) ! call f%add('inputs.flag', .true.) ! call f%print() ! print to the console ! end program test !``` generic , public :: add => json_file_add , & MAYBEWRAP ( json_file_add_object ), & MAYBEWRAP ( json_file_add_integer ), & #ifndef REAL32 MAYBEWRAP ( json_file_add_real32 ), & #endif MAYBEWRAP ( json_file_add_real ), & #ifdef REAL128 MAYBEWRAP ( json_file_add_real64 ), & #endif MAYBEWRAP ( json_file_add_logical ), & MAYBEWRAP ( json_file_add_string ), & MAYBEWRAP ( json_file_add_integer_vec ), & #ifndef REAL32 MAYBEWRAP ( json_file_add_real32_vec ), & #endif MAYBEWRAP ( json_file_add_real_vec ), & #ifdef REAL128 MAYBEWRAP ( json_file_add_real64_vec ), & #endif MAYBEWRAP ( json_file_add_logical_vec ), & MAYBEWRAP ( json_file_add_string_vec ) #ifdef USE_UCS4 generic , public :: add => json_file_add_string_path_ascii , & json_file_add_string_value_ascii ,& json_file_add_string_vec_path_ascii ,& json_file_add_string_vec_vec_ascii #endif !> ! Update a scalar variable in a [[json_file(type)]], ! by specifying the path. ! !@note These have been mostly supplanted by the `add` ! methods, which do a similar thing (and can be used for ! scalars and vectors, etc.) generic , public :: update => MAYBEWRAP ( json_file_update_integer ), & MAYBEWRAP ( json_file_update_logical ), & #ifndef REAL32 MAYBEWRAP ( json_file_update_real32 ), & #endif MAYBEWRAP ( json_file_update_real ), & #ifdef REAL128 MAYBEWRAP ( json_file_update_real64 ), & #endif MAYBEWRAP ( json_file_update_string ) #ifdef USE_UCS4 generic , public :: update => json_file_update_string_name_ascii , & json_file_update_string_val_ascii #endif !> ! Remove a variable from a [[json_file(type)]] ! by specifying the path. generic , public :: remove => MAYBEWRAP ( json_file_remove ) !traverse procedure , public :: traverse => json_file_traverse ! *************************************************** ! operators ! *************************************************** generic , public :: operator (. in .) => MAYBEWRAP ( json_file_valid_path_op ) procedure , pass ( me ) :: MAYBEWRAP ( json_file_valid_path_op ) generic , public :: assignment ( = ) => assign_json_file ,& assign_json_file_to_string ,& MAYBEWRAP ( assign_string_to_json_file ) procedure :: assign_json_file procedure , pass ( me ) :: assign_json_file_to_string procedure :: MAYBEWRAP ( assign_string_to_json_file ) ! *************************************************** ! private routines ! *************************************************** !load from string: procedure :: MAYBEWRAP ( json_file_load_from_string ) !initialize procedure :: initialize_json_core_in_file procedure :: set_json_core_in_file !get info: procedure :: MAYBEWRAP ( json_file_variable_info ) procedure :: MAYBEWRAP ( json_file_variable_matrix_info ) !rename: procedure :: MAYBEWRAP ( json_file_rename ) #ifdef USE_UCS4 procedure :: json_file_rename_path_ascii procedure :: json_file_rename_name_ascii #endif !validate path: procedure :: MAYBEWRAP ( json_file_valid_path ) !get: procedure :: MAYBEWRAP ( json_file_get_object ) procedure :: MAYBEWRAP ( json_file_get_integer ) #ifndef REAL32 procedure :: MAYBEWRAP ( json_file_get_real32 ) #endif procedure :: MAYBEWRAP ( json_file_get_real ) #ifdef REAL128 procedure :: MAYBEWRAP ( json_file_get_real64 ) #endif procedure :: MAYBEWRAP ( json_file_get_logical ) procedure :: MAYBEWRAP ( json_file_get_string ) procedure :: MAYBEWRAP ( json_file_get_integer_vec ) #ifndef REAL32 procedure :: MAYBEWRAP ( json_file_get_real32_vec ) #endif procedure :: MAYBEWRAP ( json_file_get_real_vec ) #ifdef REAL128 procedure :: MAYBEWRAP ( json_file_get_real64_vec ) #endif procedure :: MAYBEWRAP ( json_file_get_logical_vec ) procedure :: MAYBEWRAP ( json_file_get_string_vec ) procedure :: MAYBEWRAP ( json_file_get_alloc_string_vec ) procedure :: json_file_get_root !add: procedure :: json_file_add procedure :: MAYBEWRAP ( json_file_add_object ) procedure :: MAYBEWRAP ( json_file_add_integer ) #ifndef REAL32 procedure :: MAYBEWRAP ( json_file_add_real32 ) #endif procedure :: MAYBEWRAP ( json_file_add_real ) #ifdef REAL128 procedure :: MAYBEWRAP ( json_file_add_real64 ) #endif procedure :: MAYBEWRAP ( json_file_add_logical ) procedure :: MAYBEWRAP ( json_file_add_string ) procedure :: MAYBEWRAP ( json_file_add_integer_vec ) #ifndef REAL32 procedure :: MAYBEWRAP ( json_file_add_real32_vec ) #endif procedure :: MAYBEWRAP ( json_file_add_real_vec ) #ifdef REAL128 procedure :: MAYBEWRAP ( json_file_add_real64_vec ) #endif procedure :: MAYBEWRAP ( json_file_add_logical_vec ) procedure :: MAYBEWRAP ( json_file_add_string_vec ) #ifdef USE_UCS4 procedure :: json_file_add_string_path_ascii procedure :: json_file_add_string_value_ascii procedure :: json_file_add_string_vec_path_ascii procedure :: json_file_add_string_vec_vec_ascii #endif !update: procedure :: MAYBEWRAP ( json_file_update_integer ) procedure :: MAYBEWRAP ( json_file_update_logical ) #ifndef REAL32 procedure :: MAYBEWRAP ( json_file_update_real32 ) #endif procedure :: MAYBEWRAP ( json_file_update_real ) #ifdef REAL128 procedure :: MAYBEWRAP ( json_file_update_real64 ) #endif procedure :: MAYBEWRAP ( json_file_update_string ) #ifdef USE_UCS4 procedure :: json_file_update_string_name_ascii procedure :: json_file_update_string_val_ascii #endif !remove: procedure :: MAYBEWRAP ( json_file_remove ) !print: procedure :: json_file_print_to_console procedure :: json_file_print_to_unit procedure :: json_file_print_to_filename final :: finalize_json_file end type json_file !********************************************************* !********************************************************* !> author: Izaak Beekman ! date: 07/23/2015 ! ! Structure constructor to initialize a [[json_file(type)]] ! object with an existing [[json_value]] object or a JSON ! string, and either the [[json_core(type)]] settings or a ! [[json_core(type)]] instance. ! !### Example ! !```fortran ! ... ! type(json_file) :: my_file ! type(json_value),pointer :: json_object ! type(json_core) :: json_core_object ! ... ! ! Construct a json_object: ! !could do this: ! my_file = json_file(json_object) ! !or: ! my_file = json_file(json_object,verbose=.true.) ! !or: ! my_file = json_file('{\"x\": [1]}',verbose=.true.) ! !or: ! my_file = json_file(json_object,json_core_object) ! !or: ! my_file = json_file('{\"x\": [1]}',json_core_object) !``` interface json_file module procedure initialize_json_file , & initialize_json_file_v2 , & MAYBEWRAP ( initialize_json_file_from_string ), & MAYBEWRAP ( initialize_json_file_from_string_v2 ) end interface !************************************************************************************* contains !***************************************************************************************** !***************************************************************************************** !> ! Finalizer for [[json_file]] class. ! ! Just a wrapper for [[json_file_destroy]]. subroutine finalize_json_file ( me ) implicit none type ( json_file ), intent ( inout ) :: me call me % destroy ( destroy_core = . true .) end subroutine finalize_json_file !***************************************************************************************** !***************************************************************************************** !> ! Check error status in the file. pure function json_file_failed ( me ) result ( failed ) implicit none class ( json_file ), intent ( in ) :: me logical ( LK ) :: failed !! will be true if there has been an error. failed = me % core % failed () end function json_file_failed !***************************************************************************************** !***************************************************************************************** !> ! Retrieve error status and message from the class. subroutine json_file_check_for_errors ( me , status_ok , error_msg ) implicit none class ( json_file ), intent ( inout ) :: me logical ( LK ), intent ( out ), optional :: status_ok !! true if there were no errors character ( kind = CK , len = :), allocatable , intent ( out ), optional :: error_msg !! the error message !! (if there were errors) #if defined __GFORTRAN__ character ( kind = CK , len = :), allocatable :: tmp !! workaround for gfortran bugs call me % core % check_for_errors ( status_ok , tmp ) if ( present ( error_msg )) error_msg = tmp #else call me % core % check_for_errors ( status_ok , error_msg ) #endif end subroutine json_file_check_for_errors !***************************************************************************************** !***************************************************************************************** !> ! Clear exceptions in the class. pure subroutine json_file_clear_exceptions ( me ) implicit none class ( json_file ), intent ( inout ) :: me call me % core % clear_exceptions () end subroutine json_file_clear_exceptions !***************************************************************************************** !***************************************************************************************** !> ! This is a wrapper for [[json_print_error_message]]. subroutine json_file_print_error_message ( me , io_unit ) implicit none class ( json_file ), intent ( inout ) :: me integer , intent ( in ), optional :: io_unit call me % core % print_error_message ( io_unit ) end subroutine json_file_print_error_message !***************************************************************************************** !***************************************************************************************** !> ! Initialize the [[json_core(type)]] for this [[json_file]]. ! This is just a wrapper for [[json_initialize]]. ! !@note This does not destroy the data in the file. ! !@note [[initialize_json_core]], [[json_initialize]], ! [[initialize_json_core_in_file]], [[initialize_json_file]], ! [[initialize_json_file_v2]], [[initialize_json_file_from_string]], ! and [[initialize_json_file_from_string_v2]] ! all have a similar interface. subroutine initialize_json_core_in_file ( me ,& #include \"json_initialize_dummy_arguments.inc\" ) implicit none class ( json_file ), intent ( inout ) :: me #include \"json_initialize_arguments.inc\" call me % core % initialize (& #include \"json_initialize_dummy_arguments.inc\" ) end subroutine initialize_json_core_in_file !***************************************************************************************** !***************************************************************************************** !> ! Set the [[json_core(type)]] for this [[json_file]]. ! !@note This does not destroy the data in the file. ! !@note This one is used if you want to initialize the file with ! an already-existing [[json_core(type)]] (presumably, this was already ! initialized by a call to [[initialize_json_core]] or similar). subroutine set_json_core_in_file ( me , core ) implicit none class ( json_file ), intent ( inout ) :: me type ( json_core ), intent ( in ) :: core me % core = core end subroutine set_json_core_in_file !***************************************************************************************** !***************************************************************************************** !> ! Get a copy of the [[json_core(type)]] in this [[json_file]]. subroutine get_json_core_in_file ( me , core ) implicit none class ( json_file ), intent ( in ) :: me type ( json_core ), intent ( out ) :: core core = me % core end subroutine get_json_core_in_file !***************************************************************************************** !***************************************************************************************** !> author: Izaak Beekman ! date: 07/23/2015 ! ! Cast a [[json_value]] object as a [[json_file(type)]] object. ! It also calls the `initialize()` method. ! !@note [[initialize_json_core]], [[json_initialize]], ! [[initialize_json_core_in_file]], [[initialize_json_file]], ! [[initialize_json_file_v2]], [[initialize_json_file_from_string]], ! and [[initialize_json_file_from_string_v2]] ! all have a similar interface. function initialize_json_file ( p ,& #include \"json_initialize_dummy_arguments.inc\" , nullify_pointer & ) result ( file_object ) implicit none type ( json_file ) :: file_object type ( json_value ), pointer , optional :: p !! `json_value` object to cast !! as a `json_file` object. This !! will be nullified. #include \"json_initialize_arguments.inc\" logical ( LK ), intent ( in ), optional :: nullify_pointer !! if True, then `p` will be nullified !! if present. (default is True). Normally, !! this should be done, because the [[json_file]] will destroy !! the pointer when the class goes out of scope (causing `p` to be !! a dangling pointer). However, if the intent is to use `p` in !! a [[json_file]] and then call [[json_file:nullify]] and continue !! to use `p`, then this should be set to False. call file_object % initialize (& #include \"json_initialize_dummy_arguments.inc\" ) if ( present ( p )) then file_object % p => p ! we have to nullify it to avoid ! a dangling pointer when the file ! goes out of scope if ( present ( nullify_pointer )) then if ( nullify_pointer ) nullify ( p ) else nullify ( p ) end if end if end function initialize_json_file !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 4/26/2016 ! ! Cast a [[json_value]] pointer and a [[json_core(type)]] object ! as a [[json_file(type)]] object. function initialize_json_file_v2 ( json_value_object , json_core_object ) & result ( file_object ) implicit none type ( json_file ) :: file_object type ( json_value ), pointer , intent ( in ) :: json_value_object type ( json_core ), intent ( in ) :: json_core_object file_object % p => json_value_object file_object % core = json_core_object end function initialize_json_file_v2 !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 01/19/2019 ! ! Cast a JSON string as a [[json_file(type)]] object. ! It also calls the `initialize()` method. ! !### Example ! !```fortran ! type(json_file) :: f ! f = json_file('{\"key \": 1}', trailing_spaces_significant=.true.) !``` ! !@note [[initialize_json_core]], [[json_initialize]], ! [[initialize_json_core_in_file]], [[initialize_json_file]], ! [[initialize_json_file_v2]], [[initialize_json_file_from_string]], ! and [[initialize_json_file_from_string_v2]] ! all have a similar interface. function initialize_json_file_from_string ( str ,& #include \"json_initialize_dummy_arguments.inc\" ) result ( file_object ) implicit none type ( json_file ) :: file_object character ( kind = CK , len =* ), intent ( in ) :: str !! string to load JSON data from #include \"json_initialize_arguments.inc\" call file_object % initialize (& #include \"json_initialize_dummy_arguments.inc\" ) call file_object % deserialize ( str ) end function initialize_json_file_from_string !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[initialize_json_file_from_string]], where \"str\" is kind=CDK. function wrap_initialize_json_file_from_string ( str ,& #include \"json_initialize_dummy_arguments.inc\" ) result ( file_object ) implicit none type ( json_file ) :: file_object character ( kind = CDK , len =* ), intent ( in ) :: str !! string to load JSON data from #include \"json_initialize_arguments.inc\" file_object = initialize_json_file_from_string (& to_unicode ( str ),& #include \"json_initialize_dummy_arguments.inc\" ) end function wrap_initialize_json_file_from_string !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/19/2019 ! ! Cast a JSON string and a [[json_core(type)]] object ! as a [[json_file(type)]] object. function initialize_json_file_from_string_v2 ( str , json_core_object ) & result ( file_object ) implicit none type ( json_file ) :: file_object character ( kind = CK , len =* ), intent ( in ) :: str !! string to load JSON data from type ( json_core ), intent ( in ) :: json_core_object file_object % core = json_core_object call file_object % deserialize ( str ) end function initialize_json_file_from_string_v2 !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[initialize_json_file_from_string_v2]], where \"str\" is kind=CDK. function wrap_initialize_json_file_from_string_v2 ( str , json_core_object ) & result ( file_object ) implicit none type ( json_file ) :: file_object character ( kind = CDK , len =* ), intent ( in ) :: str !! string to load JSON data from type ( json_core ), intent ( in ) :: json_core_object file_object = initialize_json_file_from_string_v2 ( to_unicode ( str ), json_core_object ) end function wrap_initialize_json_file_from_string_v2 !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Nullify the [[json_value]] pointer in a [[json_file(type)]], ! but do not destroy it. ! ! This should normally only be done if the pointer is the target of ! another pointer outside the class that is still intended to be in ! scope after the [[json_file(type)]] has gone out of scope. ! Otherwise, this would result in a memory leak. ! !### See also ! * [[json_file_destroy]] ! !### History ! * 6/30/2019 : Created subroutine json_file_nullify ( me ) implicit none class ( json_file ), intent ( inout ) :: me nullify ( me % p ) end subroutine json_file_nullify !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Destroy the [[json_value]] data in a [[json_file(type)]]. ! This may be done when the variable is no longer needed, ! or will be reused to open a different file. ! Otherwise a memory leak will occur. ! ! Optionally, also destroy the [[json_core(type)]] instance (this ! is not necessary to prevent memory leaks, since a [[json_core(type)]] ! does not use pointers). ! !### See also ! * [[json_file_nullify]] ! !### History ! * 12/9/2013 : Created ! * 4/26/2016 : Added optional `destroy_core` argument ! !@note This routine will be called automatically when the variable ! goes out of scope. subroutine json_file_destroy ( me , destroy_core ) implicit none class ( json_file ), intent ( inout ) :: me logical , intent ( in ), optional :: destroy_core !! to also destroy the [[json_core(type)]]. !! default is to leave it as is. if ( associated ( me % p )) call me % core % destroy ( me % p ) if ( present ( destroy_core )) then if ( destroy_core ) call me % core % destroy () end if end subroutine json_file_destroy !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/5/2014 ! ! Move the [[json_value]] pointer from one [[json_file(type)]] to another. ! The \"from\" pointer is then nullified, but not destroyed. ! !@note If \"from%p\" is not associated, then an error is thrown. subroutine json_file_move_pointer ( to , from ) implicit none class ( json_file ), intent ( inout ) :: to class ( json_file ), intent ( inout ) :: from if ( associated ( from % p )) then if ( from % failed ()) then !Don't get the data if the FROM file has an !active exception, since it may not be valid. call to % core % throw_exception ( 'Error in json_file_move_pointer: ' // & 'error exception in FROM file.' ) else call to % initialize () !initialize and clear any exceptions that may be present to % p => from % p nullify ( from % p ) end if else call to % core % throw_exception ( 'Error in json_file_move_pointer: ' // & 'pointer is not associated.' ) end if end subroutine json_file_move_pointer !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/9/2013 ! ! Load the JSON data from a file. ! !### Example ! !```fortran ! program main ! use json_module ! implicit none ! type(json_file) :: f ! call f%load('my_file.json') ! !... ! call f%destroy() ! end program main !``` subroutine json_file_load ( me , filename , unit , destroy_pointer ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: filename !! the filename to open integer ( IK ), intent ( in ), optional :: unit !! the unit number to use !! (if not present, a newunit !! is used) logical ( LK ), intent ( in ), optional :: destroy_pointer !! destroy the pointer before !! loading (default is True) if ( present ( destroy_pointer )) then if ( destroy_pointer ) call me % destroy () else ! by default it is destroyed call me % destroy () end if call me % core % load ( file = filename , p = me % p , unit = unit ) end subroutine json_file_load !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/13/2015 ! ! Load the JSON data from a string. ! !### Example ! ! Load JSON from a string: !```fortran ! type(json_file) :: f ! call f%deserialize('{ \"name\": \"Leonidas\" }') !``` subroutine json_file_load_from_string ( me , str , destroy_pointer ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: str !! string to load JSON data from logical ( LK ), intent ( in ), optional :: destroy_pointer !! destroy the pointer before !! loading (default is True) if ( present ( destroy_pointer )) then if ( destroy_pointer ) call me % destroy () else ! by default it is destroyed call me % destroy () end if call me % core % deserialize ( me % p , str ) end subroutine json_file_load_from_string !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_load_from_string]], where \"str\" is kind=CDK. subroutine wrap_json_file_load_from_string ( me , str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: str call me % deserialize ( to_unicode ( str )) end subroutine wrap_json_file_load_from_string !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/11/2015 ! ! Print the JSON file to the console. subroutine json_file_print_to_console ( me ) implicit none class ( json_file ), intent ( inout ) :: me call me % core % print ( me % p , iunit = int ( output_unit , IK )) end subroutine json_file_print_to_console !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/9/2013 ! ! Prints the JSON file to the specified file unit number. subroutine json_file_print_to_unit ( me , iunit ) implicit none class ( json_file ), intent ( inout ) :: me integer ( IK ), intent ( in ) :: iunit !! file unit number (must not be -1) if ( iunit /= unit2str ) then call me % core % print ( me % p , iunit = iunit ) else call me % core % throw_exception ( 'Error in json_file_print_to_unit: iunit must not be -1.' ) end if end subroutine json_file_print_to_unit !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/11/2015 ! ! Print the JSON structure to the specified filename. ! The file is opened, printed, and then closed. ! !### Example ! Example loading a JSON file, changing a value, and then printing ! result to a new file: !```fortran ! type(json_file) :: f ! logical :: found ! call f%load('my_file.json') !open the original file ! call f%update('version',4,found) !change the value of a variable ! call f%print('my_file_2.json') !save file as new name !``` subroutine json_file_print_to_filename ( me , filename ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: filename !! filename to print to call me % core % print ( me % p , filename ) end subroutine json_file_print_to_filename !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/11/2015 ! ! Print the JSON file to a string. ! !### Example ! ! Open a JSON file, and then print the contents to a string: !```fortran ! type(json_file) :: f ! character(kind=CK,len=:),allocatable :: str ! call f%load('my_file.json') ! call f%serialize(str) !``` subroutine json_file_print_to_string ( me , str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len = :), allocatable , intent ( out ) :: str !! string to print JSON data to call me % core % serialize ( me % p , str ) end subroutine json_file_print_to_string !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 2/3/2014 ! ! Returns information about a variable in a [[json_file(type)]]. ! !@note 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. subroutine json_file_variable_info ( me , path , found , var_type , n_children , name ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable logical ( LK ), intent ( out ), optional :: found !! the variable exists in the structure integer ( IK ), intent ( out ), optional :: var_type !! variable type integer ( IK ), intent ( out ), optional :: n_children !! number of children character ( kind = CK , len = :), allocatable , intent ( out ), optional :: name !! variable name call me % core % info ( me % p , path , found , var_type , n_children , name ) end subroutine json_file_variable_info !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_variable_info]], where \"path\" is kind=CDK. ! !@note 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. subroutine wrap_json_file_variable_info ( me , path , found , var_type , n_children , name ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path logical ( LK ), intent ( out ), optional :: found integer ( IK ), intent ( out ), optional :: var_type integer ( IK ), intent ( out ), optional :: n_children character ( kind = CK , len = :), allocatable , intent ( out ), optional :: name !! variable name call me % info ( to_unicode ( path ), found , var_type , n_children , name ) end subroutine wrap_json_file_variable_info !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 6/26/2016 ! ! Returns matrix information about a variable in a [[json_file(type)]]. ! !@note 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. subroutine 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 = CK , 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 % core % matrix_info ( me % p , path , is_matrix , found , var_type , n_sets , set_size , name ) end subroutine json_file_variable_matrix_info !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_variable_matrix_info]], where \"path\" is kind=CDK. ! !@note 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. 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 !***************************************************************************************** !***************************************************************************************** !> author: Izaak Beekman ! date: 7/23/2015 ! ! Get a [[json_value]] pointer to the JSON file root. ! !@note This is equivalent to calling ```[[json_file]]%get('$',p)``` subroutine json_file_get_root ( me , p ) implicit none class ( json_file ), intent ( inout ) :: me type ( json_value ), pointer , intent ( out ) :: p !! pointer to the variable p => me % p end subroutine json_file_get_root !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Assignment operator for [[json_core(type)]] = [[json_core(type)]]. ! This will duplicate the [[json_core(type)]] and also ! perform a deep copy of the [[json_value(type)]] data structure. subroutine assign_json_file ( me , f ) implicit none class ( json_file ), intent ( out ) :: me type ( json_file ), intent ( in ) :: f me % core = f % core ! no pointers here so OK to copy call me % core % clone ( f % p , me % p ) end subroutine assign_json_file !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Assignment operator for character = [[json_core(type)]]. ! This is just a wrapper for the [[json_value_to_string]] routine. ! !### Note ! * If an exception is raised or the file contains no data, ! this will return an empty string. subroutine assign_json_file_to_string ( str , me ) implicit none character ( kind = CK , len = :), allocatable , intent ( out ) :: str class ( json_file ), intent ( in ) :: me type ( json_core ) :: core_copy !! a copy of `core` from `me` if ( me % core % failed () . or . . not . associated ( me % p )) then str = CK_ '' else ! This is sort of a hack. Since `me` has to have `intent(in)` ! for the assignment to work, we need to make a copy of `me%core` ! so we can call the low level routine (since it needs it to ! be `intent(inout)`) because it's possible for this ! function to raise an exception. core_copy = me % core ! copy the parser settings call core_copy % serialize ( me % p , str ) if ( me % core % failed ()) str = CK_ '' end if end subroutine assign_json_file_to_string !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Assignment operator for [[json_core(type)]] = character. ! This is just a wrapper for the [[json_file_load_from_string]] routine. subroutine assign_string_to_json_file ( me , str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: str if ( associated ( me % p )) call me % destroy () if ( me % core % failed ()) call me % core % clear_exceptions () call me % deserialize ( str ) end subroutine assign_string_to_json_file !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[assign_string_to_json_file]], where \"str\" is kind=CDK. subroutine wrap_assign_string_to_json_file ( me , str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: str call me % assign_string_to_json_file ( to_unicode ( str )) end subroutine wrap_assign_string_to_json_file !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! A wrapper for [[json_file_valid_path]] for the `.in.` operator function json_file_valid_path_op ( path , me ) result ( found ) implicit none character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable class ( json_file ), intent ( in ) :: me !! the JSON file logical ( LK ) :: found !! if the variable was found type ( json_core ) :: core_copy !! a copy of `core` from `me` ! This is sort of a hack. Since `me` has to have `intent(in)` ! for the operator to work, we need to make a copy of `me%core` ! so we can call the low level routine (since it needs it to ! be `intent(inout)`) because it's technically possible for this ! function to raise an exception. This normally should never ! happen here unless the JSON structure is malformed. core_copy = me % core ! copy the settings (need them to know ! how to interpret the path) found = core_copy % valid_path ( me % p , path ) ! call the low-level routine call core_copy % destroy () ! just in case (but not really necessary) end function json_file_valid_path_op !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_valid_path_op]], where \"path\" is kind=CDK. function wrap_json_file_valid_path_op ( path , me ) result ( found ) implicit none character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable class ( json_file ), intent ( in ) :: me !! the JSON file logical ( LK ) :: found !! if the variable was found found = to_unicode ( path ) . in . me end function wrap_json_file_valid_path_op !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Returns true if the `path` is present in the JSON file. function json_file_valid_path ( me , path ) result ( found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ) :: found !! if the variable was found found = me % core % valid_path ( me % p , path ) end function json_file_valid_path !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_valid_path]], where \"path\" is kind=CDK. function wrap_json_file_valid_path ( me , path ) result ( found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ) :: found !! if the variable was found found = me % valid_path ( to_unicode ( path )) end function wrap_json_file_valid_path !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Rename a variable in a JSON file. subroutine json_file_rename ( me , path , name , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), intent ( in ) :: name !! the new name logical ( LK ), intent ( out ), optional :: found !! if the variable was found call me % core % rename ( me % p , path , name , found ) end subroutine json_file_rename !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_rename]], where \"path\" and \"name\" are kind=CDK. subroutine wrap_json_file_rename ( me , path , name , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), intent ( in ) :: name !! the new name logical ( LK ), intent ( out ), optional :: found !! if the variable was found call me % json_file_rename ( to_unicode ( path ), to_unicode ( name ), found ) end subroutine wrap_json_file_rename !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Wrapper for [[json_file_rename]] where \"path\" is kind=CDK). subroutine json_file_rename_path_ascii ( me , path , name , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), intent ( in ) :: name !! the new name logical ( LK ), intent ( out ), optional :: found !! if the variable was found call me % json_file_rename ( to_unicode ( path ), name , found ) end subroutine json_file_rename_path_ascii !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Wrapper for [[json_file_rename]] where \"name\" is kind=CDK). subroutine json_file_rename_name_ascii ( me , path , name , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), intent ( in ) :: name !! the new name logical ( LK ), intent ( out ), optional :: found !! if the variable was found call me % json_file_rename ( path , to_unicode ( name ), found ) end subroutine json_file_rename_name_ascii !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 2/3/2014 ! ! Get a [[json_value]] pointer to an object from a JSON file. subroutine json_file_get_object ( me , path , p , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable type ( json_value ), pointer , intent ( out ) :: p !! pointer to the variable logical ( LK ), intent ( out ), optional :: found !! if it was really found call me % core % get ( me % p , path , p , found ) end subroutine json_file_get_object !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_get_object]], where \"path\" is kind=CDK. subroutine wrap_json_file_get_object ( me , path , p , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable type ( json_value ), pointer , intent ( out ) :: p !! pointer to the variable logical ( LK ), intent ( out ), optional :: found !! if it was really found call me % get ( to_unicode ( path ), p , found ) end subroutine wrap_json_file_get_object !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/9/2013 ! ! Get an integer value from a JSON file. subroutine json_file_get_integer ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found integer ( IK ), intent ( in ), optional :: default call me % core % get ( me % p , path , val , found , default ) end subroutine json_file_get_integer !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_get_integer]], where \"path\" is kind=CDK. subroutine wrap_json_file_get_integer ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found integer ( IK ), intent ( in ), optional :: default call me % get ( to_unicode ( path ), val , found , default ) end subroutine wrap_json_file_get_integer !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/20/2014 ! ! Get an integer vector from a JSON file. subroutine json_file_get_integer_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found integer ( IK ), dimension (:), intent ( in ), optional :: default call me % core % get ( me % p , path , vec , found , default ) end subroutine json_file_get_integer_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_get_integer_vec]], where \"path\" is kind=CDK. subroutine wrap_json_file_get_integer_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found integer ( IK ), dimension (:), intent ( in ), optional :: default call me % get ( to_unicode ( path ), vec , found , default ) end subroutine wrap_json_file_get_integer_vec !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/9/2013 ! ! Get a real(RK) variable value from a JSON file. subroutine json_file_get_real ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( RK ), intent ( in ), optional :: default call me % core % get ( me % p , path , val , found , default ) end subroutine json_file_get_real !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_get_real]], where \"path\" is kind=CDK. subroutine wrap_json_file_get_real ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( RK ), intent ( in ), optional :: default call me % get ( to_unicode ( path ), val , found , default ) end subroutine wrap_json_file_get_real !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/19/2014 ! ! Get a real(RK) vector from a JSON file. subroutine json_file_get_real_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( RK ), dimension (:), intent ( in ), optional :: default call me % core % get ( me % p , path , vec , found , default ) end subroutine json_file_get_real_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_get_real_vec]], where \"path\" is kind=CDK. subroutine wrap_json_file_get_real_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( RK ), dimension (:), intent ( in ), optional :: default call me % get ( to_unicode ( path ), vec , found , default ) end subroutine wrap_json_file_get_real_vec !***************************************************************************************** #ifndef REAL32 !***************************************************************************************** !> author: Jacob Williams ! date: 1/21/2019 ! ! Alternate version of [[json_file_get_real]] where `val` is `real32`. subroutine json_file_get_real32 ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( real32 ), intent ( in ), optional :: default call me % core % get ( me % p , path , val , found , default ) end subroutine json_file_get_real32 !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_get_real32]], where \"path\" is kind=CDK. subroutine wrap_json_file_get_real32 ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( real32 ), intent ( in ), optional :: default call me % get ( to_unicode ( path ), val , found , default ) end subroutine wrap_json_file_get_real32 !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/21/2019 ! ! Alternate version of [[json_file_get_real_vec]] where `vec` is `real32`. subroutine json_file_get_real32_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( real32 ), dimension (:), intent ( in ), optional :: default call me % core % get ( me % p , path , vec , found , default ) end subroutine json_file_get_real32_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_get_real32_vec]], where \"path\" is kind=CDK. subroutine wrap_json_file_get_real32_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( real32 ), dimension (:), intent ( in ), optional :: default call me % get ( to_unicode ( path ), vec , found , default ) end subroutine wrap_json_file_get_real32_vec !***************************************************************************************** #endif #ifdef REAL128 !***************************************************************************************** !> author: Jacob Williams ! date: 1/21/2019 ! ! Alternate version of [[json_file_get_real]] where `val` is `real64`. subroutine json_file_get_real64 ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real64 ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( real64 ), intent ( in ), optional :: default call me % core % get ( me % p , path , val , found , default ) end subroutine json_file_get_real64 !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_get_real64]], where \"path\" is kind=CDK. subroutine wrap_json_file_get_real64 ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real64 ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( real64 ), intent ( in ), optional :: default call me % get ( to_unicode ( path ), val , found , default ) end subroutine wrap_json_file_get_real64 !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/21/2019 ! ! Alternate version of [[json_file_get_real_vec]] where `vec` is `real64`. subroutine json_file_get_real64_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real64 ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( real64 ), dimension (:), intent ( in ), optional :: default call me % core % get ( me % p , path , vec , found , default ) end subroutine json_file_get_real64_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_get_real64_vec]], where \"path\" is kind=CDK. subroutine wrap_json_file_get_real64_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real64 ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found real ( real64 ), dimension (:), intent ( in ), optional :: default call me % get ( to_unicode ( path ), vec , found , default ) end subroutine wrap_json_file_get_real64_vec !***************************************************************************************** #endif !***************************************************************************************** !> author: Jacob Williams ! date: 12/9/2013 ! ! Get a logical(LK) value from a JSON file. subroutine json_file_get_logical ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found logical ( LK ), intent ( in ), optional :: default call me % core % get ( me % p , path , val , found , default ) end subroutine json_file_get_logical !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_get_logical]], where \"path\" is kind=CDK. subroutine wrap_json_file_get_logical ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found logical ( LK ), intent ( in ), optional :: default call me % get ( to_unicode ( path ), val , found , default ) end subroutine wrap_json_file_get_logical !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/20/2014 ! ! Get a logical(LK) vector from a JSON file. subroutine json_file_get_logical_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found logical ( LK ), dimension (:), intent ( in ), optional :: default call me % core % get ( me % p , path , vec , found , default ) end subroutine json_file_get_logical_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_get_logical_vec]], where \"path\" is kind=CDK. subroutine wrap_json_file_get_logical_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), dimension (:), allocatable , intent ( out ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found logical ( LK ), dimension (:), intent ( in ), optional :: default call me % get ( to_unicode ( path ), vec , found , default ) end subroutine wrap_json_file_get_logical_vec !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/9/2013 ! ! Get a character string from a json file. ! The output val is an allocatable character string. subroutine json_file_get_string ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len = :), allocatable , intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found character ( kind = CK , len =* ), intent ( in ), optional :: default call me % core % get ( me % p , path , val , found , default ) end subroutine json_file_get_string !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_get_string]], where \"path\" is kind=CDK. subroutine wrap_json_file_get_string ( me , path , val , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len = :), allocatable , intent ( out ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if it was really found character ( kind = CK , len =* ), intent ( in ), optional :: default call me % get ( to_unicode ( path ), val , found , default ) end subroutine wrap_json_file_get_string !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/19/2014 ! ! Get a string vector from a JSON file. subroutine json_file_get_string_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), dimension (:), allocatable , intent ( out ) :: vec !! value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found character ( kind = CK , len =* ), dimension (:), intent ( in ), optional :: default call me % core % get ( me % p , path , vec , found , default ) end subroutine json_file_get_string_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_get_string_vec]], where \"path\" is kind=CDK. subroutine wrap_json_file_get_string_vec ( me , path , vec , found , default ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), dimension (:), allocatable , intent ( out ) :: vec !! value vector logical ( LK ), intent ( out ), optional :: found !! if it was really found character ( kind = CK , len =* ), dimension (:), intent ( in ), optional :: default call me % get ( to_unicode ( path ), vec , found , default ) end subroutine wrap_json_file_get_string_vec !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/17/2016 ! ! Get an (allocatable length) string vector from a JSON file. ! This is just a wrapper for [[json_get_alloc_string_vec_by_path]]. subroutine json_file_get_alloc_string_vec ( me , path , vec , ilen , found , default , default_ilen ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len = :), dimension (:), allocatable , intent ( out ) :: vec !! value vector integer ( IK ), dimension (:), allocatable , intent ( out ) :: ilen !! the actual length !! of each character !! string in the array logical ( LK ), intent ( out ), optional :: found character ( kind = CK , len =* ), dimension (:), intent ( in ), optional :: default integer ( IK ), dimension (:), intent ( in ), optional :: default_ilen !! the actual !! length of `default` call me % core % get ( me % p , path , vec , ilen , found , default , default_ilen ) end subroutine json_file_get_alloc_string_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_get_alloc_string_vec]], where \"path\" is kind=CDK. ! This is just a wrapper for [[wrap_json_get_alloc_string_vec_by_path]]. subroutine wrap_json_file_get_alloc_string_vec ( me , path , vec , ilen , found , default , default_ilen ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len = :), dimension (:), allocatable , intent ( out ) :: vec !! value vector integer ( IK ), dimension (:), allocatable , intent ( out ) :: ilen !! the actual length !! of each character !! string in the array logical ( LK ), intent ( out ), optional :: found character ( kind = CK , len =* ), dimension (:), intent ( in ), optional :: default integer ( IK ), dimension (:), intent ( in ), optional :: default_ilen !! the actual !! length of `default` call me % get ( to_unicode ( path ), vec , ilen , found , default , default_ilen ) end subroutine wrap_json_file_get_alloc_string_vec !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Add a [[json_value]] pointer as the root object to a JSON file. ! !### Note ! ! This is mostly equivalent to: !```fortran ! f = [[json_file]](p) !``` ! But without the finalization calls. ! ! And: !```fortran ! if (destroy_original) call [[json_file]]%destroy() ! call [[json_file]]%add('$',p) !``` subroutine json_file_add ( me , p , destroy_original ) implicit none class ( json_file ), intent ( inout ) :: me type ( json_value ), pointer , intent ( in ) :: p !! pointer to the variable to add logical ( LK ), intent ( in ), optional :: destroy_original !! if the file currently contains !! an associated pointer, it is !! destroyed. [Default is True] logical ( LK ) :: destroy !! if `me%p` is to be destroyed if ( present ( destroy_original )) then destroy = destroy_original else destroy = . true . ! default end if if ( destroy ) call me % destroy () me % p => p end subroutine json_file_add !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Add a [[json_value]] pointer to an object to a JSON file. subroutine json_file_add_object ( me , path , p , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable type ( json_value ), pointer , intent ( in ) :: p !! pointer to the variable to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , p , found , was_created ) end subroutine json_file_add_object !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_object]], where \"path\" is kind=CDK. subroutine wrap_json_file_add_object ( me , path , p , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable type ( json_value ), pointer , intent ( in ) :: p !! pointer to the variable to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_object ( to_unicode ( path ), p , found , was_created ) end subroutine wrap_json_file_add_object !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Add an integer value to a JSON file. subroutine json_file_add_integer ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , val , found , was_created ) end subroutine json_file_add_integer !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_integer]], where \"path\" is kind=CDK. subroutine wrap_json_file_add_integer ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_integer ( to_unicode ( path ), val , found , was_created ) end subroutine wrap_json_file_add_integer !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Add an integer vector to a JSON file. subroutine json_file_add_integer_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , vec , found , was_created ) end subroutine json_file_add_integer_vec !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_integer_vec]], where \"path\" is kind=CDK. subroutine wrap_json_file_add_integer_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_integer_vec ( to_unicode ( path ), vec , found , was_created ) end subroutine wrap_json_file_add_integer_vec !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Add a real(RK) variable value to a JSON file. subroutine json_file_add_real ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , val , found , was_created ) end subroutine json_file_add_real !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_real]], where \"path\" is kind=CDK. subroutine wrap_json_file_add_real ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_real ( to_unicode ( path ), val , found , was_created ) end subroutine wrap_json_file_add_real !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Add a real(RK) vector to a JSON file. subroutine json_file_add_real_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , vec , found , was_created ) end subroutine json_file_add_real_vec !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_real_vec]], where \"path\" is kind=CDK. subroutine wrap_json_file_add_real_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_real_vec ( to_unicode ( path ), vec , found , was_created ) end subroutine wrap_json_file_add_real_vec !***************************************************************************************** #ifndef REAL32 !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_real]] where `val` is `real32`. subroutine json_file_add_real32 ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % core % add_by_path ( me % p , path , val , found , was_created ) end subroutine json_file_add_real32 !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_real32]], where \"path\" is kind=CDK. subroutine wrap_json_file_add_real32 ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_real32 ( to_unicode ( path ), val , found , was_created ) end subroutine wrap_json_file_add_real32 !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_real_vec]] where `vec` is `real32`. subroutine json_file_add_real32_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % core % add_by_path ( me % p , path , vec , found , was_created ) end subroutine json_file_add_real32_vec !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_real32_vec]], where \"path\" is kind=CDK. subroutine wrap_json_file_add_real32_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_real32_vec ( to_unicode ( path ), vec , found , was_created ) end subroutine wrap_json_file_add_real32_vec !***************************************************************************************** #endif #ifdef REAL128 !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_real]] where `val` is `real64`. subroutine json_file_add_real64 ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real64 ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % core % add_by_path ( me % p , path , val , found , was_created ) end subroutine json_file_add_real64 !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_real64]], where \"path\" is kind=CDK. subroutine wrap_json_file_add_real64 ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real64 ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_real64 ( to_unicode ( path ), val , found , was_created ) end subroutine wrap_json_file_add_real64 !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_real_vec]] where `vec` is `real64`. subroutine json_file_add_real64_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real64 ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % core % add_by_path ( me % p , path , vec , found , was_created ) end subroutine json_file_add_real64_vec !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_real64_vec]], where \"path\" is kind=CDK. subroutine wrap_json_file_add_real64_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real64 ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_real64_vec ( to_unicode ( path ), vec , found , was_created ) end subroutine wrap_json_file_add_real64_vec !***************************************************************************************** #endif !***************************************************************************************** !> author: Jacob Williams ! ! Add a logical(LK) value to a JSON file. subroutine json_file_add_logical ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , val , found , was_created ) end subroutine json_file_add_logical !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_logical]], where \"path\" is kind=CDK. subroutine wrap_json_file_add_logical ( me , path , val , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_logical ( to_unicode ( path ), val , found , was_created ) end subroutine wrap_json_file_add_logical !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Add a logical(LK) vector to a JSON file. subroutine json_file_add_logical_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , vec , found , was_created ) end subroutine json_file_add_logical_vec !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_logical_vec]], where \"path\" is kind=CDK. subroutine wrap_json_file_add_logical_vec ( me , path , vec , found , was_created ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call me % json_file_add_logical_vec ( to_unicode ( path ), vec , found , was_created ) end subroutine wrap_json_file_add_logical_vec !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Add a character string to a json file. subroutine json_file_add_string ( me , path , val , found , was_created , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (note that ADJUSTL is done before TRIM) if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , val , found , was_created , trim_str , adjustl_str ) end subroutine json_file_add_string !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_string]], where \"path\" and \"val\" are kind=CDK. subroutine wrap_json_file_add_string ( me , path , val , found , was_created , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (note that ADJUSTL is done before TRIM) call me % json_file_add_string ( to_unicode ( path ), to_unicode ( val ), found ,& was_created , trim_str , adjustl_str ) end subroutine wrap_json_file_add_string !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Wrapper for [[json_file_add_string]] where \"path\" is kind=CDK). subroutine json_file_add_string_path_ascii ( me , path , val , found ,& was_created , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (note that ADJUSTL is done before TRIM) if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % json_file_add_string ( to_unicode ( path ), val , found ,& was_created , trim_str , adjustl_str ) end subroutine json_file_add_string_path_ascii !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Wrapper for [[json_file_add_string]] where \"val\" is kind=CDK). subroutine json_file_add_string_value_ascii ( me , path , val , found ,& was_created , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), intent ( in ) :: val !! value logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (note that ADJUSTL is done before TRIM) if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % json_file_add_string ( path , to_unicode ( val ), found ,& was_created , trim_str , adjustl_str ) end subroutine json_file_add_string_value_ascii !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Add a string vector to a JSON file. subroutine json_file_add_string_vec ( me , path , vec , found ,& was_created , ilen , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created integer ( IK ), dimension (:), intent ( in ), optional :: ilen !! the string lengths of each !! element in `value`. If not present, !! the full `len(value)` string is added !! for each element. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element !! (note that ADJUSTL is done before TRIM) if (. not . associated ( me % p )) call me % core % create_object ( me % p , ck_ '' ) ! create root call me % core % add_by_path ( me % p , path , vec , found , was_created , ilen , trim_str , adjustl_str ) end subroutine json_file_add_string_vec !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_string_vec]], where \"path\" and \"vec\" are kind=CDK. subroutine wrap_json_file_add_string_vec ( me , path , vec , found ,& was_created , ilen , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created integer ( IK ), dimension (:), intent ( in ), optional :: ilen !! the string lengths of each !! element in `value`. If not present, !! the full `len(value)` string is added !! for each element. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element !! (note that ADJUSTL is done before TRIM) call me % json_file_add_string_vec ( to_unicode ( path ), to_unicode ( vec ), found ,& was_created , ilen , trim_str , adjustl_str ) end subroutine wrap_json_file_add_string_vec !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_string_vec]], where \"path\" is kind=CDK. subroutine json_file_add_string_vec_path_ascii ( me , path , vec , found ,& was_created , ilen , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created integer ( IK ), dimension (:), intent ( in ), optional :: ilen !! the string lengths of each !! element in `value`. If not present, !! the full `len(value)` string is added !! for each element. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element !! (note that ADJUSTL is done before TRIM) call me % json_file_add_string_vec ( to_unicode ( path ), vec , found ,& was_created , ilen , trim_str , adjustl_str ) end subroutine json_file_add_string_vec_path_ascii !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Alternate version of [[json_file_add_string_vec]], where \"vec\" is kind=CDK. subroutine json_file_add_string_vec_vec_ascii ( me , path , vec , found ,& was_created , ilen , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), dimension (:), intent ( in ) :: vec !! the value vector logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created integer ( IK ), dimension (:), intent ( in ), optional :: ilen !! the string lengths of each !! element in `value`. If not present, !! the full `len(value)` string is added !! for each element. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element !! (note that ADJUSTL is done before TRIM) call me % json_file_add_string_vec ( path , to_unicode ( vec ), found ,& was_created , ilen , trim_str , adjustl_str ) end subroutine json_file_add_string_vec_vec_ascii !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/10/2015 ! ! Given the path string, if the variable is present in the file, ! and is a scalar, then update its value. ! If it is not present, then create it and set its value. ! !### See also ! * [[json_update_integer]] subroutine json_file_update_integer ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path integer ( IK ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found if (. not . me % core % failed ()) call me % core % update ( me % p , path , val , found ) end subroutine json_file_update_integer !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_update_integer]], where \"path\" is kind=CDK. subroutine wrap_json_file_update_integer ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path integer ( IK ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found call me % update ( to_unicode ( path ), val , found ) end subroutine wrap_json_file_update_integer !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/10/2015 ! ! Given the path string, if the variable is present in the file, ! and is a scalar, then update its value. ! If it is not present, then create it and set its value. ! !### See also ! * [[json_update_logical]] subroutine json_file_update_logical ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path logical ( LK ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found if (. not . me % core % failed ()) call me % core % update ( me % p , path , val , found ) end subroutine json_file_update_logical !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_update_logical]], where \"path\" is kind=CDK. subroutine wrap_json_file_update_logical ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path logical ( LK ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found call me % update ( to_unicode ( path ), val , found ) end subroutine wrap_json_file_update_logical !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/10/2015 ! ! Given the path string, if the variable is present in the file, ! and is a scalar, then update its value. ! If it is not present, then create it and set its value. subroutine json_file_update_real ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path real ( RK ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found if (. not . me % core % failed ()) call me % core % update ( me % p , path , val , found ) end subroutine json_file_update_real !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_update_real]], where \"path\" is kind=CDK. subroutine wrap_json_file_update_real ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path real ( RK ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found call me % update ( to_unicode ( path ), val , found ) end subroutine wrap_json_file_update_real !***************************************************************************************** #ifndef REAL32 !***************************************************************************************** !> author: Jacob Williams ! date: 1/21/2019 ! ! Alternate version of [[json_file_update_real]] where `val` is `real32`. subroutine json_file_update_real32 ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path real ( real32 ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found call me % update ( path , real ( val , RK ), found ) end subroutine json_file_update_real32 !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_update_real32]], where \"path\" is kind=CDK. subroutine wrap_json_file_update_real32 ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path real ( real32 ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found call me % update ( to_unicode ( path ), val , found ) end subroutine wrap_json_file_update_real32 !***************************************************************************************** #endif #ifdef REAL128 !***************************************************************************************** !> author: Jacob Williams ! date: 1/21/2019 ! ! Alternate version of [[json_file_update_real]] where `val` is `real64`. subroutine json_file_update_real64 ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path real ( real64 ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found call me % update ( path , real ( val , RK ), found ) end subroutine json_file_update_real64 !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_update_real64]], where \"path\" is kind=CDK. subroutine wrap_json_file_update_real64 ( me , path , val , found ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path real ( real64 ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found call me % update ( to_unicode ( path ), val , found ) end subroutine wrap_json_file_update_real64 !***************************************************************************************** #endif !***************************************************************************************** !> author: Jacob Williams ! date: 1/10/2015 ! ! Given the path string, if the variable is present in the file, ! and is a scalar, then update its value. ! If it is not present, then create it and set its value. ! !### See also ! * [[json_update_string]] subroutine json_file_update_string ( me , path , val , found , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path character ( kind = CK , len =* ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (note that ADJUSTL is done before TRIM) if (. not . me % core % failed ()) call me % core % update ( me % p , path , val , found , trim_str , adjustl_str ) end subroutine json_file_update_string !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_update_string]], where \"path\" and \"val\" are kind=CDK. subroutine wrap_json_file_update_string ( me , path , val , found , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path character ( kind = CDK , len =* ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (note that ADJUSTL is done before TRIM) call me % update ( to_unicode ( path ), to_unicode ( val ), found , trim_str , adjustl_str ) end subroutine wrap_json_file_update_string !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_update_string]], where \"path\" is kind=CDK. subroutine json_file_update_string_name_ascii ( me , path , val , found , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path character ( kind = CK , len =* ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (note that ADJUSTL is done before TRIM) call me % update ( to_unicode ( path ), val , found , trim_str , adjustl_str ) end subroutine json_file_update_string_name_ascii !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_update_string]], where \"val\" is kind=CDK. subroutine json_file_update_string_val_ascii ( me , path , val , found , trim_str , adjustl_str ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path character ( kind = CDK , len =* ), intent ( in ) :: val logical ( LK ), intent ( out ) :: found logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (note that ADJUSTL is done before TRIM) call me % update ( path , to_unicode ( val ), found , trim_str , adjustl_str ) end subroutine json_file_update_string_val_ascii !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 6/11/2016 ! ! Traverse the JSON structure in the file. ! This routine calls the user-specified [[json_traverse_callback_func]] ! for each element of the structure. subroutine json_file_traverse ( me , traverse_callback ) implicit none class ( json_file ), intent ( inout ) :: me procedure ( json_traverse_callback_func ) :: traverse_callback call me % core % traverse ( me % p , traverse_callback ) end subroutine json_file_traverse !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 7/7/2018 ! ! Remove a variable from a JSON file. ! !@note This is just a wrapper to [[remove_if_present]]. subroutine json_file_remove ( me , path ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable call me % core % remove_if_present ( me % p , path ) end subroutine json_file_remove !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_file_remove]], where \"path\" is kind=CDK. subroutine wrap_json_file_remove ( me , path ) implicit none class ( json_file ), intent ( inout ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable call me % remove ( to_unicode ( path )) end subroutine wrap_json_file_remove !***************************************************************************************** !***************************************************************************************** end module json_file_module !*****************************************************************************************","tags":"","loc":"sourcefile/json_file_module.f90.html"},{"title":"json_parameters.F90 – JSON-Fortran","text":"This file depends on sourcefile~~json_parameters.f90~~EfferentGraph sourcefile~json_parameters.f90 json_parameters.F90 sourcefile~json_kinds.f90 json_kinds.F90 sourcefile~json_parameters.f90->sourcefile~json_kinds.f90 Help Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\nis dependent upon another if the latter must be compiled before the former\ncan be. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Files dependent on this one sourcefile~~json_parameters.f90~~AfferentGraph sourcefile~json_parameters.f90 json_parameters.F90 sourcefile~json_file_module.f90 json_file_module.F90 sourcefile~json_file_module.f90->sourcefile~json_parameters.f90 sourcefile~json_string_utilities.f90 json_string_utilities.F90 sourcefile~json_file_module.f90->sourcefile~json_string_utilities.f90 sourcefile~json_value_module.f90 json_value_module.F90 sourcefile~json_file_module.f90->sourcefile~json_value_module.f90 sourcefile~json_module.f90 json_module.F90 sourcefile~json_module.f90->sourcefile~json_parameters.f90 sourcefile~json_module.f90->sourcefile~json_file_module.f90 sourcefile~json_module.f90->sourcefile~json_string_utilities.f90 sourcefile~json_module.f90->sourcefile~json_value_module.f90 sourcefile~json_string_utilities.f90->sourcefile~json_parameters.f90 sourcefile~json_value_module.f90->sourcefile~json_parameters.f90 sourcefile~json_value_module.f90->sourcefile~json_string_utilities.f90 Help Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\nis dependent upon another if the latter must be compiled before the former\ncan be. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code !***************************************************************************************** !> author: Jacob Williams ! license: BSD ! ! Other parameters used by JSON-Fortran. ! This is a low-level module not meant to be used by a JSON-Fortran user. ! !### License ! * JSON-Fortran is released under a BSD-style license. ! See the [LICENSE](https://github.com/jacobwilliams/json-fortran/blob/master/LICENSE) ! file for details. module json_parameters use json_kinds implicit none public character ( kind = CDK , len =* ), parameter :: json_ext = '.json' !! JSON file extension ! The types of JSON data. integer ( IK ), parameter :: json_unknown = 0 !! Unknown JSON data type !! (see [[json_file_variable_info]] and [[json_info]]) integer ( IK ), parameter :: json_null = 1 !! Null JSON data type !! (see [[json_file_variable_info]] and [[json_info]]) integer ( IK ), parameter :: json_object = 2 !! Object JSON data type !! (see [[json_file_variable_info]] and [[json_info]]) integer ( IK ), parameter :: json_array = 3 !! Array JSON data type !! (see [[json_file_variable_info]] and [[json_info]]) integer ( IK ), parameter :: json_logical = 4 !! Logical JSON data type (`logical(LK)`) !! (see [[json_file_variable_info]] and [[json_info]]) integer ( IK ), parameter :: json_integer = 5 !! Integer JSON data type (`integer(IK)`) !! (see [[json_file_variable_info]] and [[json_info]]). integer ( IK ), parameter :: json_real = 6 !! Real number JSON data type (`real(RK)`) !! (see [[json_file_variable_info]] and [[json_info]]) integer ( IK ), parameter :: json_string = 7 !! String JSON data type (`character(kind=CK)`) !! (see [[json_file_variable_info]] and [[json_info]]) integer ( IK ), parameter :: json_double = json_real !! Equivalent to `json_real` for !! backward compatibility. !special JSON characters character ( kind = CK , len =* ), parameter :: space = CK_ ' ' !! space character character ( kind = CK , len =* ), parameter :: start_object = CK_ '{' !! start of a JSON object character ( kind = CK , len =* ), parameter :: end_object = CK_ '}' !! end of a JSON object character ( kind = CK , len =* ), parameter :: start_array = CK_ '[' !! start of a JSON array character ( kind = CK , len =* ), parameter :: end_array = CK_ ']' !! end of a JSON array character ( kind = CK , len =* ), parameter :: delimiter = CK_ ',' !! delimiter for JSON character ( kind = CK , len =* ), parameter :: colon_char = CK_ ':' !! colon character for JSON character ( kind = CK , len =* ), parameter :: start_array_alt = CK_ '(' !! alternate start of JSON array for !! [[json_get_by_path_default]] character ( kind = CK , len =* ), parameter :: end_array_alt = CK_ ')' !! alternate end of JSON array for !! [[json_get_by_path_default]] character ( kind = CK , len =* ), parameter :: root = achar ( 36 , kind = CK ) !! (`$`) root for [[json_get_by_path_default]] character ( kind = CK , len =* ), parameter :: this = CK_ '@' !! 'this' for [[json_get_by_path_default]] character ( kind = CK , len =* ), parameter :: dot = CK_ '.' !! path separator for [[json_get_by_path_default]] character ( kind = CK , len =* ), parameter :: tilde = CK_ '~' !! RFC 6901 escape character character ( kind = CK , len =* ), parameter :: single_quote = CK_ \"'\" !! for JSONPath bracket-notation character ( kind = CK , len =* ), parameter :: quotation_mark = CK_ '\"' !! JSON special character character ( kind = CK , len =* ), parameter :: bspace = achar ( 8 , kind = CK ) !! JSON special character character ( kind = CK , len =* ), parameter :: horizontal_tab = achar ( 9 , kind = CK ) !! JSON special character character ( kind = CK , len =* ), parameter :: newline = achar ( 10 , kind = CK ) !! JSON special character character ( kind = CK , len =* ), parameter :: formfeed = achar ( 12 , kind = CK ) !! JSON special character character ( kind = CK , len =* ), parameter :: carriage_return = achar ( 13 , kind = CK ) !! JSON special character character ( kind = CK , len =* ), parameter :: slash = achar ( 47 , kind = CK ) !! JSON special character character ( kind = CK , len =* ), parameter :: backslash = achar ( 92 , kind = CK ) !! JSON special character !> default real number format statement (for writing real values to strings and files). ! Note that this can be overridden by calling [[json_initialize]]. #ifdef REAL32 character ( kind = CDK , len =* ), parameter :: default_real_fmt = '(ss,E17.8E3)' #elif REAL128 character ( kind = CDK , len =* ), parameter :: default_real_fmt = '(ss,E46.35E5)' #else character ( kind = CDK , len =* ), parameter :: default_real_fmt = '(ss,E27.17E4)' #endif character ( kind = CK , len =* ), parameter :: star = CK_ '*' !! for invalid numbers and !! list-directed real output #if defined __GFORTRAN__ !not parameters due to gfortran bug (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65141) character ( kind = CK , len = 26 ), protected :: upper = CK_ 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' !! uppercase characters character ( kind = CK , len = 26 ), protected :: lower = CK_ 'abcdefghijklmnopqrstuvwxyz' !! lowercase characters #else character ( kind = CK , len =* ), parameter :: upper = CK_ 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' !! uppercase characters character ( kind = CK , len =* ), parameter :: lower = CK_ 'abcdefghijklmnopqrstuvwxyz' !! lowercase characters #endif #if defined __GFORTRAN__ !not parameters due to gfortran bug (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65141) character ( kind = CK , len = 4 ), protected :: null_str = CK_ 'null' !! JSON Null variable string character ( kind = CK , len = 4 ), protected :: true_str = CK_ 'true' !! JSON logical True string character ( kind = CK , len = 5 ), protected :: false_str = CK_ 'false' !! JSON logical False string #else character ( kind = CK , len =* ), parameter :: null_str = CK_ 'null' !! JSON Null variable string character ( kind = CK , len =* ), parameter :: true_str = CK_ 'true' !! JSON logical True string character ( kind = CK , len =* ), parameter :: false_str = CK_ 'false' !! JSON logical False string #endif integer , private :: i_ !! just a counter for `control_chars` array character ( kind = CK , len =* ), dimension ( 32 ), parameter :: control_chars = & [( achar ( i_ , kind = CK ), i_ = 1 , 31 ), achar ( 127 , kind = CK )] !! Control characters, possibly in unicode !find out the precision of the floating point number system !and set safety factors integer ( IK ), parameter :: rp_safety_factor = 1_IK integer ( IK ), parameter :: rp_addl_safety = 2_IK integer ( IK ), parameter :: real_precision = rp_safety_factor * precision ( 1.0_RK ) + & rp_addl_safety !Get the number of possible digits in the exponent when using decimal number system integer ( IK ), parameter :: maxexp = maxexponent ( 1.0_RK ) integer ( IK ), parameter :: minexp = minexponent ( 1.0_RK ) integer ( IK ), parameter :: real_exponent_digits = floor ( 1_IK + log10 ( & real ( max ( maxexp , abs ( maxexp )),& kind = RK ) ) ) integer ( IK ), parameter :: max_numeric_str_len = real_precision + real_exponent_digits + 6_IK !! 6 = sign + leading 0 + decimal + 'E' + exponent sign + 1 extra character ( kind = CDK , len =* ), parameter :: int_fmt = '(ss,I0)' !! minimum width format for integers integer ( IK ), parameter :: max_integer_str_len = 256_IK !! maximum string length of an integer. !! This is totally arbitrary (any way !! to get the compiler to tell us this?) integer ( IK ), parameter :: chunk_size = 256_IK !! for allocatable strings: allocate chunks of this size integer ( IK ), parameter :: unit2str = - 1_IK !! unit number to cause stuff to be !! output to strings rather than files. !! See 9.5.6.12 in the F2003/08 standard character ( kind = CK , len =* ), parameter :: blank_chunk = repeat ( space , chunk_size ) !! a blank string integer ( IK ), parameter :: seq_chunk_size = 256_IK !! chunk size for reading sequential files integer ( IK ), parameter :: stream_chunk_size = 256_IK !! chunk size for reading stream files integer ( IK ), parameter :: print_str_chunk_size = 1000_IK !! chunk size for writing JSON to a string integer ( IK ), parameter :: pushed_char_size = 10_IK !! size for `pushed_char` !! array in [[json_core(type)]] end module json_parameters !*****************************************************************************************","tags":"","loc":"sourcefile/json_parameters.f90.html"},{"title":"json_kinds.F90 – JSON-Fortran","text":"Files dependent on this one sourcefile~~json_kinds.f90~~AfferentGraph sourcefile~json_kinds.f90 json_kinds.F90 sourcefile~json_file_module.f90 json_file_module.F90 sourcefile~json_file_module.f90->sourcefile~json_kinds.f90 sourcefile~json_parameters.f90 json_parameters.F90 sourcefile~json_file_module.f90->sourcefile~json_parameters.f90 sourcefile~json_string_utilities.f90 json_string_utilities.F90 sourcefile~json_file_module.f90->sourcefile~json_string_utilities.f90 sourcefile~json_value_module.f90 json_value_module.F90 sourcefile~json_file_module.f90->sourcefile~json_value_module.f90 sourcefile~json_module.f90 json_module.F90 sourcefile~json_module.f90->sourcefile~json_kinds.f90 sourcefile~json_module.f90->sourcefile~json_file_module.f90 sourcefile~json_module.f90->sourcefile~json_parameters.f90 sourcefile~json_module.f90->sourcefile~json_string_utilities.f90 sourcefile~json_module.f90->sourcefile~json_value_module.f90 sourcefile~json_parameters.f90->sourcefile~json_kinds.f90 sourcefile~json_string_utilities.f90->sourcefile~json_kinds.f90 sourcefile~json_string_utilities.f90->sourcefile~json_parameters.f90 sourcefile~json_value_module.f90->sourcefile~json_kinds.f90 sourcefile~json_value_module.f90->sourcefile~json_parameters.f90 sourcefile~json_value_module.f90->sourcefile~json_string_utilities.f90 Help Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\nis dependent upon another if the latter must be compiled before the former\ncan be. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code !***************************************************************************************** !> author: Jacob Williams ! license: BSD ! ! JSON-Fortran kind definitions. ! !### License ! * JSON-Fortran is released under a BSD-style license. ! See the [LICENSE](https://github.com/jacobwilliams/json-fortran/blob/master/LICENSE) ! file for details. ! !@note ```-DUSE_UCS4``` is an optional preprocessor flag. ! When present, Unicode support is enabled. Note that this ! is currently only supported with the gfortran compiler. ! Example: ```gfortran -DUSE_UCS4 ... ``` #ifdef USE_UCS4 # pragma push_macro(\"USE_UCS4\") # undef USE_UCS4 ! The documentation given here assumes ```USE_UCS4``` **is** defined. # pragma pop_macro(\"USE_UCS4\") #else ! The documentation given here assumes ```USE_UCS4``` **is not** defined. #endif ! !@warning ```CK``` and ```CDK``` are the JSON-Fortran character kind and JSON-Fortran default ! character kind respectively. Client code **MUST** ensure characters of ```kind=CK``` ! are used for all character variables and strings passed to the JSON-Fortran ! library *EXCEPT* for file names which must be of ```'DEFAULT'``` character kind, ! provided here as ```CDK```. In particular, any variable that is a: json path, string ! value or object name passed to the JSON-Fortran library **MUST** be of type ```CK```. ! !@note Most string literal constants of default kind are fine to pass as arguments to ! JSON-Fortran procedures since they have been overloaded to accept ```intent(in)``` ! character arguments of the default (```CDK```) kind. If you find a procedure which does ! not accept an ```intent(in)``` literal string argument of default kind, please ! [file an issue](https://github.com/jacobwilliams/json-fortran/issues/new) on GitHub. ! !@note The default real kind (`RK`) and the default integer kind (`IK`) can be ! changed using optional preprocessor flags. This library was built with kinds: #ifdef REAL32 ! real(kind=real32) [4 bytes] #elif REAL64 ! real(kind=real64) [8 bytes] #elif REAL128 ! real(kind=real128) [16 bytes] #else ! real(kind=real64) [8 bytes] #endif ! and #ifdef INT8 ! integer(kind=int8) [1 byte] #elif INT16 ! integer(kind=int16) [2 bytes] #elif INT32 ! integer(kind=int32) [4 bytes] #elif INT64 ! integer(kind=int64) [8 bytes] #else ! integer(kind=int32) [4 bytes] #endif ! . ! !@note In addition to the real kind specified by `RK`, interfaces for ! the real kinds with less precision are also provided in the library, ! but all are converted to `real(RK)` variables internally. module json_kinds use , intrinsic :: iso_fortran_env implicit none private ! used for the reals with less precision ! than the default precision: #ifndef REAL32 public :: real32 #endif #ifdef REAL128 public :: real64 #endif #ifdef REAL32 integer , parameter , public :: RK = real32 !! Default real kind [4 bytes] #elif REAL64 integer , parameter , public :: RK = real64 !! Default real kind [8 bytes] #elif REAL128 integer , parameter , public :: RK = real128 !! Default real kind [16 bytes] #else integer , parameter , public :: RK = real64 !! Default real kind if not specified [8 bytes] #endif #ifdef INT8 integer , parameter , public :: IK = int8 !! Default integer kind [1 byte] #elif INT16 integer , parameter , public :: IK = int16 !! Default integer kind [2 bytes] #elif INT32 integer , parameter , public :: IK = int32 !! Default integer kind [4 bytes] #elif INT64 integer , parameter , public :: IK = int64 !! Default integer kind [8 bytes] #else integer , parameter , public :: IK = int32 !! Default integer kind if not specified [4 bytes] #endif !********************************************************* !> ! Processor dependent 'DEFAULT' character kind. ! This is 1 byte for the Intel and Gfortran compilers. integer , parameter , public :: CDK = selected_char_kind ( 'DEFAULT' ) !********************************************************* !********************************************************* !> ! Default logical kind. ! This is 4 bytes for the Intel and Gfortran compilers ! (and perhaps others). ! The declaration ensures a valid kind ! if the compiler doesn't have a logical_kinds(3). integer , parameter , public :: LK = logical_kinds ( min ( 3 , size ( logical_kinds ))) !********************************************************* !********************************************************* !> ! String kind preprocessor macro. #if defined __GFORTRAN__ && defined USE_UCS4 ! gfortran compiler AND UCS4 support requested: character ( kind = CDK , len =* ), parameter :: json_fortran_string_kind = 'ISO_10646' #else ! this is the string kind to use unless compiling with GFortran AND ! UCS4/ISO 10646 support is requested character ( kind = CDK , len =* ), parameter :: json_fortran_string_kind = 'DEFAULT' #endif !********************************************************* !********************************************************* !> ! Default character kind used by JSON-Fortran. ! If ISO 10646 (UCS4) support is available, use that, ! otherwise, gracefully fall back on 'DEFAULT' characters. ! Currently only gfortran >= 4.9.2 will correctly support ! UCS4 which is stored in 4 bytes. ! (and perhaps others). integer , parameter , public :: CK = selected_char_kind ( json_fortran_string_kind ) !********************************************************* end module json_kinds !*****************************************************************************************","tags":"","loc":"sourcefile/json_kinds.f90.html"},{"title":"json_value_module.F90 – JSON-Fortran","text":"This file depends on sourcefile~~json_value_module.f90~~EfferentGraph sourcefile~json_value_module.f90 json_value_module.F90 sourcefile~json_kinds.f90 json_kinds.F90 sourcefile~json_value_module.f90->sourcefile~json_kinds.f90 sourcefile~json_parameters.f90 json_parameters.F90 sourcefile~json_value_module.f90->sourcefile~json_parameters.f90 sourcefile~json_string_utilities.f90 json_string_utilities.F90 sourcefile~json_value_module.f90->sourcefile~json_string_utilities.f90 sourcefile~json_parameters.f90->sourcefile~json_kinds.f90 sourcefile~json_string_utilities.f90->sourcefile~json_kinds.f90 sourcefile~json_string_utilities.f90->sourcefile~json_parameters.f90 Help Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\nis dependent upon another if the latter must be compiled before the former\ncan be. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Files dependent on this one sourcefile~~json_value_module.f90~~AfferentGraph sourcefile~json_value_module.f90 json_value_module.F90 sourcefile~json_file_module.f90 json_file_module.F90 sourcefile~json_file_module.f90->sourcefile~json_value_module.f90 sourcefile~json_module.f90 json_module.F90 sourcefile~json_module.f90->sourcefile~json_value_module.f90 sourcefile~json_module.f90->sourcefile~json_file_module.f90 Help Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\nis dependent upon another if the latter must be compiled before the former\ncan be. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code !***************************************************************************************** !> author: Jacob Williams ! license: BSD ! ! This module provides a low-level interface for manipulation of JSON data. ! The two public entities are [[json_value]], and [[json_core(type)]]. ! The [[json_file_module]] provides a higher-level interface to some ! of these routines. ! !### License ! * JSON-Fortran is released under a BSD-style license. ! See the [LICENSE](https://github.com/jacobwilliams/json-fortran/blob/master/LICENSE) ! file for details. module json_value_module use , intrinsic :: iso_fortran_env , only : iostat_end , error_unit , output_unit use , intrinsic :: ieee_arithmetic use json_kinds use json_parameters use json_string_utilities implicit none private #include \"json_macros.inc\" !********************************************************* !> ! If Unicode is not enabled, then ! JSON files are opened using access='STREAM' and ! form='UNFORMATTED'. This allows the file to ! be read faster. ! #ifdef USE_UCS4 logical , parameter :: use_unformatted_stream = . false . #else logical , parameter :: use_unformatted_stream = . true . #endif !********************************************************* !********************************************************* !> ! If Unicode is not enabled, then ! JSON files are opened using access='STREAM' and ! form='UNFORMATTED'. This allows the file to ! be read faster. ! #ifdef USE_UCS4 character ( kind = CDK , len =* ), parameter :: access_spec = 'SEQUENTIAL' #else character ( kind = CDK , len =* ), parameter :: access_spec = 'STREAM' #endif !********************************************************* !********************************************************* !> ! If Unicode is not enabled, then ! JSON files are opened using access='STREAM' and ! form='UNFORMATTED'. This allows the file to ! be read faster. ! #ifdef USE_UCS4 character ( kind = CDK , len =* ), parameter :: form_spec = 'FORMATTED' #else character ( kind = CDK , len =* ), parameter :: form_spec = 'UNFORMATTED' #endif !********************************************************* !********************************************************* !> ! Type used to construct the linked-list JSON structure. ! Normally, this should always be a pointer variable. ! This type should only be used by an instance of [[json_core(type)]]. ! !### Example ! ! The following test program: ! !````fortran ! program test ! use json_module ! implicit none ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_object(p,'') !create the root ! call json%add(p,'year',1805) !add some data ! call json%add(p,'value',1.0_RK) !add some data ! call json%print(p,'test.json') !write it to a file ! call json%destroy(p) !cleanup ! end program test !```` ! ! Produces the JSON file **test.json**: ! !````json ! { ! \"year\": 1805, ! \"value\": 0.1E+1 ! } !```` ! !@warning Pointers of this type should only be allocated ! using the methods from [[json_core(type)]]. type , public :: json_value !force the constituents to be stored contiguously ![note: on Intel, the order of the variables below ! is significant to avoid the misaligned field warnings] sequence private !for the linked list: type ( json_value ), pointer :: previous => null () !! previous item in the list type ( json_value ), pointer :: next => null () !! next item in the list type ( json_value ), pointer :: parent => null () !! parent item of this type ( json_value ), pointer :: children => null () !! first child item of this type ( json_value ), pointer :: tail => null () !! last child item of this character ( kind = CK , len = :), allocatable :: name !! variable name (unescaped) real ( RK ), allocatable :: dbl_value !! real data for this variable logical ( LK ), allocatable :: log_value !! logical data for this variable character ( kind = CK , len = :), allocatable :: str_value !! string data for this variable !! (unescaped) integer ( IK ), allocatable :: int_value !! integer data for this variable integer ( IK ) :: var_type = json_unknown !! variable type integer ( IK ), private :: n_children = 0 !! number of children end type json_value !********************************************************* !********************************************************* !> ! To access the core routines for manipulation ! of [[json_value]] pointer variables. This class allows ! for thread safe use of the module. ! !### Usage !````fortran ! program test ! use json_module, wp=>json_RK ! implicit none ! type(json_core) :: json !<--have to declare this ! type(json_value),pointer :: p ! call json%create_object(p,'') !create the root ! call json%add(p,'year',1805) !add some data ! call json%add(p,'value',1.0_wp) !add some data ! call json%print(p,'test.json') !write it to a file ! call json%destroy(p) !cleanup ! end program test !```` type , public :: json_core private integer ( IK ) :: spaces_per_tab = 2 !! number of spaces for indenting logical ( LK ) :: compact_real = . true . !! to use the \"compact\" form of real !! numbers for output character ( kind = CDK , len = :), allocatable :: real_fmt !! the format string to use !! for converting real numbers to strings. !! It can be set in [[json_initialize]], !! and used in [[json_value_print]] !! If not set, then `default_real_fmt` !! is used instead. logical ( LK ) :: is_verbose = . false . !! if true, all exceptions are !! immediately printed to console. logical ( LK ) :: stop_on_error = . false . !! if true, then the program is !! stopped immediately when an !! exception is raised. logical ( LK ) :: exception_thrown = . false . !! The error flag. Will be set to true !! when an error is thrown in the class. !! Many of the methods will check this !! and return immediately if it is true. character ( kind = CK , len = :), allocatable :: err_message !! the error message. !! if `exception_thrown=False` then !! this variable is not allocated. integer ( IK ) :: char_count = 0 !! character position in the current line integer ( IK ) :: line_count = 1 !! lines read counter integer ( IK ) :: pushed_index = 0 !! used when parsing lines in file character ( kind = CK , len = pushed_char_size ) :: pushed_char = CK_ '' !! used when parsing !! lines in file integer ( IK ) :: ipos = 1 !! for allocatable strings: next character to read logical ( LK ) :: strict_type_checking = . false . !! if true, then no type conversions are done !! in the `get` routines if the actual variable !! type is different from the return type (for !! example, integer to real). logical ( LK ) :: trailing_spaces_significant = . false . !! for name and path comparisons, if trailing !! space is to be considered significant. logical ( LK ) :: case_sensitive_keys = . true . !! if name and path comparisons !! are case sensitive. logical ( LK ) :: no_whitespace = . false . !! when printing a JSON string, don't include !! non-significant spaces or line breaks. !! If true, the entire structure will be !! printed on one line. logical ( LK ) :: unescaped_strings = . true . !! If false, then the escaped !! string is returned from [[json_get_string]] !! and similar routines. If true [default], !! then the string is returned unescaped. logical ( LK ) :: allow_comments = . true . !! if true, any comments will be ignored when !! parsing a file. The comment tokens are defined !! by the `comment_char` character variable. character ( kind = CK , len = :), allocatable :: comment_char !! comment tokens when !! `allow_comments` is true. !! Examples: '`!`' or '`#`'. !! Default is `CK_'/!#'`. integer ( IK ) :: path_mode = 1_IK !! How the path strings are interpreted in the !! `get_by_path` routines: !! !! * 1 -- Default mode (see [[json_get_by_path_default]]) !! * 2 -- as RFC 6901 \"JSON Pointer\" paths !! (see [[json_get_by_path_rfc6901]]) !! * 3 -- JSONPath \"bracket-notation\" !! see [[json_get_by_path_jsonpath_bracket]]) character ( kind = CK , len = 1 ) :: path_separator = dot !! The `path` separator to use !! in the \"default\" mode for !! the paths in the various !! `get_by_path` routines. !! Note: if `path_mode/=1` !! then this is ignored. logical ( LK ) :: compress_vectors = . false . !! If true, then arrays of integers, !! nulls, reals, & logicals are !! printed all on one line. !! [Note: `no_whitespace` will !! override this option if necessary] logical ( LK ) :: allow_duplicate_keys = . true . !! If False, then after parsing, if any !! duplicate keys are found, an error is !! thrown. A call to [[json_value_validate]] !! will also check for duplicates. If True !! [default] then no special checks are done logical ( LK ) :: escape_solidus = . false . !! If True then the solidus \"`/`\" is always escaped !! (\"`\\/`\") when serializing JSON. !! If False [default], then it is not escaped. !! Note that this option does not affect parsing !! (both escaped and unescaped versions are still !! valid in all cases). integer ( IK ) :: null_to_real_mode = 2_IK !! if `strict_type_checking=false`: !! !! * 1 : an exception will be raised if !! try to retrieve a `null` as a real. !! * 2 : a `null` retrieved as a real !! will return NaN. [default] !! * 3 : a `null` retrieved as a real !! will return 0.0. logical ( LK ) :: non_normals_to_null = . false . !! How to serialize NaN, Infinity, !! and -Infinity real values: !! !! * If true : as JSON `null` values !! * If false : as strings (e.g., \"NaN\", !! \"Infinity\", \"-Infinity\") [default] logical ( LK ) :: use_quiet_nan = . true . !! if true [default], `null_to_real_mode=2` !! and [[string_to_real]] will use !! `ieee_quiet_nan` for NaN values. If false, !! `ieee_signaling_nan` will be used. logical ( LK ) :: strict_integer_type_checking = . true . !! * If false, when parsing JSON, if an integer numeric value !! cannot be converted to an integer (`integer(IK)`), !! then an attempt is then make to convert it !! to a real (`real(RK)`). !! * If true [default], an exception will be raised if an integer !! value cannot be read when parsing JSON. logical ( LK ) :: allow_trailing_comma = . true . !! Allow a single trailing comma in arrays and objects. integer :: ichunk = 0 !! index in `chunk` for [[pop_char]] !! when `use_unformatted_stream=True` integer :: filesize = 0 !! the file size when when `use_unformatted_stream=True` character ( kind = CK , len = :), allocatable :: chunk !! a chunk read from a stream file !! when `use_unformatted_stream=True` contains private !> ! Return a child of a [[json_value]] structure. generic , public :: get_child => json_value_get_child_by_index , & json_value_get_child ,& MAYBEWRAP ( json_value_get_child_by_name ) procedure , private :: json_value_get_child_by_index procedure , private :: MAYBEWRAP ( json_value_get_child_by_name ) procedure , private :: json_value_get_child !> ! Add objects to a linked list of [[json_value]]s. ! !@note It might make more sense to call this `add_child`. generic , public :: add => json_value_add_member , & MAYBEWRAP ( json_value_add_null ), & MAYBEWRAP ( json_value_add_integer ), & MAYBEWRAP ( json_value_add_integer_vec ), & #ifndef REAL32 MAYBEWRAP ( json_value_add_real32 ), & MAYBEWRAP ( json_value_add_real32_vec ), & #endif MAYBEWRAP ( json_value_add_real ), & MAYBEWRAP ( json_value_add_real_vec ), & #ifdef REAL128 MAYBEWRAP ( json_value_add_real64 ), & MAYBEWRAP ( json_value_add_real64_vec ), & #endif MAYBEWRAP ( json_value_add_logical ), & MAYBEWRAP ( json_value_add_logical_vec ), & MAYBEWRAP ( json_value_add_string ), & MAYBEWRAP ( json_value_add_string_vec ) #ifdef USE_UCS4 generic , public :: add => json_value_add_string_name_ascii , & json_value_add_string_val_ascii , & json_value_add_string_vec_name_ascii , & json_value_add_string_vec_val_ascii #endif procedure , private :: json_value_add_member procedure , private :: MAYBEWRAP ( json_value_add_integer ) procedure , private :: MAYBEWRAP ( json_value_add_null ) procedure , private :: MAYBEWRAP ( json_value_add_integer_vec ) #ifndef REAL32 procedure , private :: MAYBEWRAP ( json_value_add_real32 ) procedure , private :: MAYBEWRAP ( json_value_add_real32_vec ) #endif procedure , private :: MAYBEWRAP ( json_value_add_real ) procedure , private :: MAYBEWRAP ( json_value_add_real_vec ) #ifdef REAL128 procedure , private :: MAYBEWRAP ( json_value_add_real64 ) procedure , private :: MAYBEWRAP ( json_value_add_real64_vec ) #endif procedure , private :: MAYBEWRAP ( json_value_add_logical ) procedure , private :: MAYBEWRAP ( json_value_add_logical_vec ) procedure , private :: MAYBEWRAP ( json_value_add_string ) procedure , private :: MAYBEWRAP ( json_value_add_string_vec ) #ifdef USE_UCS4 procedure , private :: json_value_add_string_name_ascii procedure , private :: json_value_add_string_val_ascii procedure , private :: json_value_add_string_vec_name_ascii procedure , private :: json_value_add_string_vec_val_ascii #endif !> ! These are like the `add` methods, except if a variable with the ! same path is already present, then its value is simply updated. ! Note that currently, these only work for scalar variables. ! These routines can also change the variable's type (but an error will be ! thrown if the existing variable is not a scalar). ! !### See also ! * [[json_core(type):add_by_path]] - this one can be used to change ! arrays and objects to scalars if so desired. ! !@note Unlike some routines, the `found` output is not optional, ! so it doesn't present exceptions from being thrown. ! !@note These have been mostly supplanted by the [[json_core(type):add_by_path]] ! methods, which do a similar thing (and can be used for ! scalars and vectors, etc.) generic , public :: update => MAYBEWRAP ( json_update_logical ),& #ifndef REAL32 MAYBEWRAP ( json_update_real32 ),& #endif MAYBEWRAP ( json_update_real ),& #ifdef REAL128 MAYBEWRAP ( json_update_real64 ),& #endif MAYBEWRAP ( json_update_integer ),& MAYBEWRAP ( json_update_string ) #ifdef USE_UCS4 generic , public :: update => json_update_string_name_ascii ,& json_update_string_val_ascii #endif procedure , private :: MAYBEWRAP ( json_update_logical ) #ifndef REAL32 procedure , private :: MAYBEWRAP ( json_update_real32 ) #endif procedure , private :: MAYBEWRAP ( json_update_real ) #ifdef REAL128 procedure , private :: MAYBEWRAP ( json_update_real64 ) #endif procedure , private :: MAYBEWRAP ( json_update_integer ) procedure , private :: MAYBEWRAP ( json_update_string ) #ifdef USE_UCS4 procedure , private :: json_update_string_name_ascii procedure , private :: json_update_string_val_ascii #endif !> ! Add variables to a [[json_value]] linked list ! by specifying their paths. ! !### Example ! !````fortran ! use, intrinsic :: iso_fortran_env, only: output_unit ! use json_module, wp=>json_RK ! type(json_core) :: json ! type(json_value) :: p ! call json%create_object(p,'root') ! create the root ! ! now add some variables using the paths: ! call json%add_by_path(p,'inputs.t', 0.0_wp ) ! call json%add_by_path(p,'inputs.x(1)', 100.0_wp) ! call json%add_by_path(p,'inputs.x(2)', 200.0_wp) ! call json%print(p) ! now print to console !```` ! !### Notes ! * This uses [[json_create_by_path]] ! !### See also ! * The `json_core%update` methods. ! * [[json_create_by_path]] generic , public :: add_by_path => MAYBEWRAP ( json_add_member_by_path ),& MAYBEWRAP ( json_add_integer_by_path ),& #ifndef REAL32 MAYBEWRAP ( json_add_real32_by_path ),& #endif MAYBEWRAP ( json_add_real_by_path ),& #ifdef REAL128 MAYBEWRAP ( json_add_real64_by_path ),& #endif MAYBEWRAP ( json_add_logical_by_path ),& MAYBEWRAP ( json_add_string_by_path ),& MAYBEWRAP ( json_add_integer_vec_by_path ),& #ifndef REAL32 MAYBEWRAP ( json_add_real32_vec_by_path ),& #endif MAYBEWRAP ( json_add_real_vec_by_path ),& #ifdef REAL128 MAYBEWRAP ( json_add_real64_vec_by_path ),& #endif MAYBEWRAP ( json_add_logical_vec_by_path ),& MAYBEWRAP ( json_add_string_vec_by_path ) #ifdef USE_UCS4 generic , public :: add_by_path => json_add_string_by_path_value_ascii ,& json_add_string_by_path_path_ascii ,& json_add_string_vec_by_path_value_ascii ,& json_add_string_vec_by_path_path_ascii #endif procedure :: MAYBEWRAP ( json_add_member_by_path ) procedure :: MAYBEWRAP ( json_add_integer_by_path ) #ifndef REAL32 procedure :: MAYBEWRAP ( json_add_real32_by_path ) #endif procedure :: MAYBEWRAP ( json_add_real_by_path ) #ifdef REAL128 procedure :: MAYBEWRAP ( json_add_real64_by_path ) #endif procedure :: MAYBEWRAP ( json_add_logical_by_path ) procedure :: MAYBEWRAP ( json_add_string_by_path ) procedure :: MAYBEWRAP ( json_add_integer_vec_by_path ) #ifndef REAL32 procedure :: MAYBEWRAP ( json_add_real32_vec_by_path ) #endif procedure :: MAYBEWRAP ( json_add_real_vec_by_path ) #ifdef REAL128 procedure :: MAYBEWRAP ( json_add_real64_vec_by_path ) #endif procedure :: MAYBEWRAP ( json_add_logical_vec_by_path ) procedure :: MAYBEWRAP ( json_add_string_vec_by_path ) #ifdef USE_UCS4 procedure :: json_add_string_by_path_value_ascii procedure :: json_add_string_by_path_path_ascii procedure :: json_add_string_vec_by_path_value_ascii procedure :: json_add_string_vec_by_path_path_ascii #endif !> ! Create a [[json_value]] linked list using the ! path to the variables. Optionally return a ! pointer to the variable. ! ! (This will create a `null` variable) ! !### See also ! * [[json_core(type):add_by_path]] generic , public :: create => MAYBEWRAP ( json_create_by_path ) procedure :: MAYBEWRAP ( json_create_by_path ) !> ! Get data from a [[json_value]] linked list. ! !@note There are two versions (e.g. [[json_get_integer]] and [[json_get_integer_by_path]]). ! The first one gets the value from the [[json_value]] passed into the routine, ! while the second one gets the value from the [[json_value]] found by parsing the ! path. The path version is split up into unicode and non-unicode versions. generic , public :: get => & MAYBEWRAP ( json_get_by_path ), & json_get_integer , MAYBEWRAP ( json_get_integer_by_path ), & json_get_integer_vec , MAYBEWRAP ( json_get_integer_vec_by_path ), & #ifndef REAL32 json_get_real32 , MAYBEWRAP ( json_get_real32_by_path ), & json_get_real32_vec , MAYBEWRAP ( json_get_real32_vec_by_path ), & #endif json_get_real , MAYBEWRAP ( json_get_real_by_path ), & json_get_real_vec , MAYBEWRAP ( json_get_real_vec_by_path ), & #ifdef REAL128 json_get_real64 , MAYBEWRAP ( json_get_real64_by_path ), & json_get_real64_vec , MAYBEWRAP ( json_get_real64_vec_by_path ), & #endif json_get_logical , MAYBEWRAP ( json_get_logical_by_path ), & json_get_logical_vec , MAYBEWRAP ( json_get_logical_vec_by_path ), & json_get_string , MAYBEWRAP ( json_get_string_by_path ), & json_get_string_vec , MAYBEWRAP ( json_get_string_vec_by_path ), & json_get_alloc_string_vec , MAYBEWRAP ( json_get_alloc_string_vec_by_path ),& json_get_array , MAYBEWRAP ( json_get_array_by_path ) procedure , private :: json_get_integer procedure , private :: json_get_integer_vec #ifndef REAL32 procedure , private :: json_get_real32 procedure , private :: json_get_real32_vec #endif procedure , private :: json_get_real procedure , private :: json_get_real_vec #ifdef REAL128 procedure , private :: json_get_real64 procedure , private :: json_get_real64_vec #endif procedure , private :: json_get_logical procedure , private :: json_get_logical_vec procedure , private :: json_get_string procedure , private :: json_get_string_vec procedure , private :: json_get_alloc_string_vec procedure , private :: json_get_array procedure , private :: MAYBEWRAP ( json_get_by_path ) procedure , private :: MAYBEWRAP ( json_get_integer_by_path ) procedure , private :: MAYBEWRAP ( json_get_integer_vec_by_path ) #ifndef REAL32 procedure , private :: MAYBEWRAP ( json_get_real32_by_path ) procedure , private :: MAYBEWRAP ( json_get_real32_vec_by_path ) #endif procedure , private :: MAYBEWRAP ( json_get_real_by_path ) procedure , private :: MAYBEWRAP ( json_get_real_vec_by_path ) #ifdef REAL128 procedure , private :: MAYBEWRAP ( json_get_real64_by_path ) procedure , private :: MAYBEWRAP ( json_get_real64_vec_by_path ) #endif procedure , private :: MAYBEWRAP ( json_get_logical_by_path ) procedure , private :: MAYBEWRAP ( json_get_logical_vec_by_path ) procedure , private :: MAYBEWRAP ( json_get_string_by_path ) procedure , private :: MAYBEWRAP ( json_get_string_vec_by_path ) procedure , private :: MAYBEWRAP ( json_get_array_by_path ) procedure , private :: MAYBEWRAP ( json_get_alloc_string_vec_by_path ) procedure , private :: json_get_by_path_default procedure , private :: json_get_by_path_rfc6901 procedure , private :: json_get_by_path_jsonpath_bracket !> ! Print the [[json_value]] to an output unit or file. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value) :: p ! !... ! call json%print(p,'test.json') !this is [[json_print_to_filename]] !```` generic , public :: print => json_print_to_console ,& json_print_to_unit ,& json_print_to_filename procedure :: json_print_to_console procedure :: json_print_to_unit procedure :: json_print_to_filename !> ! Destructor routine for a [[json_value]] pointer. ! This must be called explicitly if it is no longer needed, ! before it goes out of scope. Otherwise, a memory leak will result. ! !### Example ! ! Destroy the [[json_value]] pointer before the variable goes out of scope: !````fortran ! subroutine example1() ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_object(p,'') ! call json%add(p,'year',2015) ! call json%print(p) ! call json%destroy(p) ! end subroutine example1 !```` ! ! Note: it should NOT be called for a [[json_value]] pointer than has already been ! added to another [[json_value]] structure, since doing so may render the ! other structure invalid. Consider the following example: !````fortran ! subroutine example2(p) ! type(json_core) :: json ! type(json_value),pointer,intent(out) :: p ! type(json_value),pointer :: q ! call json%create_object(p,'') ! call json%add(p,'year',2015) ! call json%create_object(q,'q') ! call json%add(q,'val',1) ! call json%add(p, q) !add q to p structure ! ! do NOT call json%destroy(q) here, because q is ! ! now part of the output structure p. p should be destroyed ! ! somewhere upstream by the caller of this routine. ! nullify(q) !OK, but not strictly necessary ! end subroutine example2 !```` generic , public :: destroy => json_value_destroy , destroy_json_core procedure :: json_value_destroy procedure :: destroy_json_core !> ! If the child variable is present, then remove it. generic , public :: remove_if_present => MAYBEWRAP ( json_value_remove_if_present ) procedure :: MAYBEWRAP ( json_value_remove_if_present ) !> ! Allocate a [[json_value]] pointer and make it a real variable. ! The pointer should not already be allocated. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_real(p,'value',1.0_RK) !```` ! !### Note ! * [[json_core(type):create_real]] is just an alias ! to this one for backward compatibility. generic , public :: create_real => MAYBEWRAP ( json_value_create_real ) procedure :: MAYBEWRAP ( json_value_create_real ) #ifndef REAL32 generic , public :: create_real => MAYBEWRAP ( json_value_create_real32 ) procedure :: MAYBEWRAP ( json_value_create_real32 ) #endif #ifdef REAL128 generic , public :: create_real => MAYBEWRAP ( json_value_create_real64 ) procedure :: MAYBEWRAP ( json_value_create_real64 ) #endif !> ! This is equivalent to [[json_core(type):create_real]], ! and is here only for backward compatibility. generic , public :: create_double => MAYBEWRAP ( json_value_create_real ) #ifndef REAL32 generic , public :: create_double => MAYBEWRAP ( json_value_create_real32 ) #endif #ifdef REAL128 generic , public :: create_double => MAYBEWRAP ( json_value_create_real64 ) #endif !> ! Allocate a [[json_value]] pointer and make it an array variable. ! The pointer should not already be allocated. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_array(p,'arrayname') !```` generic , public :: create_array => MAYBEWRAP ( json_value_create_array ) procedure :: MAYBEWRAP ( json_value_create_array ) !> ! Allocate a [[json_value]] pointer and make it an object variable. ! The pointer should not already be allocated. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_object(p,'objectname') !```` ! !@note The name is not significant for the root structure or an array element. ! In those cases, an empty string can be used. generic , public :: create_object => MAYBEWRAP ( json_value_create_object ) procedure :: MAYBEWRAP ( json_value_create_object ) !> ! Allocate a json_value pointer and make it a null variable. ! The pointer should not already be allocated. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_null(p,'value') !```` generic , public :: create_null => MAYBEWRAP ( json_value_create_null ) procedure :: MAYBEWRAP ( json_value_create_null ) !> ! Allocate a json_value pointer and make it a string variable. ! The pointer should not already be allocated. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_string(p,'value','foobar') !```` generic , public :: create_string => MAYBEWRAP ( json_value_create_string ) procedure :: MAYBEWRAP ( json_value_create_string ) !> ! Allocate a json_value pointer and make it an integer variable. ! The pointer should not already be allocated. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_integer(p,42,'value') !```` generic , public :: create_integer => MAYBEWRAP ( json_value_create_integer ) procedure :: MAYBEWRAP ( json_value_create_integer ) !> ! Allocate a json_value pointer and make it a logical variable. ! The pointer should not already be allocated. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%create_logical(p,'value',.true.) !```` generic , public :: create_logical => MAYBEWRAP ( json_value_create_logical ) procedure :: MAYBEWRAP ( json_value_create_logical ) !> ! Parse the JSON file and populate the [[json_value]] tree. generic , public :: load => json_parse_file procedure :: json_parse_file !> ! Print the [[json_value]] structure to an allocatable string procedure , public :: serialize => json_value_to_string !> ! The same as `serialize`, but only here for backward compatibility procedure , public :: print_to_string => json_value_to_string !> ! Parse the JSON string and populate the [[json_value]] tree. generic , public :: deserialize => MAYBEWRAP ( json_parse_string ) procedure :: MAYBEWRAP ( json_parse_string ) !> ! Same as `load` and `deserialize` but only here for backward compatibility. generic , public :: parse => json_parse_file , & MAYBEWRAP ( json_parse_string ) !> ! Throw an exception. generic , public :: throw_exception => MAYBEWRAP ( json_throw_exception ) procedure :: MAYBEWRAP ( json_throw_exception ) !> ! Rename a [[json_value]] variable. generic , public :: rename => MAYBEWRAP ( json_value_rename ),& MAYBEWRAP ( json_rename_by_path ) procedure :: MAYBEWRAP ( json_value_rename ) procedure :: MAYBEWRAP ( json_rename_by_path ) #ifdef USE_UCS4 generic , public :: rename => json_rename_by_path_name_ascii ,& json_rename_by_path_path_ascii procedure :: json_rename_by_path_name_ascii procedure :: json_rename_by_path_path_ascii #endif !> ! get info about a [[json_value]] generic , public :: info => json_info , MAYBEWRAP ( json_info_by_path ) procedure :: json_info procedure :: MAYBEWRAP ( json_info_by_path ) !> ! get string info about a [[json_value]] generic , public :: string_info => json_string_info procedure :: json_string_info !> ! get matrix info about a [[json_value]] generic , public :: matrix_info => json_matrix_info , MAYBEWRAP ( json_matrix_info_by_path ) procedure :: json_matrix_info procedure :: MAYBEWRAP ( json_matrix_info_by_path ) !> ! insert a new element after an existing one, ! updating the JSON structure accordingly generic , public :: insert_after => json_value_insert_after , & json_value_insert_after_child_by_index procedure :: json_value_insert_after procedure :: json_value_insert_after_child_by_index !> ! get the path to a JSON variable in a structure: generic , public :: get_path => MAYBEWRAP ( json_get_path ) procedure :: MAYBEWRAP ( json_get_path ) !> ! verify if a path is valid ! (i.e., a variable with this path exists in the file). generic , public :: valid_path => MAYBEWRAP ( json_valid_path ) procedure :: MAYBEWRAP ( json_valid_path ) procedure , public :: remove => json_value_remove !! Remove a [[json_value]] from a !! linked-list structure. procedure , public :: replace => json_value_replace !! Replace a [[json_value]] in a !! linked-list structure. procedure , public :: reverse => json_value_reverse !! Reverse the order of the children !! of an array of object. procedure , public :: check_for_errors => json_check_for_errors !! check for error and get error message procedure , public :: clear_exceptions => json_clear_exceptions !! clear exceptions procedure , public :: count => json_count !! count the number of children procedure , public :: clone => json_clone !! clone a JSON structure (deep copy) procedure , public :: failed => json_failed !! check for error procedure , public :: get_parent => json_get_parent !! get pointer to json_value parent procedure , public :: get_next => json_get_next !! get pointer to json_value next procedure , public :: get_previous => json_get_previous !! get pointer to json_value previous procedure , public :: get_tail => json_get_tail !! get pointer to json_value tail procedure , public :: initialize => json_initialize !! to initialize some parsing parameters procedure , public :: traverse => json_traverse !! to traverse all elements of a JSON !! structure procedure , public :: print_error_message => json_print_error_message !! simply routine to print error !! messages procedure , public :: swap => json_value_swap !! Swap two [[json_value]] pointers !! in a structure (or two different !! structures). procedure , public :: is_child_of => json_value_is_child_of !! Check if a [[json_value]] is a !! descendant of another. procedure , public :: validate => json_value_validate !! Check that a [[json_value]] linked !! list is valid (i.e., is properly !! constructed). This may be useful !! if it has been constructed externally. procedure , public :: check_for_duplicate_keys & => json_check_all_for_duplicate_keys !! Check entire JSON structure !! for duplicate keys (recursively) procedure , public :: check_children_for_duplicate_keys & => json_check_children_for_duplicate_keys !! Check a `json_value` object's !! children for duplicate keys !other private routines: procedure :: name_equal procedure :: name_strings_equal procedure :: json_value_print procedure :: string_to_int procedure :: string_to_dble procedure :: prepare_parser => json_prepare_parser procedure :: parse_end => json_parse_end procedure :: parse_value procedure :: parse_number procedure :: parse_string procedure :: parse_for_chars procedure :: parse_object procedure :: parse_array procedure :: annotate_invalid_json procedure :: pop_char procedure :: push_char procedure :: get_current_line_from_file_stream procedure , nopass :: get_current_line_from_file_sequential procedure :: convert procedure :: to_string procedure :: to_logical procedure :: to_integer procedure :: to_real procedure :: to_null procedure :: to_object procedure :: to_array procedure , nopass :: json_value_clone_func procedure :: is_vector => json_is_vector end type json_core !********************************************************* !********************************************************* !> ! Structure constructor to initialize a ! [[json_core(type)]] object ! !### Example ! !```fortran ! type(json_file) :: json_core ! json_core = json_core() !``` interface json_core module procedure initialize_json_core end interface !********************************************************* !************************************************************************************* abstract interface subroutine json_array_callback_func ( json , element , i , count ) !! Array element callback function. Used by [[json_get_array]] import :: json_value , json_core , IK implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: element integer ( IK ), intent ( in ) :: i !! index integer ( IK ), intent ( in ) :: count !! size of array end subroutine json_array_callback_func subroutine json_traverse_callback_func ( json , p , finished ) !! Callback function used by [[json_traverse]] import :: json_value , json_core , LK implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p logical ( LK ), intent ( out ) :: finished !! set true to stop traversing end subroutine json_traverse_callback_func end interface public :: json_array_callback_func public :: json_traverse_callback_func !************************************************************************************* contains !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 4/17/2016 ! ! Destructor for the [[json_core(type)]] type. subroutine destroy_json_core ( me ) implicit none class ( json_core ), intent ( out ) :: me end subroutine destroy_json_core !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 4/26/2016 ! ! Function constructor for a [[json_core(type)]]. ! This is just a wrapper for [[json_initialize]]. ! !@note [[initialize_json_core]], [[json_initialize]], ! [[initialize_json_core_in_file]], and [[initialize_json_file]] ! all have a similar interface. function initialize_json_core (& #include \"json_initialize_dummy_arguments.inc\" ) result ( json_core_object ) implicit none type ( json_core ) :: json_core_object #include \"json_initialize_arguments.inc\" call json_core_object % initialize (& #include \"json_initialize_dummy_arguments.inc\" ) end function initialize_json_core !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/4/2013 ! ! Initialize the [[json_core(type)]] instance. ! ! The routine may be called before any of the [[json_core(type)]] methods are used in ! order to specify certain parameters. If it is not called, then the defaults ! are used. This routine is also called internally by various routines. ! It can also be called to clear exceptions, or to reset some ! of the variables (note that only the arguments present are changed). ! !### Modified ! * Izaak Beekman : 02/24/2015 ! !@note [[initialize_json_core]], [[json_initialize]], ! [[initialize_json_core_in_file]], and [[initialize_json_file]] ! all have a similar interface. subroutine json_initialize ( me ,& #include \"json_initialize_dummy_arguments.inc\" ) implicit none class ( json_core ), intent ( inout ) :: me #include \"json_initialize_arguments.inc\" character ( kind = CDK , len = 10 ) :: w !! max string length character ( kind = CDK , len = 10 ) :: d !! real precision digits character ( kind = CDK , len = 10 ) :: e !! real exponent digits character ( kind = CDK , len = 2 ) :: sgn !! sign flag: `ss` or `sp` character ( kind = CDK , len = 2 ) :: rl_edit_desc !! `G`, `E`, `EN`, or `ES` integer ( IK ) :: istat !! `iostat` flag for !! write statements logical ( LK ) :: sgn_prnt !! print sign flag character ( kind = CK , len = max_integer_str_len ) :: istr !! for integer to !! string conversion !reset exception to false: call me % clear_exceptions () !Just in case, clear these global variables also: me % pushed_index = 0 me % pushed_char = CK_ '' me % char_count = 0 me % line_count = 1 me % ipos = 1 if ( use_unformatted_stream ) then me % filesize = 0 me % ichunk = 0 me % chunk = repeat ( space , stream_chunk_size ) ! default chunk size end if #ifdef USE_UCS4 ! reopen stdout and stderr with utf-8 encoding open ( output_unit , encoding = 'utf-8' ) open ( error_unit , encoding = 'utf-8' ) #endif !various optional inputs: if ( present ( spaces_per_tab )) & me % spaces_per_tab = spaces_per_tab if ( present ( stop_on_error )) & me % stop_on_error = stop_on_error if ( present ( verbose )) & me % is_verbose = verbose if ( present ( strict_type_checking )) & me % strict_type_checking = strict_type_checking if ( present ( trailing_spaces_significant )) & me % trailing_spaces_significant = trailing_spaces_significant if ( present ( case_sensitive_keys )) & me % case_sensitive_keys = case_sensitive_keys if ( present ( no_whitespace )) & me % no_whitespace = no_whitespace if ( present ( unescape_strings )) & me % unescaped_strings = unescape_strings if ( present ( path_mode )) then if ( path_mode == 1_IK . or . path_mode == 2_IK . or . path_mode == 3_IK ) then me % path_mode = path_mode else me % path_mode = 1_IK ! just to have a valid value call me % throw_exception ( 'Invalid path_mode.' ) end if end if ! if we are allowing comments in the file: ! [an empty string disables comments] if ( present ( comment_char )) then me % allow_comments = comment_char /= CK_ '' me % comment_char = trim ( adjustl ( comment_char )) end if ! path separator: if ( present ( path_separator )) then me % path_separator = path_separator end if ! printing vectors in compressed form: if ( present ( compress_vectors )) then me % compress_vectors = compress_vectors end if ! checking for duplicate keys: if ( present ( allow_duplicate_keys )) then me % allow_duplicate_keys = allow_duplicate_keys end if ! if escaping the forward slash: if ( present ( escape_solidus )) then me % escape_solidus = escape_solidus end if ! how to handle null to real conversions: if ( present ( null_to_real_mode )) then select case ( null_to_real_mode ) case ( 1_IK : 3_IK ) me % null_to_real_mode = null_to_real_mode case default me % null_to_real_mode = 2_IK ! just to have a valid value call integer_to_string ( null_to_real_mode , int_fmt , istr ) call me % throw_exception ( 'Invalid null_to_real_mode: ' // istr ) end select end if ! how to handle NaN and Infinities: if ( present ( non_normal_mode )) then select case ( non_normal_mode ) case ( 1_IK ) ! use strings me % non_normals_to_null = . false . case ( 2_IK ) ! use null me % non_normals_to_null = . true . case default call integer_to_string ( non_normal_mode , int_fmt , istr ) call me % throw_exception ( 'Invalid non_normal_mode: ' // istr ) end select end if if ( present ( use_quiet_nan )) then me % use_quiet_nan = use_quiet_nan end if if ( present ( strict_integer_type_checking )) then me % strict_integer_type_checking = strict_integer_type_checking end if if ( present ( allow_trailing_comma )) then me % allow_trailing_comma = allow_trailing_comma end if !Set the format for real numbers: ! [if not changing it, then it remains the same] if ( (. not . allocated ( me % real_fmt )) . or . & ! if this hasn't been done yet present ( compact_reals ) . or . & present ( print_signs ) . or . & present ( real_format ) ) then !allow the special case where real format is '*': ! [this overrides the other options] if ( present ( real_format )) then if ( real_format == star ) then if ( present ( compact_reals )) then ! we will also allow for compact reals with ! '*' format, if both arguments are present. me % compact_real = compact_reals else me % compact_real = . false . end if me % real_fmt = star return end if end if if ( present ( compact_reals )) me % compact_real = compact_reals !set defaults sgn_prnt = . false . if ( present ( print_signs ) ) sgn_prnt = print_signs if ( sgn_prnt ) then sgn = 'sp' else sgn = 'ss' end if rl_edit_desc = 'E' if ( present ( real_format ) ) then select case ( real_format ) case ( 'g' , 'G' , 'e' , 'E' , 'en' , 'EN' , 'es' , 'ES' ) rl_edit_desc = real_format case default call me % throw_exception ( 'Invalid real format, \"' // & trim ( real_format ) // '\", passed to json_initialize.' // & new_line ( 'a' ) // 'Acceptable formats are: \"G\", \"E\", \"EN\", and \"ES\".' ) end select end if ! set the default output/input format for reals: write ( w , '(ss,I0)' , iostat = istat ) max_numeric_str_len if ( istat == 0 ) write ( d , '(ss,I0)' , iostat = istat ) real_precision if ( istat == 0 ) write ( e , '(ss,I0)' , iostat = istat ) real_exponent_digits if ( istat == 0 ) then me % real_fmt = '(' // sgn // ',' // trim ( rl_edit_desc ) // & trim ( w ) // '.' // trim ( d ) // 'E' // trim ( e ) // ')' else me % real_fmt = '(' // sgn // ',' // trim ( rl_edit_desc ) // & '27.17E4)' !just use this one (should never happen) end if end if end subroutine json_initialize !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Returns true if `name` is equal to `p%name`, using the specified ! settings for case sensitivity and trailing whitespace. ! !### History ! * 4/30/2016 : original version ! * 8/25/2017 : now just a wrapper for [[name_strings_equal]] function name_equal ( json , p , name ) result ( is_equal ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), intent ( in ) :: p !! the json object character ( kind = CK , len =* ), intent ( in ) :: name !! the name to check for logical ( LK ) :: is_equal !! true if the string are !! lexically equal if ( allocated ( p % name )) then ! call the low-level routines for the name strings: is_equal = json % name_strings_equal ( p % name , name ) else is_equal = name == CK_ '' ! check a blank name end if end function name_equal !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 8/25/2017 ! ! Returns true if the name strings `name1` is equal to `name2`, using ! the specified settings for case sensitivity and trailing whitespace. function name_strings_equal ( json , name1 , name2 ) result ( is_equal ) implicit none class ( json_core ), intent ( inout ) :: json character ( kind = CK , len =* ), intent ( in ) :: name1 !! the name to check character ( kind = CK , len =* ), intent ( in ) :: name2 !! the name to check logical ( LK ) :: is_equal !! true if the string are !! lexically equal !must be the same length if we are treating !trailing spaces as significant, so do a !quick test of this first: if ( json % trailing_spaces_significant ) then is_equal = len ( name1 ) == len ( name2 ) if (. not . is_equal ) return end if if ( json % case_sensitive_keys ) then is_equal = name1 == name2 else is_equal = lowercase_string ( name1 ) == lowercase_string ( name2 ) end if end function name_strings_equal !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 10/31/2015 ! ! Create a deep copy of a [[json_value]] linked-list structure. ! !### Notes ! ! * If `from` has children, then they are also cloned. ! * The parent of `from` is not linked to `to`. ! * If `from` is an element of an array, then the previous and ! next entries are not cloned (only that element and it's children, if any). ! !### Example ! !````fortran ! program test ! use json_module ! implicit none ! type(json_core) :: json ! type(json_value),pointer :: j1, j2 ! call json%load('files/inputs/test1.json',j1) ! call json%clone(j1,j2) !now have two independent copies ! call json%destroy(j1) !destroys j1, but j2 remains ! call json%print(j2,'j2.json') ! call json%destroy(j2) ! end program test !```` subroutine json_clone ( json , from , to ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: from !! this is the structure to clone type ( json_value ), pointer :: to !! the clone is put here !! (it must not already be associated) !call the main function: call json % json_value_clone_func ( from , to ) end subroutine json_clone !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 10/31/2015 ! ! Recursive deep copy function called by [[json_clone]]. ! !@note If new data is added to the [[json_value]] type, ! then this would need to be updated. recursive subroutine json_value_clone_func ( from , to , parent , previous , tail ) implicit none type ( json_value ), pointer :: from !! this is the structure to clone type ( json_value ), pointer :: to !! the clone is put here (it !! must not already be associated) type ( json_value ), pointer , optional :: parent !! to%parent type ( json_value ), pointer , optional :: previous !! to%previous logical , optional :: tail !! if \"to\" is the tail of !! its parent's children nullify ( to ) if ( associated ( from )) then allocate ( to ) !copy over the data variables: ! [note: the allocate() statements don't work here for the ! deferred-length characters in gfortran-4.9] if ( allocated ( from % name )) to % name = from % name if ( allocated ( from % dbl_value )) allocate ( to % dbl_value , source = from % dbl_value ) if ( allocated ( from % log_value )) allocate ( to % log_value , source = from % log_value ) if ( allocated ( from % str_value )) to % str_value = from % str_value if ( allocated ( from % int_value )) allocate ( to % int_value , source = from % int_value ) to % var_type = from % var_type to % n_children = from % n_children ! allocate and associate the pointers as necessary: if ( present ( parent )) to % parent => parent if ( present ( previous )) to % previous => previous if ( present ( tail )) then if ( tail . and . associated ( to % parent )) to % parent % tail => to end if if ( associated ( from % next ) . and . associated ( to % parent )) then ! we only clone the next entry in an array ! if the parent has also been cloned call json_value_clone_func ( from = from % next ,& to = to % next ,& previous = to ,& parent = to % parent ,& tail = (. not . associated ( from % next % next ))) end if if ( associated ( from % children )) then call json_value_clone_func ( from = from % children ,& to = to % children ,& parent = to ,& tail = (. not . associated ( from % children % next ))) end if end if end subroutine json_value_clone_func !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Destroy the data within a [[json_value]], and reset type to `json_unknown`. pure subroutine destroy_json_data ( d ) implicit none type ( json_value ), intent ( inout ) :: d d % var_type = json_unknown if ( allocated ( d % log_value )) deallocate ( d % log_value ) if ( allocated ( d % int_value )) deallocate ( d % int_value ) if ( allocated ( d % dbl_value )) deallocate ( d % dbl_value ) if ( allocated ( d % str_value )) deallocate ( d % str_value ) end subroutine destroy_json_data !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 2/13/2014 ! ! Returns information about a [[json_value]]. subroutine json_info ( json , p , var_type , n_children , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p integer ( IK ), intent ( out ), optional :: var_type !! variable type integer ( IK ), intent ( out ), optional :: n_children !! number of children character ( kind = CK , len = :), allocatable , intent ( out ), optional :: name !! variable name if (. not . json % exception_thrown . and . associated ( p )) then if ( present ( var_type )) var_type = p % var_type if ( present ( n_children )) n_children = json % count ( p ) if ( present ( name )) then if ( allocated ( p % name )) then name = p % name else name = CK_ '' end if end if else ! error if (. not . json % exception_thrown ) then call json % throw_exception ( 'Error in json_info: ' // & 'pointer is not associated.' ) end if if ( present ( var_type )) var_type = json_unknown if ( present ( n_children )) n_children = 0 if ( present ( name )) name = CK_ '' end if end subroutine json_info !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/18/2016 ! ! Returns information about character strings returned from a [[json_value]]. subroutine json_string_info ( json , p , ilen , max_str_len , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p integer ( IK ), dimension (:), allocatable , intent ( out ), optional :: ilen !! if `p` is an array, this !! is the actual length !! of each character !! string in the array. !! if not an array, this !! is returned unallocated. integer ( IK ), intent ( out ), optional :: max_str_len !! The maximum length required to !! hold the string representation returned !! by a call to a `get` routine. If a scalar, !! this is just the length of the scalar. If !! a vector, this is the maximum length of !! any element. logical ( LK ), intent ( out ), optional :: found !! true if there were no errors. !! if not present, an error will !! throw an exception character ( kind = CK , len = :), allocatable :: cval !! for getting values as strings. logical ( LK ) :: initialized !! if the output array has been sized logical ( LK ) :: get_max_len !! if we are returning the `max_str_len` logical ( LK ) :: get_ilen !! if we are returning the `ilen` array integer ( IK ) :: var_type !! variable type get_max_len = present ( max_str_len ) get_ilen = present ( ilen ) if (. not . json % exception_thrown ) then if ( present ( found )) found = . true . initialized = . false . if ( get_max_len ) max_str_len = 0 select case ( p % var_type ) case ( json_array ) ! it's an array ! call routine for each element call json % get ( p , array_callback = get_string_lengths ) case default ! not an array if ( json % strict_type_checking ) then ! only allowing strings to be returned ! as strings, so we can check size directly call json % info ( p , var_type = var_type ) if ( var_type == json_string ) then if ( allocated ( p % str_value ) . and . get_max_len ) & max_str_len = len ( p % str_value ) else ! it isn't a string, so there is no length call json % throw_exception ( 'Error in json_string_info: ' // & 'When strict_type_checking is true ' // & 'the variable must be a character string.' ,& found ) end if else ! in this case, we have to get the value ! as a string to know what size it is. call json % get ( p , value = cval ) if (. not . json % exception_thrown ) then if ( allocated ( cval ) . and . get_max_len ) & max_str_len = len ( cval ) end if end if end select end if if ( json % exception_thrown ) then if ( present ( found )) then call json % clear_exceptions () found = . false . end if if ( get_max_len ) max_str_len = 0 if ( get_ilen ) then if ( allocated ( ilen )) deallocate ( ilen ) end if end if contains subroutine get_string_lengths ( json , element , i , count ) !! callback function to call for each element in the array. implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: element integer ( IK ), intent ( in ) :: i !! index integer ( IK ), intent ( in ) :: count !! size of array character ( kind = CK , len = :), allocatable :: cval integer ( IK ) :: var_type if ( json % exception_thrown ) return if (. not . initialized ) then if ( get_ilen ) allocate ( ilen ( count )) initialized = . true . end if if ( json % strict_type_checking ) then ! only allowing strings to be returned ! as strings, so we can check size directly call json % info ( element , var_type = var_type ) if ( var_type == json_string ) then if ( allocated ( element % str_value )) then if ( get_max_len ) then if ( len ( element % str_value ) > max_str_len ) & max_str_len = len ( element % str_value ) end if if ( get_ilen ) ilen ( i ) = len ( element % str_value ) else if ( get_ilen ) ilen ( i ) = 0 end if else ! it isn't a string, so there is no length call json % throw_exception ( 'Error in json_string_info: ' // & 'When strict_type_checking is true ' // & 'the array must contain only ' // & 'character strings.' , found ) end if else ! in this case, we have to get the value ! as a string to know what size it is. call json % get ( element , value = cval ) if ( json % exception_thrown ) return if ( allocated ( cval )) then if ( get_max_len ) then if ( len ( cval ) > max_str_len ) max_str_len = len ( cval ) end if if ( get_ilen ) ilen ( i ) = len ( cval ) else if ( get_ilen ) ilen ( i ) = 0 end if end if end subroutine get_string_lengths end subroutine json_string_info !***************************************************************************************** !***************************************************************************************** ! ! Returns information about a [[json_value]], given the path. ! !### See also ! * [[json_info]] ! !@note 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. subroutine json_info_by_path ( json , p , path , found , var_type , n_children , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! a JSON linked list character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable logical ( LK ), intent ( out ), optional :: found !! true if it was found integer ( IK ), intent ( out ), optional :: var_type !! variable type integer ( IK ), intent ( out ), optional :: n_children !! number of children character ( kind = CK , len = :), allocatable , intent ( out ), optional :: name !! variable name type ( json_value ), pointer :: p_var !! temporary pointer logical ( LK ) :: ok !! if the variable was found #if defined __GFORTRAN__ character ( kind = CK , len = :), allocatable :: p_name !! temporary variable for getting name #endif call json % get ( p , path , p_var , found ) !check if it was found: if ( present ( found )) then ok = found else ok = . not . json % exception_thrown end if if (. not . ok ) then if ( present ( var_type )) var_type = json_unknown if ( present ( n_children )) n_children = 0 if ( present ( name )) name = CK_ '' else !get info: #if defined __GFORTRAN__ call json % info ( p_var , var_type , n_children ) if ( present ( name )) then !workaround for gfortran bug if ( allocated ( p_var % name )) then p_name = p_var % name name = p_name else name = CK_ '' end if end if #else call json % info ( p_var , var_type , n_children , name ) #endif end if end subroutine json_info_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_info_by_path]] where \"path\" is kind=CDK. subroutine wrap_json_info_by_path ( json , p , path , found , var_type , n_children , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! a JSON linked list character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable logical ( LK ), intent ( out ), optional :: found !! true if it was found integer ( IK ), intent ( out ), optional :: var_type !! variable type integer ( IK ), intent ( out ), optional :: n_children !! number of children character ( kind = CK , len = :), allocatable , intent ( out ), optional :: name !! variable name call json % info ( p , to_unicode ( path ), found , var_type , n_children , name ) end subroutine wrap_json_info_by_path !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 10/16/2015 ! ! Alternate version of [[json_info]] that returns matrix ! information about a [[json_value]]. ! ! A [[json_value]] is a valid rank 2 matrix if all of the following are true: ! ! * The var_type is *json_array* ! * Each child is also a *json_array*, each of which has the same number of elements ! * Each individual element has the same variable type (integer, logical, etc.) ! ! The idea here is that if it is a valid matrix, it can be interoperable with ! a Fortran rank 2 array of the same type. ! !### Example ! ! The following example is an array with `var_type=json_integer`, ! `n_sets=3`, and `set_size=4` ! !```json ! { ! \"matrix\": [ ! [1,2,3,4], ! [5,6,7,8], ! [9,10,11,12] ! ] ! } !``` subroutine json_matrix_info ( json , p , is_matrix , var_type , n_sets , set_size , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! a JSON linked list logical ( LK ), intent ( out ) :: is_matrix !! true if it is a valid matrix 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 type ( json_value ), pointer :: p_row !! for getting a set type ( json_value ), pointer :: p_element !! for getting an element in a set integer ( IK ) :: vartype !! json variable type of `p` integer ( IK ) :: row_vartype !! json variable type of a row integer ( IK ) :: element_vartype !! json variable type of an element in a row integer ( IK ) :: nr !! number of children of `p` integer ( IK ) :: nc !! number of elements in first child of `p` integer ( IK ) :: icount !! number of elements in a set integer ( IK ) :: i !! counter integer ( IK ) :: j !! counter #if defined __GFORTRAN__ character ( kind = CK , len = :), allocatable :: p_name !! temporary variable for getting name #endif !get info about the variable: #if defined __GFORTRAN__ call json % info ( p , vartype , nr ) if ( present ( name )) then !workaround for gfortran bug if ( allocated ( p % name )) then p_name = p % name name = p_name else name = CK_ '' end if end if #else call json % info ( p , vartype , nr , name ) #endif is_matrix = ( vartype == json_array ) if ( is_matrix ) then main : do i = 1 , nr nullify ( p_row ) call json % get_child ( p , i , p_row ) if (. not . associated ( p_row )) then is_matrix = . false . call json % throw_exception ( 'Error in json_matrix_info: ' // & 'Malformed JSON linked list' ) exit main end if call json % info ( p_row , var_type = row_vartype , n_children = icount ) if ( row_vartype == json_array ) then if ( i == 1 ) nc = icount !number of columns in first row if ( icount == nc ) then !make sure each row has the same number of columns !see if all the variables in this row are the same type: do j = 1 , icount nullify ( p_element ) call json % get_child ( p_row , j , p_element ) if (. not . associated ( p_element )) then is_matrix = . false . call json % throw_exception ( 'Error in json_matrix_info: ' // & 'Malformed JSON linked list' ) exit main end if call json % info ( p_element , var_type = element_vartype ) if ( i == 1 . and . j == 1 ) vartype = element_vartype !type of first element !in the row if ( vartype /= element_vartype ) then !not all variables are the same time is_matrix = . false . exit main end if end do else is_matrix = . false . exit main end if else is_matrix = . false . exit main end if end do main end if if ( is_matrix ) then if ( present ( var_type )) var_type = vartype if ( present ( n_sets )) n_sets = nr if ( present ( set_size )) set_size = nc else if ( present ( var_type )) var_type = json_unknown if ( present ( n_sets )) n_sets = 0 if ( present ( set_size )) set_size = 0 end if end subroutine json_matrix_info !***************************************************************************************** !***************************************************************************************** !> ! Returns matrix information about a [[json_value]], given the path. ! !### See also ! * [[json_matrix_info]] ! !@note 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. subroutine json_matrix_info_by_path ( json , p , path , is_matrix , found ,& var_type , n_sets , set_size , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! a JSON linked list character ( kind = CK , 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 type ( json_value ), pointer :: p_var logical ( LK ) :: ok #if defined __GFORTRAN__ character ( kind = CK , len = :), allocatable :: p_name !! temporary variable for getting name #endif call json % get ( p , path , p_var , found ) !check if it was found: if ( present ( found )) then ok = found else ok = . not . json % exception_thrown end if if (. not . ok ) then if ( present ( var_type )) var_type = json_unknown if ( present ( n_sets )) n_sets = 0 if ( present ( set_size )) set_size = 0 if ( present ( name )) name = CK_ '' else !get info about the variable: #if defined __GFORTRAN__ call json % matrix_info ( p_var , is_matrix , var_type , n_sets , set_size ) if ( present ( name )) then !workaround for gfortran bug if ( allocated ( p_var % name )) then p_name = p_var % name name = p_name else name = CK_ '' end if end if #else call json % matrix_info ( p_var , is_matrix , var_type , n_sets , set_size , name ) #endif if ( json % exception_thrown . and . present ( found )) then found = . false . call json % clear_exceptions () end if end if end subroutine json_matrix_info_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_matrix_info_by_path]] where \"path\" is kind=CDK. subroutine wrap_json_matrix_info_by_path ( json , p , path , is_matrix , found ,& var_type , n_sets , set_size , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! a JSON linked list 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 json % matrix_info ( p , to_unicode ( path ), is_matrix , found , var_type , n_sets , set_size , name ) end subroutine wrap_json_matrix_info_by_path !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 4/29/2016 ! ! Rename a [[json_value]]. subroutine json_value_rename ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p character ( kind = CK , len =* ), intent ( in ) :: name !! new variable name if ( json % trailing_spaces_significant ) then p % name = name else p % name = trim ( name ) end if end subroutine json_value_rename !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 4/29/2016 ! ! Alternate version of [[json_value_rename]], where `name` is kind=CDK. subroutine wrap_json_value_rename ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! new variable name call json % rename ( p , to_unicode ( name )) end subroutine wrap_json_value_rename !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/4/2013 ! ! Clear exceptions in the [[json_core(type)]]. pure subroutine json_clear_exceptions ( json ) implicit none class ( json_core ), intent ( inout ) :: json !clear the flag and message: json % exception_thrown = . false . if ( allocated ( json % err_message )) deallocate ( json % err_message ) end subroutine json_clear_exceptions !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/4/2013 ! ! Throw an exception in the [[json_core(type)]]. ! This routine sets the error flag, and prevents any subsequent routine ! from doing anything, until [[json_clear_exceptions]] is called. ! !@note If `is_verbose` is true, this will also print a ! traceback if the Intel compiler is used. ! !@note If `stop_on_error` is true, then the program is stopped. subroutine json_throw_exception ( json , msg , found ) #ifdef __INTEL_COMPILER use ifcore , only : tracebackqq #endif implicit none class ( json_core ), intent ( inout ) :: json character ( kind = CK , len =* ), intent ( in ) :: msg !! the error message logical ( LK ), intent ( inout ), optional :: found !! if the caller is handling the !! exception with an optimal return !! argument. If so, `json%stop_on_error` !! is ignored. logical ( LK ) :: stop_on_error json % exception_thrown = . true . json % err_message = trim ( msg ) stop_on_error = json % stop_on_error . and . . not . present ( found ) if ( stop_on_error ) then #ifdef __INTEL_COMPILER ! for Intel, we raise a traceback and quit call tracebackqq ( string = trim ( msg ), user_exit_code = 0 ) #else write ( error_unit , '(A)' ) 'JSON-Fortran Exception: ' // trim ( msg ) error stop 1 #endif elseif ( json % is_verbose ) then write ( output_unit , '(A)' ) '***********************' write ( output_unit , '(A)' ) 'JSON-Fortran Exception: ' // trim ( msg ) !#if defined __GFORTRAN__ ! call backtrace() ! (have to compile with -fbacktrace -fall-intrinsics flags) !#endif #ifdef __INTEL_COMPILER call tracebackqq ( user_exit_code =- 1 ) ! print a traceback and return #endif write ( output_unit , '(A)' ) '***********************' end if end subroutine json_throw_exception !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_throw_exception]], where `msg` is kind=CDK. subroutine wrap_json_throw_exception ( json , msg , found ) implicit none class ( json_core ), intent ( inout ) :: json character ( kind = CDK , len =* ), intent ( in ) :: msg !! the error message logical ( LK ), intent ( inout ), optional :: found !! if the caller is handling the !! exception with an optimal return !! argument. If so, `json%stop_on_error` !! is ignored. call json % throw_exception ( to_unicode ( msg ), found ) end subroutine wrap_json_throw_exception !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/4/2013 ! ! Retrieve error code from the [[json_core(type)]]. ! This should be called after `parse` to check for errors. ! If an error is thrown, before using the class again, [[json_initialize]] ! should be called to clean up before it is used again. ! !### Example ! !````fortran ! type(json_file) :: json ! logical :: status_ok ! character(kind=CK,len=:),allocatable :: error_msg ! call json%load(filename='myfile.json') ! call json%check_for_errors(status_ok, error_msg) ! if (.not. status_ok) then ! write(*,*) 'Error: '//error_msg ! call json%clear_exceptions() ! call json%destroy() ! end if !```` ! !### See also ! * [[json_failed]] ! * [[json_throw_exception]] subroutine json_check_for_errors ( json , status_ok , error_msg ) implicit none class ( json_core ), intent ( in ) :: json logical ( LK ), intent ( out ), optional :: status_ok !! true if there were no errors character ( kind = CK , len = :), allocatable , intent ( out ), optional :: error_msg !! the error message. !! (not allocated if !! there were no errors) #if defined __GFORTRAN__ character ( kind = CK , len = :), allocatable :: tmp !! workaround for gfortran bugs #endif if ( present ( status_ok )) status_ok = . not . json % exception_thrown if ( present ( error_msg )) then if ( json % exception_thrown ) then ! if an exception has been thrown, ! then this will always be allocated ! [see json_throw_exception] #if defined __GFORTRAN__ tmp = json % err_message error_msg = tmp #else error_msg = json % err_message #endif end if end if end subroutine json_check_for_errors !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/5/2013 ! ! Logical function to indicate if an exception has been thrown in a [[json_core(type)]]. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: p ! logical :: status_ok ! character(len=:),allocatable :: error_msg ! call json%load(filename='myfile.json',p) ! if (json%failed()) then ! call json%check_for_errors(status_ok, error_msg) ! write(*,*) 'Error: '//error_msg ! call json%clear_exceptions() ! call json%destroy(p) ! end if !```` ! ! Note that [[json_file]] contains a wrapper for this routine, which is used like: !````fortran ! type(json_file) :: f ! logical :: status_ok ! character(len=:),allocatable :: error_msg ! call f%load(filename='myfile.json') ! if (f%failed()) then ! call f%check_for_errors(status_ok, error_msg) ! write(*,*) 'Error: '//error_msg ! call f%clear_exceptions() ! call f%destroy() ! end if !```` ! !### See also ! * [[json_check_for_errors]] pure function json_failed ( json ) result ( failed ) implicit none class ( json_core ), intent ( in ) :: json logical ( LK ) :: failed !! will be true if an exception !! has been thrown. failed = json % exception_thrown end function json_failed !***************************************************************************************** !***************************************************************************************** !> ! Allocate a [[json_value]] pointer variable. ! This should be called before adding data to it. ! !### Example ! !````fortran ! type(json_value),pointer :: var ! call json_value_create(var) ! call json%to_real(var,1.0_RK) !```` ! !### Notes ! 1. This routine does not check for exceptions. ! 2. The pointer should not already be allocated, or a memory leak will occur. subroutine json_value_create ( p ) implicit none type ( json_value ), pointer :: p nullify ( p ) allocate ( p ) end subroutine json_value_create !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/22/2014 ! ! Destroy a [[json_value]] linked-list structure. ! !@note The original FSON version of this ! routine was not properly freeing the memory. ! It was rewritten. ! !@note This routine destroys this variable, it's children, and ! (if `destroy_next` is true) the subsequent elements in ! an object or array. It does not destroy the parent or ! previous elements. ! !@Note There is some protection here to enable destruction of ! improperly-created linked lists. However, likely there ! are cases not handled. Use the [[json_value_validate]] ! method to validate a JSON structure that was manually ! created using [[json_value]] pointers. pure recursive subroutine json_value_destroy ( json , p , destroy_next ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! variable to destroy logical ( LK ), intent ( in ), optional :: destroy_next !! if true, then `p%next` !! is also destroyed (default is true) logical ( LK ) :: des_next !! local copy of `destroy_next` !! optional argument type ( json_value ), pointer :: child !! for getting child elements logical :: circular !! to check to malformed linked lists if ( associated ( p )) then if ( present ( destroy_next )) then des_next = destroy_next else des_next = . true . end if if ( allocated ( p % name )) deallocate ( p % name ) call destroy_json_data ( p ) if ( associated ( p % next )) then ! check for circular references: if ( associated ( p , p % next )) nullify ( p % next ) end if if ( associated ( p % children )) then do while ( p % n_children > 0 ) child => p % children if ( associated ( child )) then p % children => p % children % next p % n_children = p % n_children - 1 ! check children for circular references: circular = ( associated ( p % children ) . and . & associated ( p % children , child )) call json % destroy ( child , destroy_next = . false .) if ( circular ) exit else ! it is a malformed JSON object. But, we will ! press ahead with the destroy process, since ! otherwise, there would be no way to destroy it. exit end if end do nullify ( p % children ) nullify ( child ) end if if ( associated ( p % next ) . and . des_next ) call json % destroy ( p % next ) nullify ( p % previous ) nullify ( p % parent ) nullify ( p % tail ) if ( associated ( p )) deallocate ( p ) nullify ( p ) end if end subroutine json_value_destroy !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 9/9/2014 ! ! Remove a [[json_value]] (and all its children) ! from a linked-list structure, preserving the rest of the structure. ! !### Examples ! ! To extract an object from one JSON structure, and add it to another: !````fortran ! type(json_core) :: json ! type(json_value),pointer :: json1,json2,p ! logical :: found ! !create and populate json1 and json2 ! call json%get(json1,'name',p,found) ! get pointer to name element of json1 ! call json%remove(p,destroy=.false.) ! remove it from json1 (don't destroy) ! call json%add(json2,p) ! add it to json2 !```` ! ! To remove an object from a JSON structure (and destroy it): !````fortran ! type(json_core) :: json ! type(json_value),pointer :: json1,p ! logical :: found ! !create and populate json1 ! call json%get(json1,'name',p,found) ! get pointer to name element of json1 ! call json%remove(p) ! remove and destroy it !```` ! !### History ! * Jacob Williams : 12/28/2014 : added destroy optional argument. ! * Jacob Williams : 12/04/2020 : bug fix. subroutine json_value_remove ( json , p , destroy ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p logical ( LK ), intent ( in ), optional :: destroy !! Option to destroy `p` after it is removed: !! !! * If `destroy` is not present, it is also destroyed. !! * If `destroy` is present and true, it is destroyed. !! * If `destroy` is present and false, it is not destroyed. type ( json_value ), pointer :: parent !! pointer to parent type ( json_value ), pointer :: previous !! pointer to previous type ( json_value ), pointer :: next !! pointer to next logical ( LK ) :: destroy_it !! if `p` should be destroyed if ( associated ( p )) then !optional input argument: if ( present ( destroy )) then destroy_it = destroy else destroy_it = . true . end if if ( associated ( p % parent )) then parent => p % parent if ( associated ( p % next )) then !there are later items in the list: next => p % next if ( associated ( p % previous )) then !there are earlier items in the list previous => p % previous previous % next => next next % previous => previous else !this is the first item in the list parent % children => next nullify ( next % previous ) end if else if ( associated ( p % previous )) then !there are earlier items in the list: previous => p % previous nullify ( previous % next ) parent % tail => previous else !this is the only item in the list: nullify ( parent % children ) nullify ( parent % tail ) end if end if ! nullify all pointers to original structure: nullify ( p % next ) nullify ( p % previous ) nullify ( p % parent ) parent % n_children = parent % n_children - 1 end if if ( destroy_it ) call json % destroy ( p ) end if end subroutine json_value_remove !***************************************************************************************** !***************************************************************************************** !> ! Replace `p1` with `p2` in a JSON structure. ! !@note The replacement is done using an insert and remove ! See [[json_value_insert_after]] and [[json_value_remove]] ! for details. subroutine json_value_replace ( json , p1 , p2 , destroy ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p1 !! the item to replace type ( json_value ), pointer :: p2 !! item to take the place of `p1` logical ( LK ), intent ( in ), optional :: destroy !! Should `p1` also be destroyed !! (default is True). Normally, !! this should be true to avoid !! a memory leak. logical ( LK ) :: destroy_p1 !! if `p1` is to be destroyed if ( present ( destroy )) then destroy_p1 = destroy else destroy_p1 = . true . ! default end if call json % insert_after ( p1 , p2 ) call json % remove ( p1 , destroy_p1 ) end subroutine json_value_replace !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 4/11/2017 ! ! Reverse the order of the children of an array or object. subroutine json_value_reverse ( json , p ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p type ( json_value ), pointer :: tmp !! temp variable for traversing the list type ( json_value ), pointer :: current !! temp variable for traversing the list integer ( IK ) :: var_type !! for getting the variable type if ( associated ( p )) then call json % info ( p , var_type = var_type ) ! can only reverse objects or arrays if ( var_type == json_object . or . var_type == json_array ) then nullify ( tmp ) current => p % children p % tail => current ! Swap next and previous for all nodes: do if (. not . associated ( current )) exit tmp => current % previous current % previous => current % next current % next => tmp current => current % previous end do if ( associated ( tmp )) then p % children => tmp % previous end if end if end if end subroutine json_value_reverse !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 4/26/2016 ! ! Swap two elements in a JSON structure. ! All of the children are carried along as well. ! !@note If both are not associated, then an error is thrown. ! !@note The assumption here is that both variables are part of a valid ! [[json_value]] linked list (so the normal `parent`, `previous`, ! `next`, etc. pointers are properly associated if necessary). ! !@warning This cannot be used to swap a parent/child pair, since that ! could lead to a circular linkage. An exception is thrown if ! this is tried. ! !@warning There are also other situations where using this routine may ! produce a malformed JSON structure, such as moving an array ! element outside of an array. This is not checked for. ! !@note If `p1` and `p2` have a common parent, it is always safe to swap them. subroutine json_value_swap ( json , p1 , p2 ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p1 !! swap with `p2` type ( json_value ), pointer :: p2 !! swap with `p1` logical :: same_parent !! if `p1` and `p2` have the same parent logical :: first_last !! if `p1` and `p2` are the first,last or !! last,first children of a common parent logical :: adjacent !! if `p1` and `p2` are adjacent !! elements in an array type ( json_value ), pointer :: a !! temporary variable type ( json_value ), pointer :: b !! temporary variable if ( json % exception_thrown ) return !both have to be associated: if ( associated ( p1 ) . and . associated ( p2 )) then !simple check to make sure that they both !aren't pointing to the same thing: if (. not . associated ( p1 , p2 )) then !we will not allow swapping an item with one of its descendants: if ( json % is_child_of ( p1 , p2 ) . or . json % is_child_of ( p2 , p1 )) then call json % throw_exception ( 'Error in json_value_swap: ' // & 'cannot swap an item with one of its descendants' ) else same_parent = ( associated ( p1 % parent ) . and . & associated ( p2 % parent ) . and . & associated ( p1 % parent , p2 % parent ) ) if ( same_parent ) then first_last = ( associated ( p1 % parent % children , p1 ) . and . & associated ( p2 % parent % tail , p2 )) . or . & ( associated ( p1 % parent % tail , p1 ) . and . & associated ( p2 % parent % children , p2 )) else first_last = . false . end if !first, we fix children,tail pointers: if ( same_parent . and . first_last ) then !this is all we have to do for the parent in this case: call swap_pointers ( p1 % parent % children , p2 % parent % tail ) else if ( same_parent . and . . not . first_last ) then if ( associated ( p1 % parent % children , p1 )) then p1 % parent % children => p2 ! p1 is the first child of the parent else if ( associated ( p1 % parent % children , p2 )) then p1 % parent % children => p1 ! p2 is the first child of the parent end if if ( associated ( p1 % parent % tail , p1 )) then p1 % parent % tail => p2 ! p1 is the last child of the parent else if ( associated ( p1 % parent % tail , p2 )) then p1 % parent % tail => p1 ! p2 is the last child of the parent end if else ! general case: different parents if ( associated ( p1 % parent )) then if ( associated ( p1 % parent % children , p1 )) p1 % parent % children => p2 if ( associated ( p1 % parent % tail , p1 )) p1 % parent % tail => p2 end if if ( associated ( p2 % parent )) then if ( associated ( p2 % parent % children , p2 )) p2 % parent % children => p1 if ( associated ( p2 % parent % tail , p2 )) p2 % parent % tail => p1 end if call swap_pointers ( p1 % parent , p2 % parent ) end if !now, have to fix previous,next pointers: !first, see if they are adjacent: adjacent = associated ( p1 % next , p2 ) . or . & associated ( p2 % next , p1 ) if ( associated ( p2 % next , p1 )) then !p2,p1 a => p2 b => p1 else !p1,p2 (or not adjacent) a => p1 b => p2 end if if ( associated ( a % previous )) a % previous % next => b if ( associated ( b % next )) b % next % previous => a if ( adjacent ) then !a comes before b in the original list b % previous => a % previous a % next => b % next a % previous => b b % next => a else if ( associated ( a % next )) a % next % previous => b if ( associated ( b % previous )) b % previous % next => a call swap_pointers ( a % previous , b % previous ) call swap_pointers ( a % next , b % next ) end if end if else call json % throw_exception ( 'Error in json_value_swap: ' // & 'both pointers must be associated' ) end if end if contains pure subroutine swap_pointers ( s1 , s2 ) implicit none type ( json_value ), pointer , intent ( inout ) :: s1 type ( json_value ), pointer , intent ( inout ) :: s2 type ( json_value ), pointer :: tmp !! temporary pointer if (. not . associated ( s1 , s2 )) then tmp => s1 s1 => s2 s2 => tmp end if end subroutine swap_pointers end subroutine json_value_swap !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 4/28/2016 ! ! Returns True if `p2` is a descendant of `p1` ! (i.e, a child, or a child of child, etc.) function json_value_is_child_of ( json , p1 , p2 ) result ( is_child_of ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p1 type ( json_value ), pointer :: p2 logical ( LK ) :: is_child_of is_child_of = . false . if ( json % exception_thrown ) return if ( associated ( p1 ) . and . associated ( p2 )) then if ( associated ( p1 % children )) then call json % traverse ( p1 % children , is_child_of_callback ) end if end if contains subroutine is_child_of_callback ( json , p , finished ) !! Traverse until `p` is `p2`. implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p logical ( LK ), intent ( out ) :: finished is_child_of = associated ( p , p2 ) finished = is_child_of ! stop searching if found end subroutine is_child_of_callback end function json_value_is_child_of !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 5/2/2016 ! ! Validate a [[json_value]] linked list by checking to make sure ! all the pointers are properly associated, arrays and objects ! have the correct number of children, and the correct data is ! allocated for the variable types. ! ! It recursively traverses the entire structure and checks every element. ! !### History ! * Jacob Williams, 8/26/2017 : added duplicate key check. ! !@note It will return on the first error it encounters. ! !@note This routine does not check or throw any exceptions. ! If `json` is currently in a state of exception, it will ! remain so after calling this routine. subroutine json_value_validate ( json , p , is_valid , error_msg ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p logical ( LK ), intent ( out ) :: is_valid !! True if the structure is valid. character ( kind = CK , len = :), allocatable , intent ( out ) :: error_msg !! if not valid, this will contain !! a description of the problem logical ( LK ) :: has_duplicate !! to check for duplicate keys character ( kind = CK , len = :), allocatable :: path !! path to duplicate key logical ( LK ) :: status_ok !! to check for existing exception character ( kind = CK , len = :), allocatable :: exception_msg !! error message for an existing exception character ( kind = CK , len = :), allocatable :: exception_msg2 !! error message for a new exception if ( associated ( p )) then is_valid = . true . call check_if_valid ( p , require_parent = associated ( p % parent )) if ( is_valid . and . . not . json % allow_duplicate_keys ) then ! if no errors so far, also check the ! entire structure for duplicate keys: ! note: check_for_duplicate_keys does call routines ! that check and throw exceptions, so let's clear any ! first. (save message for later) call json % check_for_errors ( status_ok , exception_msg ) call json % clear_exceptions () call json % check_for_duplicate_keys ( p , has_duplicate , path = path ) if ( json % failed ()) then ! if an exception was thrown during this call, ! then clear it but make that the error message ! returned by this routine. Normally this should ! never actually occur since we have already ! validated the structure. call json % check_for_errors ( is_valid , exception_msg2 ) error_msg = exception_msg2 call json % clear_exceptions () is_valid = . false . else if ( has_duplicate ) then error_msg = 'duplicate key found: ' // path is_valid = . false . end if end if if (. not . status_ok ) then ! restore any existing exception if necessary call json % throw_exception ( exception_msg ) end if ! cleanup: if ( allocated ( path )) deallocate ( path ) if ( allocated ( exception_msg )) deallocate ( exception_msg ) if ( allocated ( exception_msg2 )) deallocate ( exception_msg2 ) end if else error_msg = 'The pointer is not associated' is_valid = . false . end if contains recursive subroutine check_if_valid ( p , require_parent ) implicit none type ( json_value ), pointer , intent ( in ) :: p logical , intent ( in ) :: require_parent !! the first one may be a root (so no parent), !! but all descendants must have a parent. integer ( IK ) :: i !! counter type ( json_value ), pointer :: element type ( json_value ), pointer :: previous if ( is_valid . and . associated ( p )) then ! data type: select case ( p % var_type ) case ( json_null , json_object , json_array ) if ( allocated ( p % log_value ) . or . allocated ( p % int_value ) . or . & allocated ( p % dbl_value ) . or . allocated ( p % str_value )) then error_msg = 'incorrect data allocated for ' // & 'json_null, json_object, or json_array variable type' is_valid = . false . return end if case ( json_logical ) if (. not . allocated ( p % log_value )) then error_msg = 'log_value should be allocated for json_logical variable type' is_valid = . false . return else if ( allocated ( p % int_value ) . or . & allocated ( p % dbl_value ) . or . allocated ( p % str_value )) then error_msg = 'incorrect data allocated for json_logical variable type' is_valid = . false . return end if case ( json_integer ) if (. not . allocated ( p % int_value )) then error_msg = 'int_value should be allocated for json_integer variable type' is_valid = . false . return else if ( allocated ( p % log_value ) . or . & allocated ( p % dbl_value ) . or . allocated ( p % str_value )) then error_msg = 'incorrect data allocated for json_integer variable type' is_valid = . false . return end if case ( json_real ) if (. not . allocated ( p % dbl_value )) then error_msg = 'dbl_value should be allocated for json_real variable type' is_valid = . false . return else if ( allocated ( p % log_value ) . or . allocated ( p % int_value ) . or . & allocated ( p % str_value )) then error_msg = 'incorrect data allocated for json_real variable type' is_valid = . false . return end if case ( json_string ) if (. not . allocated ( p % str_value )) then error_msg = 'str_value should be allocated for json_string variable type' is_valid = . false . return else if ( allocated ( p % log_value ) . or . allocated ( p % int_value ) . or . & allocated ( p % dbl_value )) then error_msg = 'incorrect data allocated for json_string variable type' is_valid = . false . return end if case default error_msg = 'invalid JSON variable type' is_valid = . false . return end select if ( require_parent . and . . not . associated ( p % parent )) then error_msg = 'parent pointer is not associated' is_valid = . false . return end if if (. not . allocated ( p % name )) then if ( associated ( p % parent )) then if ( p % parent % var_type /= json_array ) then error_msg = 'JSON variable must have a name if not an ' // & 'array element or the root' is_valid = . false . return end if end if end if if ( associated ( p % children ) . neqv . associated ( p % tail )) then error_msg = 'both children and tail pointers must be associated' is_valid = . false . return end if ! now, check next one: if ( associated ( p % next )) then if ( associated ( p , p % next )) then error_msg = 'circular linked list' is_valid = . false . return else ! if it's an element in an ! array, then require a parent: call check_if_valid ( p % next , require_parent = . true .) end if end if if ( associated ( p % children )) then if ( p % var_type /= json_array . and . p % var_type /= json_object ) then error_msg = 'only arrays and objects can have children' is_valid = . false . return end if ! first validate children pointers: previous => null () element => p % children do i = 1_IK , p % n_children if (. not . associated ( element % parent , p )) then error_msg = 'child''s parent pointer not properly associated' is_valid = . false . return end if if ( i == 1 . and . associated ( element % previous )) then error_msg = 'first child shouldn''t have a previous' is_valid = . false . return end if if ( i < p % n_children . and . . not . associated ( element % next )) then error_msg = 'not enough children' is_valid = . false . return end if if ( i == p % n_children . and . associated ( element % next )) then error_msg = 'too many children' is_valid = . false . return end if if ( i > 1 ) then if (. not . associated ( previous , element % previous )) then error_msg = 'previous pointer not properly associated' is_valid = . false . return end if end if if ( i == p % n_children . and . & . not . associated ( element % parent % tail , element )) then error_msg = 'parent''s tail pointer not properly associated' is_valid = . false . return end if if ( i < p % n_children ) then !setup next case: previous => element element => element % next end if end do !now check all the children: call check_if_valid ( p % children , require_parent = . true .) end if end if end subroutine check_if_valid end subroutine json_value_validate !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/6/2014 ! ! Given the path string, remove the variable ! from [[json_value]], if it exists. subroutine json_value_remove_if_present ( json , p , path ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable to remove type ( json_value ), pointer :: p_var logical ( LK ) :: found call json % get ( p , path , p_var , found ) if ( found ) call json % remove ( p_var ) end subroutine json_value_remove_if_present !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_remove_if_present]], where `path` is kind=CDK. subroutine wrap_json_value_remove_if_present ( json , p , path ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: path call json % remove_if_present ( p , to_unicode ( path )) end subroutine wrap_json_value_remove_if_present !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/6/2014 ! ! Given the path string, if the variable is present, ! and is a scalar, then update its value. ! If it is not present, then create it and set its value. ! !@note If the variable is not a scalar, an exception will be thrown. subroutine json_update_logical ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable in the structure logical ( LK ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. type ( json_value ), pointer :: p_var integer ( IK ) :: var_type call json % get ( p , path , p_var , found ) if ( found ) then call json % info ( p_var , var_type ) select case ( var_type ) case ( json_null , json_logical , json_integer , json_real , json_string ) call json % to_logical ( p_var , val ) !update the value case default found = . false . call json % throw_exception ( 'Error in json_update_logical: ' // & 'the variable is not a scalar value' , found ) end select else call json % add_by_path ( p , path , val ) !add the new element end if end subroutine json_update_logical !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_update_logical]], where `path` is kind=CDK. subroutine wrap_json_update_logical ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable in the structure logical ( LK ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. call json % update ( p , to_unicode ( path ), val , found ) end subroutine wrap_json_update_logical !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/6/2014 ! ! Given the path string, if the variable is present, ! and is a scalar, then update its value. ! If it is not present, then create it and set its value. ! !@note If the variable is not a scalar, an exception will be thrown. subroutine json_update_real ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable in the structure real ( RK ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. type ( json_value ), pointer :: p_var integer ( IK ) :: var_type call json % get ( p , path , p_var , found ) if ( found ) then call json % info ( p_var , var_type ) select case ( var_type ) case ( json_null , json_logical , json_integer , json_real , json_string ) call json % to_real ( p_var , val ) !update the value case default found = . false . call json % throw_exception ( 'Error in json_update_real: ' // & 'the variable is not a scalar value' , found ) end select else call json % add_by_path ( p , path , val ) !add the new element end if end subroutine json_update_real !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_update_real]], where `path` is kind=CDK. subroutine wrap_json_update_real ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable in the structure real ( RK ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. call json % update ( p , to_unicode ( path ), val , found ) end subroutine wrap_json_update_real !***************************************************************************************** #ifndef REAL32 !***************************************************************************************** !> ! Alternate version of [[json_update_real]], where `val` is `real32`. subroutine json_update_real32 ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable in the structure real ( real32 ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. call json % update ( p , path , real ( val , RK ), found ) end subroutine json_update_real32 !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_update_real32]], where `path` is kind=CDK. subroutine wrap_json_update_real32 ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable in the structure real ( real32 ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. call json % update ( p , to_unicode ( path ), real ( val , RK ), found ) end subroutine wrap_json_update_real32 !***************************************************************************************** #endif #ifdef REAL128 !***************************************************************************************** !> ! Alternate version of [[json_update_real]], where `val` is `real64`. subroutine json_update_real64 ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable in the structure real ( real64 ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. call json % update ( p , path , real ( val , RK ), found ) end subroutine json_update_real64 !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_update_real64]], where `path` is kind=CDK. subroutine wrap_json_update_real64 ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable in the structure real ( real64 ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. call json % update ( p , to_unicode ( path ), real ( val , RK ), found ) end subroutine wrap_json_update_real64 !***************************************************************************************** #endif !***************************************************************************************** !> author: Jacob Williams ! date: 12/6/2014 ! ! Given the path string, if the variable is present, ! and is a scalar, then update its value. ! If it is not present, then create it and set its value. ! !@note If the variable is not a scalar, an exception will be thrown. subroutine json_update_integer ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable in the structure integer ( IK ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. type ( json_value ), pointer :: p_var integer ( IK ) :: var_type call json % get ( p , path , p_var , found ) if ( found ) then call json % info ( p_var , var_type ) select case ( var_type ) case ( json_null , json_logical , json_integer , json_real , json_string ) call json % to_integer ( p_var , val ) !update the value case default found = . false . call json % throw_exception ( 'Error in json_update_integer: ' // & 'the variable is not a scalar value' , found ) end select else call json % add_by_path ( p , path , val ) !add the new element end if end subroutine json_update_integer !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_update_integer]], where `path` is kind=CDK. subroutine wrap_json_update_integer ( json , p , path , val , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable in the structure integer ( IK ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. call json % update ( p , to_unicode ( path ), val , found ) end subroutine wrap_json_update_integer !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/6/2014 ! ! Given the path string, if the variable is present, ! and is a scalar, then update its value. ! If it is not present, then create it and set its value. ! !@note If the variable is not a scalar, an exception will be thrown. subroutine json_update_string ( json , p , path , val , found , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable in the structure character ( kind = CK , len =* ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` !! (only used if `val` is present) logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (only used if `val` is present) !! (note that ADJUSTL is done before TRIM) type ( json_value ), pointer :: p_var integer ( IK ) :: var_type call json % get ( p , path , p_var , found ) if ( found ) then call json % info ( p_var , var_type ) select case ( var_type ) case ( json_null , json_logical , json_integer , json_real , json_string ) call json % to_string ( p_var , val , trim_str = trim_str , adjustl_str = adjustl_str ) ! update the value case default found = . false . call json % throw_exception ( 'Error in json_update_string: ' // & 'the variable is not a scalar value' , found ) end select else call json % add_by_path ( p , path , val ) !add the new element end if end subroutine json_update_string !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_update_string]], where `path` and `value` are kind=CDK. subroutine wrap_json_update_string ( json , p , path , val , found , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable in the structure character ( kind = CDK , len =* ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` !! (only used if `val` is present) logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (only used if `val` is present) !! (note that ADJUSTL is done before TRIM) call json % update ( p , to_unicode ( path ), to_unicode ( val ), found , trim_str , adjustl_str ) end subroutine wrap_json_update_string !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_update_string]], where `path` is kind=CDK. subroutine json_update_string_name_ascii ( json , p , path , val , found , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable in the structure character ( kind = CK , len =* ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` !! (only used if `val` is present) logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (only used if `val` is present) !! (note that ADJUSTL is done before TRIM) call json % update ( p , to_unicode ( path ), val , found , trim_str , adjustl_str ) end subroutine json_update_string_name_ascii !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_update_string]], where `val` is kind=CDK. subroutine json_update_string_val_ascii ( json , p , path , val , found , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable in the structure character ( kind = CDK , len =* ), intent ( in ) :: val !! the new value logical ( LK ), intent ( out ) :: found !! if the variable was found and was a scalar. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` !! (only used if `val` is present) logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (only used if `val` is present) !! (note that ADJUSTL is done before TRIM) call json % update ( p , path , to_unicode ( val ), found , trim_str , adjustl_str ) end subroutine json_update_string_val_ascii !***************************************************************************************** !***************************************************************************************** !> ! Adds `member` as a child of `p`. subroutine json_value_add_member ( json , p , member ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! `p` must be a `json_object` !! or a `json_array` type ( json_value ), pointer :: member !! the child member !! to add to `p` integer ( IK ) :: var_type !! variable type of `p` if (. not . json % exception_thrown ) then if ( associated ( p )) then call json % info ( p , var_type = var_type ) select case ( var_type ) case ( json_object , json_array ) ! associate the parent member % parent => p ! add to linked list if ( associated ( p % children )) then p % tail % next => member member % previous => p % tail else p % children => member member % previous => null () !first in the list end if ! new member is now the last one in the list p % tail => member p % n_children = p % n_children + 1 case default call json % throw_exception ( 'Error in json_value_add_member: ' // & 'can only add child to object or array' ) end select else call json % throw_exception ( 'Error in json_value_add_member: ' // & 'the pointer is not associated' ) end if end if end subroutine json_value_add_member !***************************************************************************************** !***************************************************************************************** !> ! Inserts `element` after `p`, and updates the JSON structure accordingly. ! !### Example ! !````fortran ! program test ! use json_module ! implicit none ! logical(json_LK) :: found ! type(json_core) :: json ! type(json_value),pointer :: p,new,element ! call json%load(file='myfile.json', p=p) ! call json%get(p,'x(3)',element,found) ! get pointer to an array element in the file ! call json%create_integer(new,1,'') ! create a new element ! call json%insert_after(element,new) ! insert new element after x(3) ! call json%print(p,'myfile2.json') ! write it to a file ! call json%destroy(p) ! cleanup ! end program test !```` ! !### Details ! ! * This routine can be used to insert a new element (or set of elements) ! into an array or object at a specific index. ! See [[json_value_insert_after_child_by_index]] ! * Children and subsequent elements of `element` are carried along. ! * If the inserted elements are part of an existing list, then ! they are removed from that list. ! !```` ! p ! [1] - [2] - [3] - [4] ! | ! [5] - [6] - [7] n=3 elements inserted ! element last ! ! Result is: ! ! [1] - [2] - [5] - [6] - [7] - [3] - [4] ! !```` subroutine json_value_insert_after ( json , p , element ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! a value from a JSON structure !! (presumably, this is a child of !! an object or array). type ( json_value ), pointer :: element !! the element to insert after `p` type ( json_value ), pointer :: parent !! the parent of `p` type ( json_value ), pointer :: next !! temp pointer for traversing structure type ( json_value ), pointer :: last !! the last of the items being inserted integer :: n !! number of items being inserted if (. not . json % exception_thrown ) then parent => p % parent ! set first parent of inserted list: element % parent => parent ! Count the number of inserted elements. ! and set their parents. n = 1 ! initialize counter next => element % next last => element do if (. not . associated ( next )) exit n = n + 1 next % parent => parent last => next next => next % next end do if ( associated ( parent )) then ! update parent's child counter: parent % n_children = parent % n_children + n ! if p is last of parents children then ! also have to update parent tail pointer: if ( associated ( parent % tail , p )) then parent % tail => last end if end if if ( associated ( element % previous )) then ! element is apparently part of an existing list, ! so have to update that as well. if ( associated ( element % previous % parent )) then element % previous % parent % n_children = & element % previous % parent % n_children - n element % previous % parent % tail => & element % previous ! now the last one in the list else ! this would be a memory leak if the previous entries ! are not otherwise being pointed too ! [throw an error in this case???] end if !remove element from the other list: element % previous % next => null () end if element % previous => p if ( associated ( p % next )) then ! if there are any in the list after p: last % next => p % next last % next % previous => element else last % next => null () end if p % next => element end if end subroutine json_value_insert_after !***************************************************************************************** !***************************************************************************************** !> ! Inserts `element` after the `idx`-th child of `p`, ! and updates the JSON structure accordingly. This is just ! a wrapper for [[json_value_insert_after]]. subroutine json_value_insert_after_child_by_index ( json , p , idx , element ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! a JSON object or array. integer ( IK ), intent ( in ) :: idx !! the index of the child of `p` to !! insert the new element after !! (this is a 1-based Fortran !! style array index) type ( json_value ), pointer :: element !! the element to insert type ( json_value ), pointer :: tmp !! for getting the `idx`-th child of `p` if (. not . json % exception_thrown ) then ! get the idx-th child of p: call json % get_child ( p , idx , tmp ) ! call json_value_insert_after: if (. not . json % exception_thrown ) call json % insert_after ( tmp , element ) end if end subroutine json_value_insert_after_child_by_index !***************************************************************************************** !***************************************************************************************** !> ! Add a new member (`json_value` pointer) to a JSON structure, given the path. ! !@warning If the path points to an existing variable in the structure, ! then this routine will destroy it and replace it with the ! new value. subroutine json_add_member_by_path ( json , me , path , p , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable type ( json_value ), pointer , intent ( in ) :: p !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created type ( json_value ), pointer :: tmp character ( kind = CK , len = :), allocatable :: name !! name of the variable if ( . not . json % exception_thrown ) then if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_add_member_by_path:' // & ' Input pointer p is not associated.' , found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if if ( present ( was_created ) ) was_created = . false . else ! return a pointer to the path (possibly creating it) call json % create ( me , path , tmp , found , was_created ) if (. not . associated ( tmp )) then call json % throw_exception ( 'Error in json_add_member_by_path:' // & ' Unable to resolve path: ' // trim ( path ), found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if else call json % info ( tmp , name = name ) ! replace it with the new one: call json % replace ( tmp , p , destroy = . true .) call json % rename ( p , name ) end if end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_member_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper to [[json_add_member_by_path]] where \"path\" is kind=CDK. subroutine wrap_json_add_member_by_path ( json , me , path , p , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable type ( json_value ), pointer , intent ( in ) :: p !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % json_add_member_by_path ( me , to_unicode ( path ), p , found , was_created ) end subroutine wrap_json_add_member_by_path !***************************************************************************************** !***************************************************************************************** !> ! Add an integer value to a [[json_value]], given the path. ! !@warning If the path points to an existing variable in the structure, ! then this routine will destroy it and replace it with the ! new value. subroutine json_add_integer_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created type ( json_value ), pointer :: p type ( json_value ), pointer :: tmp character ( kind = CK , len = :), allocatable :: name !! variable name if ( . not . json % exception_thrown ) then nullify ( p ) ! return a pointer to the path (possibly creating it) ! If the variable had to be created, then ! it will be a json_null variable. call json % create ( me , path , p , found , was_created ) if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_add_integer_by_path:' // & ' Unable to resolve path: ' // trim ( path ), found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if else !NOTE: a new object is created, and the old one ! is replaced and destroyed. This is to ! prevent memory leaks if the type is ! being changed (for example, if an array ! is being replaced with a scalar). if ( p % var_type == json_integer ) then p % int_value = value else call json % info ( p , name = name ) call json % create_integer ( tmp , value , name ) call json % replace ( p , tmp , destroy = . true .) end if end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_integer_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper to [[json_add_integer_by_path]] where \"path\" is kind=CDK. subroutine wrap_json_add_integer_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % json_add_integer_by_path ( me , to_unicode ( path ), value , found , was_created ) end subroutine wrap_json_add_integer_by_path !***************************************************************************************** !***************************************************************************************** !> ! Add an real value to a [[json_value]], given the path. ! !@warning If the path points to an existing variable in the structure, ! then this routine will destroy it and replace it with the ! new value. subroutine json_add_real_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created type ( json_value ), pointer :: p type ( json_value ), pointer :: tmp character ( kind = CK , len = :), allocatable :: name !! variable name if ( . not . json % exception_thrown ) then nullify ( p ) ! return a pointer to the path (possibly creating it) ! If the variable had to be created, then ! it will be a json_null variable. call json % create ( me , path , p , found , was_created ) if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_add_real_by_path:' // & ' Unable to resolve path: ' // trim ( path ), found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if else !NOTE: a new object is created, and the old one ! is replaced and destroyed. This is to ! prevent memory leaks if the type is ! being changed (for example, if an array ! is being replaced with a scalar). if ( p % var_type == json_real ) then p % dbl_value = value else call json % info ( p , name = name ) call json % create_real ( tmp , value , name ) call json % replace ( p , tmp , destroy = . true .) end if end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_real_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper to [[json_add_real_by_path]] where \"path\" is kind=CDK. subroutine wrap_json_add_real_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % json_add_real_by_path ( me , to_unicode ( path ), value , found , was_created ) end subroutine wrap_json_add_real_by_path !***************************************************************************************** #ifndef REAL32 !***************************************************************************************** !> ! Alternate version of [[json_add_real_by_path]] where value=real32. subroutine json_add_real32_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % add_by_path ( me , path , real ( value , RK ), found , was_created ) end subroutine json_add_real32_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper to [[json_add_real32_by_path]] where \"path\" is kind=CDK. subroutine wrap_json_add_real32_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % add_by_path ( me , to_unicode ( path ), real ( value , RK ), found , was_created ) end subroutine wrap_json_add_real32_by_path !***************************************************************************************** #endif #ifdef REAL128 !***************************************************************************************** !> ! Alternate version of [[json_add_real_by_path]] where value=real32. subroutine json_add_real64_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real64 ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % add_by_path ( me , path , real ( value , RK ), found , was_created ) end subroutine json_add_real64_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper to [[json_add_real64_by_path]] where \"path\" is kind=CDK. subroutine wrap_json_add_real64_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real64 ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % add_by_path ( me , to_unicode ( path ), real ( value , RK ), found , was_created ) end subroutine wrap_json_add_real64_by_path !***************************************************************************************** #endif !***************************************************************************************** !> ! Add a logical value to a [[json_value]], given the path. ! !@warning If the path points to an existing variable in the structure, ! then this routine will destroy it and replace it with the ! new value. subroutine json_add_logical_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created type ( json_value ), pointer :: p type ( json_value ), pointer :: tmp character ( kind = CK , len = :), allocatable :: name !! variable name if ( . not . json % exception_thrown ) then nullify ( p ) ! return a pointer to the path (possibly creating it) ! If the variable had to be created, then ! it will be a json_null variable. call json % create ( me , path , p , found , was_created ) if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_add_logical_by_path:' // & ' Unable to resolve path: ' // trim ( path ), found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if else !NOTE: a new object is created, and the old one ! is replaced and destroyed. This is to ! prevent memory leaks if the type is ! being changed (for example, if an array ! is being replaced with a scalar). if ( p % var_type == json_logical ) then p % log_value = value else call json % info ( p , name = name ) call json % create_logical ( tmp , value , name ) call json % replace ( p , tmp , destroy = . true .) end if end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_logical_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper to [[json_add_logical_by_path]] where \"path\" is kind=CDK. subroutine wrap_json_add_logical_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % json_add_logical_by_path ( me , to_unicode ( path ), value , found , was_created ) end subroutine wrap_json_add_logical_by_path !***************************************************************************************** !***************************************************************************************** !> ! Add a string value to a [[json_value]], given the path. ! !@warning If the path points to an existing variable in the structure, ! then this routine will destroy it and replace it with the ! new value. subroutine json_add_string_by_path ( json , me , path , value , found ,& was_created , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element type ( json_value ), pointer :: p type ( json_value ), pointer :: tmp character ( kind = CK , len = :), allocatable :: name !! variable name if ( . not . json % exception_thrown ) then nullify ( p ) ! return a pointer to the path (possibly creating it) ! If the variable had to be created, then ! it will be a json_null variable. call json % create ( me , path , p , found , was_created ) if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_add_string_by_path:' // & ' Unable to resolve path: ' // trim ( path ), found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if else !NOTE: a new object is created, and the old one ! is replaced and destroyed. This is to ! prevent memory leaks if the type is ! being changed (for example, if an array ! is being replaced with a scalar). if ( p % var_type == json_string ) then p % str_value = value else call json % info ( p , name = name ) call json % create_string ( tmp , value , name , trim_str , adjustl_str ) call json % replace ( p , tmp , destroy = . true .) end if end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_string_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper to [[json_add_string_by_path]] where \"path\" is kind=CDK. subroutine wrap_json_add_string_by_path ( json , me , path , value , found ,& was_created , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element call json % json_add_string_by_path ( me , to_unicode ( path ), to_unicode ( value ),& found , was_created , trim_str , adjustl_str ) end subroutine wrap_json_add_string_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper for [[json_add_string_by_path]] where \"path\" is kind=CDK. subroutine json_add_string_by_path_path_ascii ( json , me , path , value , found ,& was_created , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element call json % json_add_string_by_path ( me , to_unicode ( path ), value , found , was_created , trim_str , adjustl_str ) end subroutine json_add_string_by_path_path_ascii !***************************************************************************************** !***************************************************************************************** !> ! Wrapper for [[json_add_string_by_path]] where \"value\" is kind=CDK. subroutine json_add_string_by_path_value_ascii ( json , me , path , value , found ,& was_created , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), intent ( in ) :: value !! the value to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element call json % json_add_string_by_path ( me , path , to_unicode ( value ), found , was_created , trim_str , adjustl_str ) end subroutine json_add_string_by_path_value_ascii !***************************************************************************************** !***************************************************************************************** !> ! Wrapper to [[json_add_integer_by_path]] for adding an integer vector by path. subroutine json_add_integer_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created type ( json_value ), pointer :: p !! pointer to path (which may exist) type ( json_value ), pointer :: var !! new variable that is created integer ( IK ) :: i !! counter character ( kind = CK , len = :), allocatable :: name !! the variable name logical ( LK ) :: p_found !! if the path was successfully found (or created) if ( . not . json % exception_thrown ) then !get a pointer to the variable !(creating it if necessary) call json % create ( me , path , p , found = p_found ) if ( p_found ) then call json % info ( p , name = name ) ! want to keep the existing name call json % create_array ( var , name ) ! create a new array variable call json % replace ( p , var , destroy = . true .) ! replace p with this array (destroy p) !populate each element of the array: do i = 1 , size ( value ) call json % add ( var , CK_ '' , value ( i )) end do end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_integer_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper for [[json_add_integer_vec_by_path]] where \"path\" is kind=CDK). subroutine wrap_json_add_integer_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable integer ( IK ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % json_add_integer_vec_by_path ( me , to_unicode ( path ), value , found , was_created ) end subroutine wrap_json_add_integer_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper to [[json_add_logical_by_path]] for adding a logical vector by path. subroutine json_add_logical_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created type ( json_value ), pointer :: p !! pointer to path (which may exist) type ( json_value ), pointer :: var !! new variable that is created integer ( IK ) :: i !! counter character ( kind = CK , len = :), allocatable :: name !! the variable name logical ( LK ) :: p_found !! if the path was successfully found (or created) if ( . not . json % exception_thrown ) then !get a pointer to the variable !(creating it if necessary) call json % create ( me , path , p , found = p_found ) if ( p_found ) then call json % info ( p , name = name ) ! want to keep the existing name call json % create_array ( var , name ) ! create a new array variable call json % replace ( p , var , destroy = . true .) ! replace p with this array (destroy p) !populate each element of the array: do i = 1 , size ( value ) call json % add ( var , CK_ '' , value ( i )) end do end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_logical_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper for [[json_add_logical_vec_by_path]] where \"path\" is kind=CDK). subroutine wrap_json_add_logical_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable logical ( LK ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % json_add_logical_vec_by_path ( me , to_unicode ( path ), value , found , was_created ) end subroutine wrap_json_add_logical_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper to [[json_add_real_by_path]] for adding a real vector by path. subroutine json_add_real_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created type ( json_value ), pointer :: p !! pointer to path (which may exist) type ( json_value ), pointer :: var !! new variable that is created integer ( IK ) :: i !! counter character ( kind = CK , len = :), allocatable :: name !! the variable name logical ( LK ) :: p_found !! if the path was successfully found (or created) if ( . not . json % exception_thrown ) then !get a pointer to the variable !(creating it if necessary) call json % create ( me , path , p , found = p_found ) if ( p_found ) then call json % info ( p , name = name ) ! want to keep the existing name call json % create_array ( var , name ) ! create a new array variable call json % replace ( p , var , destroy = . true .) ! replace p with this array (destroy p) !populate each element of the array: do i = 1 , size ( value ) call json % add ( var , CK_ '' , value ( i )) end do end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_real_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper for [[json_add_real_vec_by_path]] where \"path\" is kind=CDK). subroutine wrap_json_add_real_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( RK ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % json_add_real_vec_by_path ( me , to_unicode ( path ), value , found , was_created ) end subroutine wrap_json_add_real_vec_by_path !***************************************************************************************** #ifndef REAL32 !***************************************************************************************** !> ! Wrapper to [[json_add_real_by_path]] for adding a real vector by path. subroutine json_add_real32_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % add_by_path ( me , path , real ( value , RK ), found , was_created ) end subroutine json_add_real32_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper for [[json_add_real32_vec_by_path]] where \"path\" is kind=CDK). subroutine wrap_json_add_real32_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real32 ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % add_by_path ( me , to_unicode ( path ), real ( value , RK ), found , was_created ) end subroutine wrap_json_add_real32_vec_by_path !***************************************************************************************** #endif #ifdef REAL128 !***************************************************************************************** !> ! Wrapper to [[json_add_real_by_path]] for adding a real vector by path. subroutine json_add_real64_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable real ( real64 ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % add_by_path ( me , path , real ( value , RK ), found , was_created ) end subroutine json_add_real64_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper for [[json_add_real64_vec_by_path]] where \"path\" is kind=CDK). subroutine wrap_json_add_real64_vec_by_path ( json , me , path , value , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable real ( real64 ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created call json % add_by_path ( me , to_unicode ( path ), real ( value , RK ), found , was_created ) end subroutine wrap_json_add_real64_vec_by_path !***************************************************************************************** #endif !***************************************************************************************** !> ! Wrapper to [[json_add_string_by_path]] for adding a string vector by path. ! !@note The `ilen` input can be used to specify the actual lengths of the ! the strings in the array. They must all be `<= len(value)`. subroutine json_add_string_vec_by_path ( json , me , path , value , found , was_created , ilen , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created integer ( IK ), dimension (:), intent ( in ), optional :: ilen !! the string lengths of each !! element in `value`. If not present, !! the full `len(value)` string is added !! for each element. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element type ( json_value ), pointer :: p !! pointer to path (which may exist) type ( json_value ), pointer :: var !! new variable that is created integer ( IK ) :: i !! counter character ( kind = CK , len = :), allocatable :: name !! the variable name logical ( LK ) :: p_found !! if the path was successfully found (or created) if ( . not . json % exception_thrown ) then ! validate ilen array if present: if ( present ( ilen )) then if ( size ( ilen ) /= size ( value )) then call json % throw_exception ( 'Error in json_add_string_vec_by_path: ' // & 'Invalid size of ilen input vector.' , found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if if ( present ( was_created )) was_created = . false . return else ! also have to validate the specified lengths. ! (must not be greater than input string length) do i = 1 , size ( value ) if ( ilen ( i ) > len ( value )) then call json % throw_exception ( 'Error in json_add_string_vec_by_path: ' // & 'Invalid ilen element.' , found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if if ( present ( was_created )) was_created = . false . return end if end do end if end if !get a pointer to the variable !(creating it if necessary) call json % create ( me , path , p , found = p_found ) if ( p_found ) then call json % info ( p , name = name ) ! want to keep the existing name call json % create_array ( var , name ) ! create a new array variable call json % replace ( p , var , destroy = . true .) ! replace p with this array (destroy p) !populate each element of the array: do i = 1 , size ( value ) if ( present ( ilen )) then call json % add ( var , CK_ '' , value ( i )( 1 : ilen ( i )), & trim_str = trim_str , adjustl_str = adjustl_str ) else call json % add ( var , CK_ '' , value ( i ), & trim_str = trim_str , adjustl_str = adjustl_str ) end if end do end if else if ( present ( found ) ) found = . false . if ( present ( was_created ) ) was_created = . false . end if end subroutine json_add_string_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper for [[json_add_string_vec_by_path]] where \"path\" and \"value\" are kind=CDK). subroutine wrap_json_add_string_vec_by_path ( json , me , path , value ,& found , was_created , ilen ,& trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created integer ( IK ), dimension (:), intent ( in ), optional :: ilen !! the string lengths of each !! element in `value`. If not present, !! the full `len(value)` string is added !! for each element. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element call json % json_add_string_vec_by_path ( me , to_unicode ( path ), to_unicode ( value ),& found , was_created , ilen , trim_str , adjustl_str ) end subroutine wrap_json_add_string_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper for [[json_add_string_vec_by_path]] where \"value\" is kind=CDK). subroutine json_add_string_vec_by_path_value_ascii ( json , me , path , value ,& found , was_created , ilen ,& trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CDK , len =* ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created integer ( IK ), dimension (:), intent ( in ), optional :: ilen !! the string lengths of each !! element in `value`. If not present, !! the full `len(value)` string is added !! for each element. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element call json % json_add_string_vec_by_path ( me , path , to_unicode ( value ),& found , was_created , ilen , trim_str , adjustl_str ) end subroutine json_add_string_vec_by_path_value_ascii !***************************************************************************************** !***************************************************************************************** !> ! Wrapper for [[json_add_string_vec_by_path]] where \"path\" is kind=CDK). subroutine json_add_string_vec_by_path_path_ascii ( json , me , path , value ,& found , was_created , ilen ,& trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me !! the JSON structure character ( kind = CDK , len =* ), intent ( in ) :: path !! the path to the variable character ( kind = CK , len =* ), dimension (:), intent ( in ) :: value !! the vector to add logical ( LK ), intent ( out ), optional :: found !! if the variable was found logical ( LK ), intent ( out ), optional :: was_created !! if the variable had to be created integer ( IK ), dimension (:), intent ( in ), optional :: ilen !! the string lengths of each !! element in `value`. If not present, !! the full `len(value)` string is added !! for each element. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element call json % json_add_string_vec_by_path ( me , to_unicode ( path ), value ,& found , was_created , ilen , trim_str , adjustl_str ) end subroutine json_add_string_vec_by_path_path_ascii !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/19/2014 ! ! Add a real value child to the [[json_value]] variable. ! !@note This routine is part of the public API that can be ! used to build a JSON structure using [[json_value]] pointers. subroutine json_value_add_real ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! variable name real ( RK ), intent ( in ) :: val !! real value type ( json_value ), pointer :: var !create the variable: call json % create_real ( var , val , name ) !add it: call json % add ( p , var ) end subroutine json_value_add_real !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_real]] where `name` is kind=CDK. subroutine wrap_json_value_add_real ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! variable name real ( RK ), intent ( in ) :: val !! real value call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_real !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/20/2014 ! ! Add a real vector child to the [[json_value]] variable. ! !@note This routine is part of the public API that can be ! used to build a JSON structure using [[json_value]] pointers. subroutine json_value_add_real_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name real ( RK ), dimension (:), intent ( in ) :: val type ( json_value ), pointer :: var integer ( IK ) :: i !! counter !create the variable as an array: call json % create_array ( var , name ) !populate the array: do i = 1 , size ( val ) call json % add ( var , CK_ '' , val ( i )) end do !add it: call json % add ( p , var ) end subroutine json_value_add_real_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_real_vec]] where `name` is kind=CDK. subroutine wrap_json_value_add_real_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name real ( RK ), dimension (:), intent ( in ) :: val call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_real_vec !***************************************************************************************** #ifndef REAL32 !***************************************************************************************** !> ! Alternate version of [[json_value_add_real]] where `val` is `real32`. subroutine json_value_add_real32 ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! variable name real ( real32 ), intent ( in ) :: val !! real value call json % add ( p , name , real ( val , RK )) end subroutine json_value_add_real32 !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_real32]] where `name` is kind=CDK. subroutine wrap_json_value_add_real32 ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! variable name real ( real32 ), intent ( in ) :: val !! real value call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_real32 !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_real_vec]] where `val` is `real32`. subroutine json_value_add_real32_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name real ( real32 ), dimension (:), intent ( in ) :: val call json % add ( p , name , real ( val , RK )) end subroutine json_value_add_real32_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_real32_vec]] where `name` is kind=CDK. subroutine wrap_json_value_add_real32_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name real ( real32 ), dimension (:), intent ( in ) :: val call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_real32_vec !***************************************************************************************** #endif #ifdef REAL128 !***************************************************************************************** !> ! Alternate version of [[json_value_add_real]] where `val` is `real64`. subroutine json_value_add_real64 ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! variable name real ( real64 ), intent ( in ) :: val !! real value call json % add ( p , name , real ( val , RK )) end subroutine json_value_add_real64 !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_real64]] where `name` is kind=CDK. subroutine wrap_json_value_add_real64 ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! variable name real ( real64 ), intent ( in ) :: val !! real value call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_real64 !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_real_vec]] where `val` is `real64`. subroutine json_value_add_real64_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name real ( real64 ), dimension (:), intent ( in ) :: val call json % add ( p , name , real ( val , RK )) end subroutine json_value_add_real64_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_real64_vec]] where `name` is kind=CDK. subroutine wrap_json_value_add_real64_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name real ( real64 ), dimension (:), intent ( in ) :: val call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_real64_vec !***************************************************************************************** #endif !***************************************************************************************** !> ! Add a NULL value child to the [[json_value]] variable. ! !@note This routine is part of the public API that can be ! used to build a JSON structure using [[json_value]] pointers. subroutine json_value_add_null ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name type ( json_value ), pointer :: var !create the variable: call json % create_null ( var , name ) !add it: call json % add ( p , var ) end subroutine json_value_add_null !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_null]] where `name` is kind=CDK. subroutine wrap_json_value_add_null ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! name of the variable call json % add ( p , to_unicode ( name )) end subroutine wrap_json_value_add_null !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/20/2014 ! ! Add an integer value child to the [[json_value]] variable. ! !@note This routine is part of the public API that can be ! used to build a JSON structure using [[json_value]] pointers. subroutine json_value_add_integer ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name integer ( IK ), intent ( in ) :: val type ( json_value ), pointer :: var !create the variable: call json % create_integer ( var , val , name ) !add it: call json % add ( p , var ) end subroutine json_value_add_integer !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_integer]] where `name` is kind=CDK. subroutine wrap_json_value_add_integer ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! name of the variable integer ( IK ), intent ( in ) :: val !! value call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_integer !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/20/2014 ! ! Add a integer vector child to the [[json_value]] variable. ! !@note This routine is part of the public API that can be ! used to build a JSON structure using [[json_value]] pointers. subroutine json_value_add_integer_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! name of the variable integer ( IK ), dimension (:), intent ( in ) :: val !! value type ( json_value ), pointer :: var integer ( IK ) :: i !! counter !create a variable as an array: call json % create_array ( var , name ) !populate the array: do i = 1 , size ( val ) call json % add ( var , CK_ '' , val ( i )) end do !add it: call json % add ( p , var ) end subroutine json_value_add_integer_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_integer_vec]] where `name` is kind=CDK. subroutine wrap_json_value_add_integer_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! name of the variable integer ( IK ), dimension (:), intent ( in ) :: val !! value call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_integer_vec !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/20/2014 ! ! Add a logical value child to the [[json_value]] variable. ! !@note This routine is part of the public API that can be ! used to build a JSON structure using [[json_value]] pointers. subroutine json_value_add_logical ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! name of the variable logical ( LK ), intent ( in ) :: val !! value type ( json_value ), pointer :: var !create the variable: call json % create_logical ( var , val , name ) !add it: call json % add ( p , var ) end subroutine json_value_add_logical !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_logical]] where `name` is kind=CDK. subroutine wrap_json_value_add_logical ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! name of the variable logical ( LK ), intent ( in ) :: val !! value call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_logical !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/20/2014 ! ! Add a logical vector child to the [[json_value]] variable. ! !@note This routine is part of the public API that can be ! used to build a JSON structure using [[json_value]] pointers. subroutine json_value_add_logical_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! name of the vector logical ( LK ), dimension (:), intent ( in ) :: val !! value type ( json_value ), pointer :: var integer ( IK ) :: i !! counter !create the variable as an array: call json % create_array ( var , name ) !populate the array: do i = 1 , size ( val ) call json % add ( var , CK_ '' , val ( i )) end do !add it: call json % add ( p , var ) end subroutine json_value_add_logical_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_logical_vec]] where `name` is kind=CDK. subroutine wrap_json_value_add_logical_vec ( json , p , name , val ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! name of the variable logical ( LK ), dimension (:), intent ( in ) :: val !! value call json % add ( p , to_unicode ( name ), val ) end subroutine wrap_json_value_add_logical_vec !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/19/2014 ! ! Add a character string child to the [[json_value]] variable. ! !@note This routine is part of the public API that can be ! used to build a JSON structure using [[json_value]] pointers. subroutine json_value_add_string ( json , p , name , val , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! name of the variable character ( kind = CK , len =* ), intent ( in ) :: val !! value logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` type ( json_value ), pointer :: var !create the variable: call json % create_string ( var , val , name , trim_str , adjustl_str ) !add it: call json % add ( p , var ) end subroutine json_value_add_string !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_string]] where `name` and `val` are kind=CDK. subroutine wrap_json_value_add_string ( json , p , name , val , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! name of the variable character ( kind = CDK , len =* ), intent ( in ) :: val !! value logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` call json % add ( p , to_unicode ( name ), to_unicode ( val ), trim_str , adjustl_str ) end subroutine wrap_json_value_add_string !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_string]] where `name` is kind=CDK. subroutine json_value_add_string_name_ascii ( json , p , name , val , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name !! name of the variable character ( kind = CK , len =* ), intent ( in ) :: val !! value logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` call json % add ( p , to_unicode ( name ), val , trim_str , adjustl_str ) end subroutine json_value_add_string_name_ascii !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_string]] where `val` is kind=CDK. subroutine json_value_add_string_val_ascii ( json , p , name , val , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! name of the variable character ( kind = CDK , len =* ), intent ( in ) :: val !! value logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` call json % add ( p , name , to_unicode ( val ), trim_str , adjustl_str ) end subroutine json_value_add_string_val_ascii !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/19/2014 ! ! Add a character string vector child to the [[json_value]] variable. ! !@note This routine is part of the public API that can be ! used to build a JSON structure using [[json_value]] pointers. subroutine json_value_add_string_vec ( json , p , name , val , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name !! variable name character ( kind = CK , len =* ), dimension (:), intent ( in ) :: val !! array of strings logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for each element logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for each element type ( json_value ), pointer :: var integer ( IK ) :: i !! counter !create the variable as an array: call json % create_array ( var , name ) !populate the array: do i = 1 , size ( val ) call json % add ( var , CK_ '' , val ( i ), trim_str , adjustl_str ) end do !add it: call json % add ( p , var ) end subroutine json_value_add_string_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_string_vec]] where `name` and `val` are kind=CDK. subroutine wrap_json_value_add_string_vec ( json , p , name , val , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name character ( kind = CDK , len =* ), dimension (:), intent ( in ) :: val logical ( LK ), intent ( in ), optional :: trim_str logical ( LK ), intent ( in ), optional :: adjustl_str call json % add ( p , to_unicode ( name ), to_unicode ( val ), trim_str , adjustl_str ) end subroutine wrap_json_value_add_string_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_string_vec]] where `name` is kind=CDK. subroutine json_value_add_string_vec_name_ascii ( json , p , name , val , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name character ( kind = CK , len =* ), dimension (:), intent ( in ) :: val logical ( LK ), intent ( in ), optional :: trim_str logical ( LK ), intent ( in ), optional :: adjustl_str call json % add ( p , to_unicode ( name ), val , trim_str , adjustl_str ) end subroutine json_value_add_string_vec_name_ascii !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_add_string_vec]] where `val` is kind=CDK. subroutine json_value_add_string_vec_val_ascii ( json , p , name , val , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name character ( kind = CDK , len =* ), dimension (:), intent ( in ) :: val logical ( LK ), intent ( in ), optional :: trim_str logical ( LK ), intent ( in ), optional :: adjustl_str call json % add ( p , name , to_unicode ( val ), trim_str , adjustl_str ) end subroutine json_value_add_string_vec_val_ascii !***************************************************************************************** !***************************************************************************************** !> ! Count the number of children in the object or array. ! !### History ! * JW : 1/4/2014 : Original routine removed. ! Now using `n_children` variable. ! Renamed from `json_value_count`. function json_count ( json , p ) result ( count ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! this should normally be a `json_object` !! or a `json_array`. For any other !! variable type this will return 0. integer ( IK ) :: count !! number of children in `p`. if ( associated ( p )) then count = p % n_children else call json % throw_exception ( 'Error in json_count: ' // & 'pointer is not associated.' ) end if end function json_count !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 10/16/2015 ! ! Returns a pointer to the parent of a [[json_value]]. ! If there is no parent, then a `null()` pointer is returned. subroutine json_get_parent ( json , p , parent ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! JSON object type ( json_value ), pointer , intent ( out ) :: parent !! pointer to `parent` if ( associated ( p )) then parent => p % parent else nullify ( parent ) call json % throw_exception ( 'Error in json_get_parent: ' // & 'pointer is not associated.' ) end if end subroutine json_get_parent !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 10/31/2015 ! ! Returns a pointer to the next of a [[json_value]]. ! If there is no next, then a `null()` pointer is returned. subroutine json_get_next ( json , p , next ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! JSON object type ( json_value ), pointer , intent ( out ) :: next !! pointer to `next` if ( associated ( p )) then next => p % next else nullify ( next ) call json % throw_exception ( 'Error in json_get_next: ' // & 'pointer is not associated.' ) end if end subroutine json_get_next !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 10/31/2015 ! ! Returns a pointer to the previous of a [[json_value]]. ! If there is no previous, then a `null()` pointer is returned. subroutine json_get_previous ( json , p , previous ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! JSON object type ( json_value ), pointer , intent ( out ) :: previous !! pointer to `previous` if ( associated ( p )) then previous => p % previous else nullify ( previous ) call json % throw_exception ( 'Error in json_get_previous: ' // & 'pointer is not associated.' ) end if end subroutine json_get_previous !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 10/31/2015 ! ! Returns a pointer to the tail of a [[json_value]] ! (the last child of an array of object). ! If there is no tail, then a `null()` pointer is returned. subroutine json_get_tail ( json , p , tail ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! JSON object type ( json_value ), pointer , intent ( out ) :: tail !! pointer to `tail` if ( associated ( p )) then tail => p % tail else nullify ( tail ) call json % throw_exception ( 'Error in json_get_tail: ' // & 'pointer is not associated.' ) end if end subroutine json_get_tail !***************************************************************************************** !***************************************************************************************** !> ! Returns a child in the object or array given the index. subroutine json_value_get_child_by_index ( json , p , idx , child , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! object or array JSON data integer ( IK ), intent ( in ) :: idx !! index of the child !! (this is a 1-based Fortran !! style array index). type ( json_value ), pointer :: child !! pointer to the child logical ( LK ), intent ( out ), optional :: found !! true if the value was found !! (if not present, an exception !! will be thrown if it was not !! found. If present and not !! found, no exception will be !! thrown). integer ( IK ) :: i !! counter nullify ( child ) if (. not . json % exception_thrown ) then if ( associated ( p % children )) then ! If getting first or last child, we can do this quickly. ! Otherwise, traverse the list. if ( idx == 1 ) then child => p % children ! first one elseif ( idx == p % n_children ) then if ( associated ( p % tail )) then child => p % tail ! last one else call json % throw_exception ( 'Error in json_value_get_child_by_index:' // & ' child%tail is not associated.' , found ) end if elseif ( idx < 1 . or . idx > p % n_children ) then call json % throw_exception ( 'Error in json_value_get_child_by_index:' // & ' idx is out of range.' , found ) else ! if idx is closer to the end, we traverse the list backward from tail, ! otherwise we traverse it forward from children: if ( p % n_children - idx < idx ) then ! traverse backward child => p % tail do i = 1 , p % n_children - idx if ( associated ( child % previous )) then child => child % previous else call json % throw_exception ( 'Error in json_value_get_child_by_index:' // & ' child%previous is not associated.' , found ) nullify ( child ) exit end if end do else ! traverse forward child => p % children do i = 1 , idx - 1 if ( associated ( child % next )) then child => child % next else call json % throw_exception ( 'Error in json_value_get_child_by_index:' // & ' child%next is not associated.' , found ) nullify ( child ) exit end if end do end if end if else call json % throw_exception ( 'Error in json_value_get_child_by_index:' // & ' p%children is not associated.' , found ) end if ! found output: if ( json % exception_thrown ) then if ( present ( found )) then call json % clear_exceptions () found = . false . end if else if ( present ( found )) found = . true . end if else if ( present ( found )) found = . false . end if end subroutine json_value_get_child_by_index !***************************************************************************************** !***************************************************************************************** !> ! Returns pointer to the first child of the object ! (or `null()` if it is not associated). subroutine json_value_get_child ( json , p , child ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! object or array JSON data type ( json_value ), pointer :: child !! pointer to the child if ( associated ( p )) then child => p % children else nullify ( child ) call json % throw_exception ( 'Error in json_value_get_child: ' // & 'pointer is not associated.' ) end if end subroutine json_value_get_child !***************************************************************************************** !***************************************************************************************** !> ! Returns a child in the object or array given the name string. ! ! The name search can be case-sensitive or not, and can have significant trailing ! whitespace or not, depending on the settings in the [[json_core(type)]] class. ! !@note The `name` input is not a path, and is not parsed like it is in [[json_get_by_path]]. subroutine json_value_get_child_by_name ( json , p , name , child , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p character ( kind = CK , len =* ), intent ( in ) :: name !! the name of a child of `p` type ( json_value ), pointer :: child !! pointer to the child logical ( LK ), intent ( out ), optional :: found !! true if the value was found !! (if not present, an exception !! will be thrown if it was not !! found. If present and not !! found, no exception will be !! thrown). integer ( IK ) :: i , n_children logical :: error nullify ( child ) if (. not . json % exception_thrown ) then if ( associated ( p )) then error = . true . ! will be false if it is found if ( p % var_type == json_object ) then n_children = json % count ( p ) child => p % children !start with first one do i = 1 , n_children if (. not . associated ( child )) then call json % throw_exception (& 'Error in json_value_get_child_by_name: ' // & 'Malformed JSON linked list' , found ) exit end if if ( allocated ( child % name )) then !name string matching routine: if ( json % name_equal ( child , name )) then error = . false . exit end if end if child => child % next end do end if if ( error ) then !did not find anything: call json % throw_exception (& 'Error in json_value_get_child_by_name: ' // & 'child variable ' // trim ( name ) // ' was not found.' , found ) nullify ( child ) end if else call json % throw_exception (& 'Error in json_value_get_child_by_name: ' // & 'pointer is not associated.' , found ) end if ! found output: if ( json % exception_thrown ) then if ( present ( found )) then call json % clear_exceptions () found = . false . end if else if ( present ( found )) found = . true . end if else if ( present ( found )) found = . false . end if end subroutine json_value_get_child_by_name !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 8/25/2017 ! ! Checks a JSON object for duplicate child names. ! ! It uses the specified settings for name matching (see [[name_strings_equal]]). ! !@note This will only check for one duplicate, ! it will return the first one that it finds. subroutine json_check_children_for_duplicate_keys ( json , p , has_duplicate , name , path ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! the object to search. If `p` is !! not a `json_object`, then `has_duplicate` !! will be false. logical ( LK ), intent ( out ) :: has_duplicate !! true if there is at least !! two children have duplicate !! `name` values. character ( kind = CK , len = :), allocatable , intent ( out ), optional :: name !! the duplicate name !! (unallocated if no !! duplicate was found) character ( kind = CK , len = :), allocatable , intent ( out ), optional :: path !! the full path to the !! duplicate name !! (unallocated if no !! duplicate was found) integer ( IK ) :: i !! counter integer ( IK ) :: j !! counter type ( json_value ), pointer :: child !! pointer to a child of `p` integer ( IK ) :: n_children !! number of children of `p` logical ( LK ) :: found !! flag for `get_child` type :: alloc_str !! so we can have an array of allocatable strings character ( kind = CK , len = :), allocatable :: str !! name string end type alloc_str type ( alloc_str ), dimension (:), allocatable :: names !! array of all the !! child name strings ! initialize: has_duplicate = . false . if (. not . json % exception_thrown ) then if ( associated ( p )) then if ( p % var_type == json_object ) then ! number of items to check: n_children = json % count ( p ) allocate ( names ( n_children )) ! first get a list of all the name keys: do i = 1 , n_children call json % get_child ( p , i , child , found ) ! get by index if (. not . found ) then call json % throw_exception (& 'Error in json_check_children_for_duplicate_keys: ' // & 'Malformed JSON linked list' ) exit end if if ( allocated ( child % name )) then names ( i )% str = child % name else call json % throw_exception (& 'Error in json_check_children_for_duplicate_keys: ' // & 'Object child name is not allocated' ) exit end if end do if (. not . json % exception_thrown ) then ! now check the list for duplicates: main : do i = 1 , n_children do j = 1 , i - 1 if ( json % name_strings_equal ( names ( i )% str , names ( j )% str )) then has_duplicate = . true . if ( present ( name )) then name = names ( i )% str end if if ( present ( path )) then call json % get_child ( p , names ( i )% str , child , found ) ! get by name if ( found ) then call json % get_path ( child , path , found ) if (. not . found ) then ! should never happen since we know it is there call json % throw_exception (& 'Error in json_check_children_for_duplicate_keys: ' // & 'Could not get path' ) end if else ! should never happen since we know it is there call json % throw_exception (& 'Error in json_check_children_for_duplicate_keys: ' // & 'Could not get child: ' // trim ( names ( i )% str )) end if end if exit main end if end do end do main end if ! cleanup do i = 1 , n_children if ( allocated ( names ( i )% str )) deallocate ( names ( i )% str ) end do if ( allocated ( names )) deallocate ( names ) end if end if end if end subroutine json_check_children_for_duplicate_keys !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 8/25/2017 ! ! Checks a JSON structure for duplicate child names. ! This one recursively traverses the entire structure ! (calling [[json_check_children_for_duplicate_keys]] ! recursively for each element). ! !@note This will only check for one duplicate, ! it will return the first one that it finds. subroutine json_check_all_for_duplicate_keys ( json , p , has_duplicate , name , path ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! the object to search. If `p` is !! not a `json_object`, then `has_duplicate` !! will be false. logical ( LK ), intent ( out ) :: has_duplicate !! true if there is at least !! one duplicate `name` key anywhere !! in the structure. character ( kind = CK , len = :), allocatable , intent ( out ), optional :: name !! the duplicate name !! (unallocated if no !! duplicates were found) character ( kind = CK , len = :), allocatable , intent ( out ), optional :: path !! the full path to the !! duplicate name !! (unallocated if no !! duplicate was found) has_duplicate = . false . if (. not . json % exception_thrown ) then call json % traverse ( p , duplicate_key_func ) end if contains subroutine duplicate_key_func ( json , p , finished ) !! Callback function to check each element !! for duplicate child names. implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p logical ( LK ), intent ( out ) :: finished #if defined __GFORTRAN__ ! this is a workaround for a gfortran bug (6 and 7), character ( kind = CK , len = :), allocatable :: tmp_name !! temp variable for `name` string character ( kind = CK , len = :), allocatable :: tmp_path !! temp variable for `path` string if ( present ( name ) . and . present ( path )) then call json % check_children_for_duplicate_keys ( p , has_duplicate , name = tmp_name , path = tmp_path ) else if ( present ( name ) . and . . not . present ( path )) then call json % check_children_for_duplicate_keys ( p , has_duplicate , name = tmp_name ) else if (. not . present ( name ) . and . present ( path )) then call json % check_children_for_duplicate_keys ( p , has_duplicate , path = tmp_path ) else call json % check_children_for_duplicate_keys ( p , has_duplicate ) end if if ( has_duplicate ) then if ( present ( name )) name = tmp_name if ( present ( path )) path = tmp_path end if #else call json % check_children_for_duplicate_keys ( p , has_duplicate , name , path ) #endif finished = has_duplicate . or . json % exception_thrown end subroutine duplicate_key_func end subroutine json_check_all_for_duplicate_keys !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_get_child_by_name]] where `name` is kind=CDK. subroutine wrap_json_value_get_child_by_name ( json , p , name , child , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p character ( kind = CDK , len =* ), intent ( in ) :: name type ( json_value ), pointer :: child logical ( LK ), intent ( out ), optional :: found call json % get ( p , to_unicode ( name ), child , found ) end subroutine wrap_json_value_get_child_by_name !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 2/12/2014 ! ! Print the [[json_value]] structure to an allocatable string. subroutine json_value_to_string ( json , p , str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p character ( kind = CK , len = :), intent ( out ), allocatable :: str !! prints structure to this string integer ( IK ) :: iloc !! used to keep track of size of str !! since it is being allocated in chunks. str = repeat ( space , print_str_chunk_size ) iloc = 0_IK call json % json_value_print ( p , iunit = unit2str , str = str , iloc = iloc , indent = 1_IK , colon = . true .) ! trim the string if necessary: if ( len ( str ) > iloc ) str = str ( 1 : iloc ) end subroutine json_value_to_string !***************************************************************************************** !***************************************************************************************** !> ! Print the [[json_value]] structure to the console (`output_unit`). ! !### Note ! * Just a wrapper for [[json_print_to_unit]]. subroutine json_print_to_console ( json , p ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p call json % print ( p , int ( output_unit , IK )) end subroutine json_print_to_console !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 6/20/2014 ! ! Print the [[json_value]] structure to a file. subroutine json_print_to_unit ( json , p , iunit ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p integer ( IK ), intent ( in ) :: iunit !! the file unit (the file must !! already have been opened, can't be -1). character ( kind = CK , len = :), allocatable :: dummy !! dummy for `str` argument !! to [[json_value_print]] integer ( IK ) :: idummy !! dummy for `iloc` argument !! to [[json_value_print]] if ( iunit /= unit2str ) then idummy = 0_IK call json % json_value_print ( p , iunit , str = dummy , iloc = idummy , indent = 1_IK , colon = . true .) else call json % throw_exception ( 'Error in json_print_to_unit: iunit must not be -1.' ) end if end subroutine json_print_to_unit !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/23/2014 ! ! Print the [[json_value]] structure to a file. subroutine json_print_to_filename ( json , p , filename ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p character ( kind = CDK , len =* ), intent ( in ) :: filename !! the filename to print to !! (should not already be open) integer ( IK ) :: iunit !! file unit for `open` statement integer ( IK ) :: istat !! `iostat` code for `open` statement open ( newunit = iunit , file = filename , status = 'REPLACE' , iostat = istat FILE_ENCODING ) if ( istat == 0 ) then call json % print ( p , iunit ) close ( iunit , iostat = istat ) else call json % throw_exception ( 'Error in json_print_to_filename: could not open file: ' // & trim ( filename )) end if end subroutine json_print_to_filename !***************************************************************************************** !***************************************************************************************** !> ! Print the JSON structure to a string or a file. ! !### Notes ! * This is an internal routine called by the various wrapper routines. ! * The reason the `str` argument is non-optional is because of a ! bug in v4.9 of the gfortran compiler. recursive subroutine json_value_print ( json , p , iunit , str , indent ,& need_comma , colon , is_array_element ,& is_compressed_vector , iloc ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p integer ( IK ), intent ( in ) :: iunit !! file unit to write to (the !! file is assumed to be open) integer ( IK ), intent ( in ), optional :: indent !! indention level logical ( LK ), intent ( in ), optional :: is_array_element !! if this is an array element logical ( LK ), intent ( in ), optional :: need_comma !! if it needs a comma after it logical ( LK ), intent ( in ), optional :: colon !! if the colon was just written character ( kind = CK , len = :), intent ( inout ), allocatable :: str !! if `iunit==unit2str` (-1) then !! the structure is printed to this !! string rather than a file. This mode !! is used by [[json_value_to_string]]. integer ( IK ), intent ( inout ) :: iloc !! current index in `str`. should be set to 0 initially. !! [only used when `str` is used.] logical ( LK ), intent ( in ), optional :: is_compressed_vector !! if True, this is an element !! from an array being printed !! on one line [default is False] character ( kind = CK , len = max_numeric_str_len ) :: tmp !! for value to string conversions character ( kind = CK , len = :), allocatable :: s_indent !! the string of spaces for !! indenting (see `tab` and `spaces`) character ( kind = CK , len = :), allocatable :: s !! the string appended to `str` type ( json_value ), pointer :: element !! for getting children integer ( IK ) :: tab !! number of `tabs` for indenting integer ( IK ) :: spaces !! number of spaces for indenting integer ( IK ) :: i !! counter integer ( IK ) :: count !! number of children logical ( LK ) :: print_comma !! if the comma will be printed after the value logical ( LK ) :: write_file !! if we are writing to a file logical ( LK ) :: write_string !! if we are writing to a string logical ( LK ) :: is_array !! if this is an element in an array logical ( LK ) :: is_vector !! if all elements of a vector !! are scalars of the same type character ( kind = CK , len = :), allocatable :: str_escaped !! escaped version of !! `name` or `str_value` if (. not . json % exception_thrown ) then if (. not . associated ( p )) then ! note: a null() pointer will trigger this error. ! However, if the pointer is undefined, then this will ! crash (if this wasn't here it would crash below when ! we try to access the contents) call json % throw_exception ( 'Error in json_value_print: ' // & 'the pointer is not associated' ) return end if if ( present ( is_compressed_vector )) then is_vector = is_compressed_vector else is_vector = . false . end if !whether to write a string or a file (one or the other): write_string = ( iunit == unit2str ) write_file = . not . write_string !if the comma will be printed after the value ! [comma not printed for the last elements] if ( present ( need_comma )) then print_comma = need_comma else print_comma = . false . end if !number of \"tabs\" to indent: if ( present ( indent ) . and . . not . json % no_whitespace ) then tab = indent else tab = 0 end if !convert to number of spaces: spaces = tab * json % spaces_per_tab !if this is an element in an array: if ( present ( is_array_element )) then is_array = is_array_element else is_array = . false . end if !if the colon was the last thing written if ( present ( colon )) then s_indent = CK_ '' else s_indent = repeat ( space , spaces ) end if select case ( p % var_type ) case ( json_object ) count = json % count ( p ) if ( count == 0 ) then !special case for empty object s = s_indent // start_object // end_object call write_it ( comma = print_comma ) else s = s_indent // start_object call write_it () !if an object is in an array, there is an extra tab: if ( is_array ) then if ( . not . json % no_whitespace ) tab = tab + 1 spaces = tab * json % spaces_per_tab end if nullify ( element ) element => p % children do i = 1 , count if (. not . associated ( element )) then call json % throw_exception ( 'Error in json_value_print: ' // & 'Malformed JSON linked list' ) return end if ! print the name if ( allocated ( element % name )) then call escape_string ( element % name , str_escaped , json % escape_solidus ) if ( json % no_whitespace ) then !compact printing - no extra space s = repeat ( space , spaces ) // quotation_mark // & str_escaped // quotation_mark // colon_char call write_it ( advance = . false .) else s = repeat ( space , spaces ) // quotation_mark // & str_escaped // quotation_mark // colon_char // space call write_it ( advance = . false .) end if else call json % throw_exception ( 'Error in json_value_print:' // & ' element%name not allocated' ) nullify ( element ) return end if ! recursive print of the element call json % json_value_print ( element , iunit = iunit , indent = tab + 1_IK , & need_comma = i < count , colon = . true ., str = str , iloc = iloc ) if ( json % exception_thrown ) return ! get the next child the list: element => element % next end do ! [one fewer tab if it isn't an array element] if (. not . is_array ) then s = repeat ( space , max ( 0_IK , spaces - json % spaces_per_tab )) // end_object else s = s_indent // end_object end if call write_it ( comma = print_comma ) nullify ( element ) end if case ( json_array ) count = json % count ( p ) if ( count == 0 ) then ! special case for empty array s = s_indent // start_array // end_array call write_it ( comma = print_comma ) else ! if every child is the same type & a scalar: is_vector = json % is_vector ( p ) if ( json % failed ()) return s = s_indent // start_array call write_it ( advance = (. not . is_vector ) ) !if an array is in an array, there is an extra tab: if ( is_array ) then if ( . not . json % no_whitespace ) tab = tab + 1 spaces = tab * json % spaces_per_tab end if nullify ( element ) element => p % children do i = 1 , count if (. not . associated ( element )) then call json % throw_exception ( 'Error in json_value_print: ' // & 'Malformed JSON linked list' ) return end if ! recursive print of the element if ( is_vector ) then call json % json_value_print ( element , iunit = iunit , indent = 0_IK ,& need_comma = i < count , is_array_element = . false ., & str = str , iloc = iloc ,& is_compressed_vector = . true .) else call json % json_value_print ( element , iunit = iunit , indent = tab ,& need_comma = i < count , is_array_element = . true ., & str = str , iloc = iloc ) end if if ( json % exception_thrown ) return ! get the next child the list: element => element % next end do !indent the closing array character: if ( is_vector ) then s = end_array call write_it ( comma = print_comma ) else s = repeat ( space , max ( 0_IK , spaces - json % spaces_per_tab )) // end_array call write_it ( comma = print_comma ) end if nullify ( element ) end if case ( json_null ) s = s_indent // null_str call write_it ( comma = print_comma , & advance = (. not . is_vector ),& space_after_comma = is_vector ) case ( json_string ) if ( allocated ( p % str_value )) then ! have to escape the string for printing: call escape_string ( p % str_value , str_escaped , json % escape_solidus ) s = s_indent // quotation_mark // str_escaped // quotation_mark call write_it ( comma = print_comma , & advance = (. not . is_vector ),& space_after_comma = is_vector ) else call json % throw_exception ( 'Error in json_value_print:' // & ' p%value_string not allocated' ) return end if case ( json_logical ) if ( p % log_value ) then s = s_indent // true_str call write_it ( comma = print_comma , & advance = (. not . is_vector ),& space_after_comma = is_vector ) else s = s_indent // false_str call write_it ( comma = print_comma , & advance = (. not . is_vector ),& space_after_comma = is_vector ) end if case ( json_integer ) call integer_to_string ( p % int_value , int_fmt , tmp ) s = s_indent // trim ( tmp ) call write_it ( comma = print_comma , & advance = (. not . is_vector ),& space_after_comma = is_vector ) case ( json_real ) if ( allocated ( json % real_fmt )) then call real_to_string ( p % dbl_value , json % real_fmt , json % compact_real , json % non_normals_to_null , tmp ) else !use the default format (user has not called initialize() or specified one): call real_to_string ( p % dbl_value , default_real_fmt , json % compact_real , json % non_normals_to_null , tmp ) end if s = s_indent // trim ( tmp ) call write_it ( comma = print_comma , & advance = (. not . is_vector ),& space_after_comma = is_vector ) case default call integer_to_string ( p % var_type , int_fmt , tmp ) call json % throw_exception ( 'Error in json_value_print: ' // & 'unknown data type: ' // trim ( tmp )) end select end if contains subroutine write_it ( advance , comma , space_after_comma ) !! write the string `s` to the file (or the output string) implicit none logical ( LK ), intent ( in ), optional :: advance !! to add line break or not logical ( LK ), intent ( in ), optional :: comma !! print comma after the string logical ( LK ), intent ( in ), optional :: space_after_comma !! print a space after the comma logical ( LK ) :: add_comma !! if a delimiter is to be added after string logical ( LK ) :: add_line_break !! if a line break is to be added after string logical ( LK ) :: add_space !! if a space is to be added after the comma integer ( IK ) :: n !! length of actual string `s` appended to `str` integer ( IK ) :: room_left !! number of characters left in `str` integer ( IK ) :: n_chunks_to_add !! number of chunks to add to `str` for appending `s` if ( present ( comma )) then add_comma = comma else add_comma = . false . !default is not to add comma end if if ( json % no_whitespace ) then add_space = . false . else if ( present ( space_after_comma )) then add_space = space_after_comma else add_space = . false . !default is not to add space end if end if if ( present ( advance )) then if ( json % no_whitespace ) then ! overrides input value: add_line_break = . false . else add_line_break = advance end if else add_line_break = . not . json % no_whitespace ! default is to advance if ! we are printing whitespace end if ! string to print: if ( add_comma ) then if ( add_space ) then s = s // delimiter // space else s = s // delimiter end if end if if ( write_file ) then if ( add_line_break ) then write ( iunit , fmt = '(A)' ) s else write ( iunit , fmt = '(A)' , advance = 'NO' ) s end if else !write string if ( add_line_break ) s = s // newline n = len ( s ) room_left = len ( str ) - iloc if ( room_left < n ) then ! need to add another chunk to fit this string: n_chunks_to_add = max ( 1_IK , ceiling ( real ( len ( s ) - room_left , RK ) / real ( chunk_size , RK ), IK ) ) str = str // repeat ( space , print_str_chunk_size * n_chunks_to_add ) end if ! append s to str: str ( iloc + 1 : iloc + n ) = s iloc = iloc + n end if end subroutine write_it end subroutine json_value_print !***************************************************************************************** !***************************************************************************************** !> ! Returns true if all the children are the same type (and a scalar). ! Note that integers and reals are considered the same type for this purpose. ! This routine is used for the `compress_vectors` option. function json_is_vector ( json , p ) result ( is_vector ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p logical ( LK ) :: is_vector !! if all elements of a vector !! are scalars of the same type integer ( IK ) :: var_type_prev !! for getting the variable type of children integer ( IK ) :: var_type !! for getting the variable type of children type ( json_value ), pointer :: element !! for getting children integer ( IK ) :: i !! counter integer ( IK ) :: count !! number of children integer ( IK ), parameter :: json_invalid = - 1_IK !! to initialize the flag. an invalid value integer ( IK ), parameter :: json_numeric = - 2_IK !! indicates `json_integer` or `json_real` if ( json % compress_vectors ) then ! check to see if every child is the same type, ! and a scalar: is_vector = . true . var_type_prev = json_invalid count = json % count ( p ) element => p % children do i = 1_IK , count if (. not . associated ( element )) then call json % throw_exception ( 'Error in json_is_vector: ' // & 'Malformed JSON linked list' ) return end if ! check variable type of all the children. ! They must all be the same, and a scalar. call json % info ( element , var_type = var_type ) ! special check for numeric values: if ( var_type == json_integer . or . var_type == json_real ) var_type = json_numeric if ( var_type == json_object . or . & var_type == json_array . or . & ( i > 1_IK . and . var_type /= var_type_prev )) then is_vector = . false . exit end if var_type_prev = var_type ! get the next child the list: element => element % next end do else is_vector = . false . end if end function json_is_vector !***************************************************************************************** !***************************************************************************************** !> ! Returns true if the `path` is present in the `p` JSON structure. ! !@note Just a wrapper for [[json_get_by_path]], so it uses the ! specified `path_mode` and other settings. function json_valid_path ( json , p , path ) result ( found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! a JSON linked list character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable logical ( LK ) :: found !! true if it was found type ( json_value ), pointer :: tmp !! pointer to the variable specified by `path` call json % get ( p , path , tmp , found ) end function json_valid_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_valid_path]] where \"path\" is kind=CDK. function wrap_json_valid_path ( json , p , path ) result ( found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! a JSON linked list character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable logical ( LK ) :: found !! true if it was found found = json % valid_path ( p , to_unicode ( path )) end function wrap_json_valid_path !***************************************************************************************** !***************************************************************************************** !> ! Returns the [[json_value]] pointer given the path string. ! ! It uses one of three methods: ! ! * The original JSON-Fortran defaults ! * [RFC 6901](https://tools.ietf.org/html/rfc6901) ! * [JSONPath](http://goessner.net/articles/JsonPath/) \"bracket-notation\" subroutine json_get_by_path ( json , me , path , p , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me !! a JSON linked list character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable type ( json_value ), pointer , intent ( out ) :: p !! pointer to the variable !! specified by `path` logical ( LK ), intent ( out ), optional :: found !! true if it was found character ( kind = CK , len = max_integer_str_len ), allocatable :: path_mode_str !! string version !! of `json%path_mode` nullify ( p ) if (. not . json % exception_thrown ) then select case ( json % path_mode ) case ( 1_IK ) call json % json_get_by_path_default ( me , path , p , found ) case ( 2_IK ) call json % json_get_by_path_rfc6901 ( me , path , p , found ) case ( 3_IK ) call json % json_get_by_path_jsonpath_bracket ( me , path , p , found ) case default call integer_to_string ( json % path_mode , int_fmt , path_mode_str ) call json % throw_exception ( 'Error in json_get_by_path: Unsupported path_mode: ' // & trim ( path_mode_str )) if ( present ( found )) found = . false . end select if ( present ( found )) then if (. not . found ) call json % clear_exceptions () end if else if ( present ( found )) found = . false . end if end subroutine json_get_by_path !***************************************************************************************** !***************************************************************************************** !> ! Returns the [[json_value]] pointer given the path string, ! If necessary, by creating the variables as needed. ! ! By default, the leaf node and any empty array elements ! are created as `json_null` values. ! ! It only works for `path_mode=1` or `path_mode=3`. ! An error will be thrown for `path_mode=2` (RFC 6901). ! !### See also ! * [[json_get_by_path]] subroutine json_create_by_path ( json , me , path , p , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me !! a JSON linked list character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable type ( json_value ), pointer , intent ( out ), optional :: p !! pointer to the variable !! specify by `path` logical ( LK ), intent ( out ), optional :: found !! true if there were no errors !! (variable found or created) logical ( LK ), intent ( out ), optional :: was_created !! true if it was actually created !! (as opposed to already being there) type ( json_value ), pointer :: tmp character ( kind = CK , len = max_integer_str_len ) :: path_mode_str !! string version !! of `json%path_mode` if ( present ( p )) nullify ( p ) if (. not . json % exception_thrown ) then select case ( json % path_mode ) case ( 1_IK ) call json % json_get_by_path_default ( me , path , tmp , found ,& create_it = . true .,& was_created = was_created ) if ( present ( p )) p => tmp case ( 3_IK ) call json % json_get_by_path_jsonpath_bracket ( me , path , tmp , found ,& create_it = . true .,& was_created = was_created ) if ( present ( p )) p => tmp case default if ( json % path_mode == 2_IK ) then ! the problem here is there isn't really a way to disambiguate ! the array elements, so '/a/0' could be 'a(1)' or 'a.0'. call json % throw_exception ( 'Error in json_create_by_path: ' // & 'Create by path not supported in RFC 6901 path mode.' ) else call integer_to_string ( json % path_mode , int_fmt , path_mode_str ) call json % throw_exception ( 'Error in json_create_by_path: Unsupported path_mode: ' // & trim ( path_mode_str )) end if if ( present ( found )) then call json % clear_exceptions () found = . false . end if if ( present ( was_created )) was_created = . false . end select else if ( present ( was_created )) was_created = . false . if ( present ( found )) found = . false . end if end subroutine json_create_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_create_by_path]] where \"path\" is kind=CDK. subroutine wrap_json_create_by_path ( json , me , path , p , found , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me !! a JSON linked list character ( kind = CDK , len =* ), intent ( in ) :: path !! path to the variable type ( json_value ), pointer , intent ( out ), optional :: p !! pointer to the variable !! specify by `path` logical ( LK ), intent ( out ), optional :: found !! true if there were no errors !! (variable found or created) logical ( LK ), intent ( out ), optional :: was_created !! true if it was actually created !! (as opposed to already being there) call json % create ( me , to_unicode ( path ), p , found , was_created ) end subroutine wrap_json_create_by_path !***************************************************************************************** !***************************************************************************************** !> ! Rename a [[json_value]], given the path. ! !@note this is a wrapper for [[json_value_rename]]. subroutine json_rename_by_path ( json , me , path , name , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable to rename character ( kind = CK , len =* ), intent ( in ) :: name !! the new name logical ( LK ), intent ( out ), optional :: found !! if there were no errors type ( json_value ), pointer :: p if ( json % exception_thrown ) then if ( present ( found ) ) found = . false . return end if nullify ( p ) call json % get ( me = me , path = path , p = p ) if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_rename_by_path:' // & ' Unable to resolve path: ' // trim ( path ), found ) else call json % rename ( p , name ) nullify ( p ) end if if ( json % exception_thrown ) then if ( present ( found )) then found = . false . call json % clear_exceptions () end if else if ( present ( found )) found = . true . end if end subroutine json_rename_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_rename_by_path]], where \"path\" and \"name\" are kind=CDK subroutine wrap_json_rename_by_path ( json , me , path , name , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path character ( kind = CDK , len =* ), intent ( in ) :: name logical ( LK ), intent ( out ), optional :: found call json % rename ( me , to_unicode ( path ), to_unicode ( name ), found ) end subroutine wrap_json_rename_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_rename_by_path]], where \"name\" is kind=CDK subroutine json_rename_by_path_name_ascii ( json , me , path , name , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path character ( kind = CDK , len =* ), intent ( in ) :: name logical ( LK ), intent ( out ), optional :: found call json % rename ( me , path , to_unicode ( name ), found ) end subroutine json_rename_by_path_name_ascii !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_rename_by_path]], where \"path\" is kind=CDK subroutine json_rename_by_path_path_ascii ( json , me , path , name , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path character ( kind = CK , len =* ), intent ( in ) :: name logical ( LK ), intent ( out ), optional :: found call json % rename ( me , to_unicode ( path ), name , found ) end subroutine json_rename_by_path_path_ascii !***************************************************************************************** !***************************************************************************************** !> ! Returns the [[json_value]] pointer given the path string. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: dat,p ! logical :: found ! !... ! call json%initialize(path_mode=1) ! this is the default so not strictly necessary. ! call json%get(dat,'data(2).version',p,found) !```` ! !### Notes ! The syntax used here is a subset of the ! [http://goessner.net/articles/JsonPath/](JSONPath) \"dot–notation\". ! The following special characters are used to denote paths: ! ! * `$` - root ! * `@` - this ! * `.` - child object member (note this can be changed using `json%path_separator`) ! * `[]` or `()` - child array element (note that indices are 1-based) ! ! Thus, if any of these characters are present in the name key, ! this routine cannot be used to get the value. ! In that case, the `get_child` methods would need to be used. ! Or, the alternate [[json_get_by_path_rfc6901]] could be used. ! !### See also ! * [[json_get_by_path_rfc6901]] ! * [[json_get_by_path_jsonpath_bracket]] ! !@note The syntax is inherited from FSON, and is basically a subset ! of JSONPath \"dot-notation\", with the additional allowance of ! () for array elements. ! !@note JSON `null` values are used here for unknown variables when `create_it` is True. ! So, it is possible that an existing null variable can be converted to another ! type (object or array) if a child is specified in the path. Doing it this way ! to avoid having to use another type (say `json_unknown`) that would have to be ! converted to null once all the variables have been created (user would have ! had to do this). ! !@warning See (**) in code. I think we need to protect for memory leaks when ! changing the type of a variable that already exists. subroutine json_get_by_path_default ( json , me , path , p , found , create_it , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me !! a JSON linked list character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable type ( json_value ), pointer , intent ( out ) :: p !! pointer to the variable !! specify by `path` logical ( LK ), intent ( out ), optional :: found !! true if it was found logical ( LK ), intent ( in ), optional :: create_it !! if a variable is not present !! in the path, then it is created. !! the leaf node is returned as !! a `null` json type and can be !! changed by the caller. logical ( LK ), intent ( out ), optional :: was_created !! if `create_it` is true, this !! will be true if the variable !! was actually created. Otherwise !! it will be false. integer ( IK ) :: i !! counter of characters in `path` integer ( IK ) :: length !! significant length of `path` integer ( IK ) :: child_i !! index for getting children character ( kind = CK , len = 1 ) :: c !! a character in the `path` logical ( LK ) :: array !! flag when searching for array index in `path` type ( json_value ), pointer :: tmp !! temp variables for getting child objects logical ( LK ) :: child_found !! if the child value was found logical ( LK ) :: create !! if the object is to be created logical ( LK ) :: created !! if `create` is true, then this will be !! true if the leaf object had to be created integer ( IK ) :: j !! counter of children when creating object logical ( LK ) :: status_ok !! integer to string conversion flag nullify ( p ) if (. not . json % exception_thrown ) then if ( present ( create_it )) then create = create_it else create = . false . end if ! default to assuming relative to me p => me child_i = 1 array = . false . created = . false . !keep trailing space or not: if ( json % trailing_spaces_significant ) then length = len ( path ) else length = len_trim ( path ) end if do i = 1 , length c = path ( i : i ) select case ( c ) case ( root ) ! root do while ( associated ( p % parent )) p => p % parent end do child_i = i + 1 if ( create ) created = . false . ! should always exist case ( this ) ! this p => me child_i = i + 1 if ( create ) created = . false . ! should always exist case ( start_array , start_array_alt ) ! start looking for the array element index array = . true . ! get child member from p if ( child_i < i ) then nullify ( tmp ) if ( create ) then ! Example: ! 'aaa.bbb(1)' ! -> and aaa is a null, need to make it an object ! ! What about the case: aaa.bbb(1)(3) ? ! Is that already handled? if ( p % var_type == json_null ) then ! (**) ! if p was also created, then we need to ! convert it into an object here: p % var_type = json_object end if ! don't want to throw exceptions in this case call json % get_child ( p , path ( child_i : i - 1 ), tmp , child_found ) if (. not . child_found ) then ! have to create this child ! [make it an array] call json_value_create ( tmp ) call json % to_array ( tmp , path ( child_i : i - 1 )) call json % add ( p , tmp ) created = . true . else created = . false . end if else ! call the normal way call json % get_child ( p , path ( child_i : i - 1 ), tmp ) end if p => tmp else child_i = i + 1 ! say, '@(' cycle end if if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_get_by_path_default:' // & ' Error getting array element' , found ) exit end if child_i = i + 1 case ( end_array , end_array_alt ) if (. not . array ) then call json % throw_exception ( 'Error in json_get_by_path_default:' // & ' Unexpected ' // c , found ) exit end if array = . false . call string_to_integer ( path ( child_i : i - 1 ), child_i , status_ok ) if (. not . status_ok ) then call json % throw_exception ( 'Error in json_get_by_path_default:' // & ' Could not convert array index to integer: ' // & trim ( path ( child_i : i - 1 )), found ) exit end if nullify ( tmp ) if ( create ) then ! don't want to throw exceptions in this case call json % get_child ( p , child_i , tmp , child_found ) if (. not . child_found ) then if ( p % var_type == json_null ) then ! (**) ! if p was also created, then we need to ! convert it into an array here: p % var_type = json_array end if ! have to create this element ! [make it a null] ! (and any missing ones before it) do j = 1 , child_i nullify ( tmp ) call json % get_child ( p , j , tmp , child_found ) if (. not . child_found ) then call json_value_create ( tmp ) call json % to_null ( tmp ) ! array element doesn't need a name call json % add ( p , tmp ) if ( j == child_i ) created = . true . else if ( j == child_i ) created = . false . end if end do else created = . false . end if else ! call the normal way: call json % get_child ( p , child_i , tmp ) end if p => tmp child_i = i + 1 case default if ( c == json % path_separator ) then ! get child member from p if ( child_i < i ) then nullify ( tmp ) if ( create ) then if ( p % var_type == json_null ) then ! (**) ! if p was also created, then we need to ! convert it into an object here: p % var_type = json_object end if ! don't want to throw exceptions in this case call json % get_child ( p , path ( child_i : i - 1 ), tmp , child_found ) if (. not . child_found ) then ! have to create this child ! [make it an object] call json_value_create ( tmp ) call json % to_object ( tmp , path ( child_i : i - 1 )) call json % add ( p , tmp ) created = . true . else created = . false . end if else ! call the normal way call json % get_child ( p , path ( child_i : i - 1 ), tmp ) end if p => tmp else child_i = i + 1 ! say '$.', '@.', or ').' cycle end if if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_get_by_path_default:' // & ' Error getting child member.' , found ) exit end if child_i = i + 1 end if end select end do if ( json % exception_thrown ) then if ( present ( found )) then nullify ( p ) ! just in case found = . false . call json % clear_exceptions () end if else ! grab the last child if present in the path if ( child_i <= length ) then nullify ( tmp ) if ( create ) then if ( p % var_type == json_null ) then ! (**) ! if p was also created, then we need to ! convert it into an object here: p % var_type = json_object end if call json % get_child ( p , path ( child_i : i - 1 ), tmp , child_found ) if (. not . child_found ) then ! have to create this child ! (make it a null since it is the leaf) call json_value_create ( tmp ) call json % to_null ( tmp , path ( child_i : i - 1 )) call json % add ( p , tmp ) created = . true . else created = . false . end if else ! call the normal way call json % get_child ( p , path ( child_i : i - 1 ), tmp ) end if p => tmp else ! we already have p if ( create . and . created ) then ! make leaf p a null, but only ! if it wasn't there call json % to_null ( p ) end if end if ! error checking if ( associated ( p )) then if ( present ( found )) found = . true . !everything seems to be ok else call json % throw_exception ( 'Error in json_get_by_path_default:' // & ' variable not found: ' // trim ( path ), found ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if end if end if ! if it had to be created: if ( present ( was_created )) was_created = created else if ( present ( found )) found = . false . if ( present ( was_created )) was_created = . false . end if end subroutine json_get_by_path_default !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 2/4/2017 ! ! Returns the [[json_value]] pointer given the path string, ! using the \"JSON Pointer\" path specification defined by RFC 6901. ! ! Note that trailing whitespace significance and case sensitivity ! are user-specified. To fully conform to the RFC 6901 standard, ! should probably set (via `initialize`): ! ! * `case_sensitive_keys = .true.` [this is the default setting] ! * `trailing_spaces_significant = .true.` [this is *not* the default setting] ! * `allow_duplicate_keys = .false.` [this is *not* the default setting] ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: dat,p ! logical :: found ! !... ! call json%initialize(path_mode=2) ! call json%get(dat,'/data/2/version',p,found) !```` ! !### See also ! * [[json_get_by_path_default]] ! * [[json_get_by_path_jsonpath_bracket]] ! !### Reference ! * [JavaScript Object Notation (JSON) Pointer](https://tools.ietf.org/html/rfc6901) ! !@note Not doing anything special about the `-` character to index an array. ! This is considered a normal error. ! !@note Unlike in the default path mode, the array indices here are 0-based ! (in accordance with the RFC 6901 standard) ! !@warning Not checking if the member that is referenced is unique. ! (according to the standard, evaluation of non-unique references ! should fail). Like [[json_get_by_path_default]], this one will just return ! the first instance it encounters. This might be changed in the future. ! !@warning I think the standard indicates that the input paths should use ! escaped JSON strings (currently we are assuming they are not escaped). subroutine json_get_by_path_rfc6901 ( json , me , path , p , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me !! a JSON linked list character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable !! (an RFC 6901 \"JSON Pointer\") type ( json_value ), pointer , intent ( out ) :: p !! pointer to the variable !! specify by `path` logical ( LK ), intent ( out ), optional :: found !! true if it was found character ( kind = CK , len = :), allocatable :: token !! a token in the path (between the `/` characters) integer ( IK ) :: i !! counter integer ( IK ) :: islash_curr !! location of current '/' character in the path integer ( IK ) :: islash_next !! location of next '/' character in the path integer ( IK ) :: ilen !! length of `path` string type ( json_value ), pointer :: tmp !! temporary variable for traversing the structure integer ( IK ) :: ival !! integer array index value (0-based) logical ( LK ) :: status_ok !! error flag logical ( LK ) :: child_found !! for getting child values nullify ( p ) if (. not . json % exception_thrown ) then p => me ! initialize if ( path /= CK_ '' ) then if ( path ( 1 : 1 ) == slash ) then ! the first character must be a slash islash_curr = 1 ! initialize current slash index !keep trailing space or not: if ( json % trailing_spaces_significant ) then ilen = len ( path ) else ilen = len_trim ( path ) end if do ! get the next token by finding the slashes ! ! 1 2 3 ! /abc/d/efg if ( islash_curr == ilen ) then !the last token is an empty string token = CK_ '' islash_next = 0 ! will signal to stop else ! . ! '/123/567/' ! index in remaining string: islash_next = index ( path ( islash_curr + 1 : ilen ), slash ) if ( islash_next <= 0 ) then !last token: token = path ( islash_curr + 1 : ilen ) else ! convert to actual index in path: islash_next = islash_curr + index ( path ( islash_curr + 1 : ilen ), slash ) if ( islash_next > islash_curr + 1 ) then token = path ( islash_curr + 1 : islash_next - 1 ) else !empty token: token = CK_ '' end if end if end if ! remove trailing spaces in the token here if necessary: if (. not . json % trailing_spaces_significant ) & token = trim ( token ) ! decode the token: token = decode_rfc6901 ( token ) ! now, parse the token: ! first see if there is a child with this name call json % get_child ( p , token , tmp , child_found ) if ( child_found ) then ! it was found p => tmp else ! No key with this name. ! Is it an integer? If so, ! it might be an array index. status_ok = ( len ( token ) > 0 ) if ( status_ok ) then do i = 1 , len ( token ) ! It must only contain (0..9) characters ! (it must be unsigned) if ( scan ( token ( i : i ), CK_ '0123456789' ) < 1 ) then status_ok = . false . exit end if end do if ( status_ok ) then if ( len ( token ) > 1 . and . token ( 1 : 1 ) == CK_ '0' ) then ! leading zeros not allowed for some reason status_ok = . false . end if end if if ( status_ok ) then ! if we make it this far, it should be ! convertible to an integer, so do it. call string_to_integer ( token , ival , status_ok ) end if end if if ( status_ok ) then ! ival is an array index (0-based) call json % get_child ( p , ival + 1_IK , tmp , child_found ) if ( child_found ) then p => tmp else ! not found status_ok = . false . end if end if if (. not . status_ok ) then call json % throw_exception ( 'Error in json_get_by_path_rfc6901: ' // & 'invalid path specification: ' // trim ( path ), found ) exit end if end if if ( islash_next <= 0 ) exit ! finished ! set up for next token: islash_curr = islash_next end do else call json % throw_exception ( 'Error in json_get_by_path_rfc6901: ' // & 'invalid path specification: ' // trim ( path ), found ) end if end if if ( json % exception_thrown ) then nullify ( p ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if else if ( present ( found )) found = . true . end if else if ( present ( found )) found = . false . end if end subroutine json_get_by_path_rfc6901 !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 9/2/2017 ! ! Returns the [[json_value]] pointer given the path string, ! using the \"JSON Pointer\" path specification defined by the ! JSONPath \"bracket-notation\". ! ! The first character `$` is optional, and signifies the root ! of the structure. If it is not present, then the first key ! is taken to be in the `me` object. ! ! Single or real quotes may be used. ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: dat,p ! logical :: found ! !... ! call json%initialize(path_mode=3) ! call json%get(dat,\"$['store']['book'][1]['title']\",p,found) !```` ! !### See also ! * [[json_get_by_path_default]] ! * [[json_get_by_path_rfc6901]] ! !### Reference ! * [JSONPath](http://goessner.net/articles/JsonPath/) ! !@note Uses 1-based array indices (same as [[json_get_by_path_default]], ! but unlike [[json_get_by_path_rfc6901]] which uses 0-based indices). ! !@note When `create_it=True`, if the variable already exists and is a type ! that is not compatible with the usage in the `path`, then it is ! destroyed and replaced with what is specified in the `path`. Note that ! this applies the all variables in the path as it is created. Currently, ! this behavior is different from [[json_get_by_path_default]]. ! !@note JSON `null` values are used here for unknown variables ! when `create_it` is True. ! !@warning Note that if using single quotes, this routine cannot parse ! a key containing `']`. If using real quotes, this routine ! cannot parse a key containing `\"]`. If the key contains both ! `']` and `\"]`, there is no way to parse it using this routine. subroutine json_get_by_path_jsonpath_bracket ( json , me , path , p , found , create_it , was_created ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me !! a JSON linked list character ( kind = CK , len =* ), intent ( in ) :: path !! path to the variable !! (using JSONPath !! \"bracket-notation\") type ( json_value ), pointer , intent ( out ) :: p !! pointer to the variable !! specify by `path` logical ( LK ), intent ( out ), optional :: found !! true if it was found logical ( LK ), intent ( in ), optional :: create_it !! if a variable is not present !! in the path, then it is created. !! the leaf node is returned as !! a `null` json type and can be !! changed by the caller. logical ( LK ), intent ( out ), optional :: was_created !! if `create_it` is true, this !! will be true if the variable !! was actually created. Otherwise !! it will be false. character ( kind = CK , len = :), allocatable :: token !! a token in the path !! (between the `['']` or !! `[]` characters) integer ( IK ) :: istart !! location of current '[' !! character in the path integer ( IK ) :: iend !! location of current ']' !! character in the path integer ( IK ) :: ival !! integer array index value logical ( LK ) :: status_ok !! error flag type ( json_value ), pointer :: tmp !! temporary variable for !! traversing the structure integer ( IK ) :: i !! counter integer ( IK ) :: ilen !! length of `path` string logical ( LK ) :: real_quotes !! if the keys are enclosed in `\"`, !! rather than `'` tokens. logical ( LK ) :: create !! if the object is to be created logical ( LK ) :: created !! if `create` is true, then this will be !! true if the leaf object had to be created integer ( IK ) :: j !! counter of children when creating object !TODO instead of reallocating `token` all the time, just ! allocate a big size and keep track of the length, ! then just reallocate only if necessary. ! [would probably be inefficient if there was a very large token, ! and then a bunch of small ones... but for similarly-sized ones ! it should be way more efficient since it would avoid most ! reallocations.] nullify ( p ) if (. not . json % exception_thrown ) then if ( present ( create_it )) then create = create_it else create = . false . end if p => me ! initialize created = . false . if ( path == CK_ '' ) then call json % throw_exception ( 'Error in json_get_by_path_jsonpath_bracket: ' // & 'invalid path specification: ' // trim ( path ), found ) else if ( path ( 1 : 1 ) == root . or . path ( 1 : 1 ) == start_array ) then ! the first character must be ! a `$` (root) or a `[` ! (element of `me`) if ( path ( 1 : 1 ) == root ) then ! go to the root do while ( associated ( p % parent )) p => p % parent end do if ( create ) created = . false . ! should always exist end if !path length (don't need trailing spaces:) ilen = len_trim ( path ) if ( ilen > 1 ) then istart = 2 ! initialize first '[' location index do if ( istart > ilen ) exit ! finished ! must be the next start bracket: if ( path ( istart : istart ) /= start_array ) then call json % throw_exception (& 'Error in json_get_by_path_jsonpath_bracket: ' // & 'expecting \"[\", found: \"' // trim ( path ( istart : istart )) // & '\" in path: ' // trim ( path ), found ) exit end if ! get the next token by checking: ! ! * [''] -- is the token after istart a quote? ! if so, then search for the next `']` ! ! * [1] -- if not, then maybe it is a number, ! so search for the next `]` ! verify length of remaining string if ( istart + 2 <= ilen ) then real_quotes = path ( istart + 1 : istart + 1 ) == quotation_mark ! [\" if ( real_quotes . or . path ( istart + 1 : istart + 1 ) == single_quote ) then ! [' ! it might be a key value: ['abc'] istart = istart + 1 ! move counter to ' index if ( real_quotes ) then iend = istart + index ( path ( istart + 1 : ilen ),& quotation_mark // end_array ) ! \"] else iend = istart + index ( path ( istart + 1 : ilen ),& single_quote // end_array ) ! '] end if if ( iend > istart ) then ! istart iend ! | | ! ['p']['abcdefg'] if ( iend > istart + 1 ) then token = path ( istart + 1 : iend - 1 ) else token = CK_ '' ! blank string end if ! remove trailing spaces in ! the token here if necessary: if (. not . json % trailing_spaces_significant ) & token = trim ( token ) if ( create ) then ! have a token, create it if necessary ! we need to convert it into an object here ! (e.g., if p was also just created) ! and destroy its data to prevent a memory leak call json % convert ( p , json_object ) ! don't want to throw exceptions in this case call json % get_child ( p , token , tmp , status_ok ) if (. not . status_ok ) then ! have to create this child ! [make it a null since we don't ! know what it is yet] call json_value_create ( tmp ) call json % to_null ( tmp , token ) call json % add ( p , tmp ) status_ok = . true . created = . true . else ! it was already there. created = . false . end if else ! have a token, see if it is valid: call json % get_child ( p , token , tmp , status_ok ) end if if ( status_ok ) then ! it was found p => tmp else call json % throw_exception (& 'Error in json_get_by_path_jsonpath_bracket: ' // & 'invalid token found: \"' // token // & '\" in path: ' // trim ( path ), found ) exit end if iend = iend + 1 ! move counter to ] index else call json % throw_exception (& 'Error in json_get_by_path_jsonpath_bracket: ' // & 'invalid path: ' // trim ( path ), found ) exit end if else ! it might be an integer value: [123] iend = istart + index ( path ( istart + 1 : ilen ), end_array ) ! ] if ( iend > istart + 1 ) then ! this should be an integer: token = path ( istart + 1 : iend - 1 ) ! verify that there are no spaces or other ! characters in the string: status_ok = . true . do i = 1 , len ( token ) ! It must only contain (0..9) characters ! (it must be unsigned) if ( scan ( token ( i : i ), CK_ '0123456789' ) < 1 ) then status_ok = . false . exit end if end do if ( status_ok ) then call string_to_integer ( token , ival , status_ok ) if ( status_ok ) status_ok = ival > 0 ! assuming 1-based array indices end if if ( status_ok ) then ! have a valid integer to use as an index ! see if this element is really there: call json % get_child ( p , ival , tmp , status_ok ) if ( create . and . . not . status_ok ) then ! have to create it: if (. not .( p % var_type == json_object . or . p % var_type == json_array )) then ! we need to convert it into an array here ! (e.g., if p was also just created) ! and destroy its data to prevent a memory leak call json % convert ( p , json_array ) end if ! have to create this element ! [make it a null] ! (and any missing ones before it) do j = 1 , ival nullify ( tmp ) call json % get_child ( p , j , tmp , status_ok ) if (. not . status_ok ) then call json_value_create ( tmp ) call json % to_null ( tmp ) ! array element doesn't need a name call json % add ( p , tmp ) if ( j == ival ) created = . true . else if ( j == ival ) created = . false . end if end do status_ok = . true . else created = . false . end if if ( status_ok ) then ! found it p => tmp else ! not found call json % throw_exception (& 'Error in json_get_by_path_jsonpath_bracket: ' // & 'invalid array index found: \"' // token // & '\" in path: ' // trim ( path ), found ) exit end if else call json % throw_exception (& 'Error in json_get_by_path_jsonpath_bracket: ' // & 'invalid token: \"' // token // & '\" in path: ' // trim ( path ), found ) exit end if else call json % throw_exception (& 'Error in json_get_by_path_jsonpath_bracket: ' // & 'invalid path: ' // trim ( path ), found ) exit end if end if else call json % throw_exception (& 'Error in json_get_by_path_jsonpath_bracket: ' // & 'invalid path: ' // trim ( path ), found ) exit end if ! set up for next token: istart = iend + 1 end do end if else call json % throw_exception (& 'Error in json_get_by_path_jsonpath_bracket: ' // & 'expecting \"' // root // '\", found: \"' // path ( 1 : 1 ) // & '\" in path: ' // trim ( path ), found ) end if end if if ( json % exception_thrown ) then nullify ( p ) if ( present ( found )) then found = . false . call json % clear_exceptions () end if else if ( present ( found )) found = . true . end if ! if it had to be created: if ( present ( was_created )) was_created = created else if ( present ( found )) found = . false . if ( present ( was_created )) was_created = . false . end if end subroutine json_get_by_path_jsonpath_bracket !***************************************************************************************** !***************************************************************************************** !> ! Convert an existing JSON variable `p` to a different variable type. ! The existing variable (and its children) is destroyed. It is replaced ! in the structure by a new variable of type `var_type` ! (which can be a `json_null`, `json_object` or `json_array`). ! !@note This is an internal routine used when creating variables by path. subroutine convert ( json , p , var_type ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! the variable to convert integer ( IK ), intent ( in ) :: var_type !! the variable type to convert `p` to type ( json_value ), pointer :: tmp !! temporary variable character ( kind = CK , len = :), allocatable :: name !! the name of a JSON variable logical :: convert_it !! if `p` needs to be converted convert_it = p % var_type /= var_type if ( convert_it ) then call json % info ( p , name = name ) ! get existing name select case ( var_type ) case ( json_object ) call json % create_object ( tmp , name ) case ( json_array ) call json % create_array ( tmp , name ) case ( json_null ) call json % create_null ( tmp , name ) case default call json % throw_exception ( 'Error in convert: invalid var_type value.' ) return end select call json % replace ( p , tmp , destroy = . true .) p => tmp nullify ( tmp ) end if end subroutine convert !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_by_path]] where \"path\" is kind=CDK. subroutine wrap_json_get_by_path ( json , me , path , p , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path type ( json_value ), pointer , intent ( out ) :: p logical ( LK ), intent ( out ), optional :: found call json % get ( me , to_unicode ( path ), p , found ) end subroutine wrap_json_get_by_path !***************************************************************************************** !***************************************************************************************** !> ! Returns the path to a JSON object that is part ! of a linked list structure. ! ! The path returned would be suitable for input to ! [[json_get_by_path]] and related routines. ! !@note If an error occurs (which in this case means a malformed ! JSON structure) then an exception will be thrown, unless ! `found` is present, which will be set to `false`. `path` ! will be a blank string. ! !@note If `json%path_mode/=1`, then the `use_alt_array_tokens` ! and `path_sep` inputs are ignored if present. ! !@note [http://goessner.net/articles/JsonPath/](JSONPath) (`path_mode=3`) ! does not specify whether or not the keys should be escaped (this routine ! assumes not, as does http://jsonpath.com). ! Also, we are using Fortran-style 1-based array indices, ! not 0-based, to agree with the assumption in `path_mode=1` subroutine json_get_path ( json , p , path , found , use_alt_array_tokens , path_sep ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! a JSON linked list object character ( kind = CK , len = :), allocatable , intent ( out ) :: path !! path to the variable logical ( LK ), intent ( out ), optional :: found !! true if there were no problems logical ( LK ), intent ( in ), optional :: use_alt_array_tokens !! if true, then '()' are used for array elements !! otherwise, '[]' are used [default] !! (only used if `path_mode=1`) character ( kind = CK , len = 1 ), intent ( in ), optional :: path_sep !! character to use for path separator !! (otherwise use `json%path_separator`) !! (only used if `path_mode=1`) character ( kind = CK , len = :), allocatable :: name !! variable name character ( kind = CK , len = :), allocatable :: parent_name !! variable's parent name character ( kind = CK , len = max_integer_str_len ) :: istr !! for integer to string conversion !! (array indices) type ( json_value ), pointer :: tmp !! for traversing the structure type ( json_value ), pointer :: element !! for traversing the structure integer ( IK ) :: var_type !! JSON variable type flag integer ( IK ) :: i !! counter integer ( IK ) :: n_children !! number of children for parent logical ( LK ) :: use_brackets !! to use '[]' characters for arrays logical ( LK ) :: parent_is_root !! if the parent is the root character ( kind = CK , len = 1 ) :: array_start !! for `path_mode=1`, the character to start arrays character ( kind = CK , len = 1 ) :: array_end !! for `path_mode=1`, the character to end arrays logical :: consecutive_arrays !! check for array of array case integer ( IK ) :: parents_parent_var_type !! `var_type` for parent's parent !optional input: if ( present ( use_alt_array_tokens )) then use_brackets = . not . use_alt_array_tokens else use_brackets = . true . end if if ( json % path_mode == 1_IK ) then if ( use_brackets ) then array_start = start_array array_end = end_array else array_start = start_array_alt array_end = end_array_alt end if end if ! initialize: consecutive_arrays = . false . if ( associated ( p )) then !traverse the structure via parents up to the root tmp => p do if (. not . associated ( tmp )) exit !finished !get info about the current variable: call json % info ( tmp , name = name ) if ( json % path_mode == 2_IK ) then name = encode_rfc6901 ( name ) end if ! if tmp a child of an object, or an element of an array if ( associated ( tmp % parent )) then !get info about the parent: call json % info ( tmp % parent , var_type = var_type ,& n_children = n_children , name = parent_name ) if ( json % path_mode == 2_IK ) then parent_name = encode_rfc6901 ( parent_name ) end if if ( associated ( tmp % parent % parent )) then call json % info ( tmp % parent % parent , var_type = parents_parent_var_type ) consecutive_arrays = parents_parent_var_type == json_array . and . & var_type == json_array else consecutive_arrays = . false . end if select case ( var_type ) case ( json_array ) !get array index of this element: element => tmp % parent % children do i = 1 , n_children if (. not . associated ( element )) then call json % throw_exception ( 'Error in json_get_path: ' // & 'malformed JSON structure. ' , found ) exit end if if ( associated ( element , tmp )) then exit else element => element % next end if if ( i == n_children ) then ! it wasn't found (should never happen) call json % throw_exception ( 'Error in json_get_path: ' // & 'malformed JSON structure. ' , found ) exit end if end do select case ( json % path_mode ) case ( 3_IK ) ! JSONPath \"bracket-notation\" ! example: `$['key'][1]` ! [note: this uses 1-based indices] call integer_to_string ( i , int_fmt , istr ) if ( consecutive_arrays ) then call add_to_path ( start_array // trim ( adjustl ( istr )) // end_array , CK_ '' ) else call add_to_path ( start_array // single_quote // parent_name // & single_quote // end_array // & start_array // trim ( adjustl ( istr )) // end_array , CK_ '' ) end if case ( 2_IK ) ! rfc6901 ! Example: '/key/0' call integer_to_string ( i - 1_IK , int_fmt , istr ) ! 0-based index if ( consecutive_arrays ) then call add_to_path ( trim ( adjustl ( istr ))) else call add_to_path ( parent_name // slash // trim ( adjustl ( istr ))) end if case ( 1_IK ) ! default ! Example: `key[1]` call integer_to_string ( i , int_fmt , istr ) if ( consecutive_arrays ) then call add_to_path ( array_start // trim ( adjustl ( istr )) // array_end , path_sep ) else call add_to_path ( parent_name // array_start // & trim ( adjustl ( istr )) // array_end , path_sep ) end if end select if (. not . consecutive_arrays ) tmp => tmp % parent ! already added parent name case ( json_object ) if (. not . consecutive_arrays ) then ! idea is not to print the array name if ! it was already printed with the array !process parent on the next pass select case ( json % path_mode ) case ( 3_IK ) call add_to_path ( start_array // single_quote // name // & single_quote // end_array , CK_ '' ) case default call add_to_path ( name , path_sep ) end select end if case default call json % throw_exception ( 'Error in json_get_path: ' // & 'malformed JSON structure. ' // & 'A variable that is not an object ' // & 'or array should not have a child.' , found ) exit end select else !the last one: select case ( json % path_mode ) case ( 3_IK ) call add_to_path ( start_array // single_quote // name // & single_quote // end_array , CK_ '' ) case default call add_to_path ( name , path_sep ) end select end if if ( associated ( tmp % parent )) then !check if the parent is the root: parent_is_root = (. not . associated ( tmp % parent % parent )) if ( parent_is_root ) exit end if !go to parent: tmp => tmp % parent end do else call json % throw_exception ( 'Error in json_get_path: ' // & 'input pointer is not associated' , found ) end if !for errors, return blank string: if ( json % exception_thrown . or . . not . allocated ( path )) then path = CK_ '' else select case ( json % path_mode ) case ( 3_IK ) ! add the outer level object identifier: path = root // path case ( 2_IK ) ! add the root slash: path = slash // path end select end if !optional output: if ( present ( found )) then if ( json % exception_thrown ) then found = . false . call json % clear_exceptions () else found = . true . end if end if contains subroutine add_to_path ( str , path_sep ) !! prepend the string to the path implicit none character ( kind = CK , len =* ), intent ( in ) :: str !! string to prepend to `path` character ( kind = CK , len =* ), intent ( in ), optional :: path_sep !! path separator (default is '.'). !! (ignored if `json%path_mode/=1`) select case ( json % path_mode ) case ( 3_IK ) ! in this case, the options are ignored if (. not . allocated ( path )) then path = str else path = str // path end if case ( 2_IK ) ! in this case, the options are ignored if (. not . allocated ( path )) then path = str else path = str // slash // path end if case ( 1_IK ) ! default path format if (. not . allocated ( path )) then path = str else ! shouldn't add the path_sep for cases like x[1][2] ! [if current is an array element, and the previous was ! also an array element] so check for that here: if (. not . ( str ( len ( str ): len ( str )) == array_end . and . & path ( 1 : 1 ) == array_start )) then if ( present ( path_sep )) then ! use user specified: path = str // path_sep // path else ! use the default: path = str // json % path_separator // path end if else path = str // path end if end if end select end subroutine add_to_path end subroutine json_get_path !***************************************************************************************** !***************************************************************************************** !> ! Wrapper for [[json_get_path]] where \"path\" and \"path_sep\" are kind=CDK. subroutine wrap_json_get_path ( json , p , path , found , use_alt_array_tokens , path_sep ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p !! a JSON linked list object character ( kind = CDK , len = :), allocatable , intent ( out ) :: path !! path to the variable logical ( LK ), intent ( out ), optional :: found !! true if there were no problems logical ( LK ), intent ( in ), optional :: use_alt_array_tokens !! if true, then '()' are used !! for array elements otherwise, !! '[]' are used [default] character ( kind = CDK , len = 1 ), intent ( in ), optional :: path_sep !! character to use for path !! separator (default is '.') character ( kind = CK , len = :), allocatable :: ck_path !! path to the variable ! call the main routine: if ( present ( path_sep )) then call json % get_path ( p , ck_path , found , use_alt_array_tokens , to_unicode ( path_sep )) else call json % get_path ( p , ck_path , found , use_alt_array_tokens ) end if ! from unicode: path = ck_path end subroutine wrap_json_get_path !***************************************************************************************** !***************************************************************************************** !> ! Convert a string into an integer. ! !@note Replacement for the `parse_integer` function in the original code. function string_to_int ( json , str ) result ( ival ) implicit none class ( json_core ), intent ( inout ) :: json character ( kind = CK , len =* ), intent ( in ) :: str !! a string integer ( IK ) :: ival !! `str` converted to an integer logical ( LK ) :: status_ok !! error flag for [[string_to_integer]] ! call the core routine: call string_to_integer ( str , ival , status_ok ) if (. not . status_ok ) then ival = 0 call json % throw_exception ( 'Error in string_to_int: ' // & 'string cannot be converted to an integer: ' // & trim ( str )) end if end function string_to_int !***************************************************************************************** !***************************************************************************************** !> ! Convert a string into a `real(RK)` value. function string_to_dble ( json , str ) result ( rval ) implicit none class ( json_core ), intent ( inout ) :: json character ( kind = CK , len =* ), intent ( in ) :: str !! a string real ( RK ) :: rval !! `str` converted to a `real(RK)` logical ( LK ) :: status_ok !! error flag for [[string_to_real]] call string_to_real ( str , json % use_quiet_nan , rval , status_ok ) if (. not . status_ok ) then !if there was an error rval = 0.0_RK call json % throw_exception ( 'Error in string_to_dble: ' // & 'string cannot be converted to a real: ' // & trim ( str )) end if end function string_to_dble !***************************************************************************************** !***************************************************************************************** !> ! Get an integer value from a [[json_value]]. subroutine json_get_integer ( json , me , value ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me integer ( IK ), intent ( out ) :: value !! the integer value logical ( LK ) :: status_ok !! for [[string_to_integer]] value = 0_IK if ( json % exception_thrown ) return if ( me % var_type == json_integer ) then value = me % int_value else if ( json % strict_type_checking ) then if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_integer:' // & ' Unable to resolve value to integer: ' // me % name ) else call json % throw_exception ( 'Error in json_get_integer:' // & ' Unable to resolve value to integer' ) end if else !type conversions select case ( me % var_type ) case ( json_real ) value = int ( me % dbl_value , IK ) case ( json_logical ) if ( me % log_value ) then value = 1_IK else value = 0_IK end if case ( json_string ) call string_to_integer ( me % str_value , value , status_ok ) if (. not . status_ok ) then value = 0_IK if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_integer:' // & ' Unable to convert string value to integer: ' // & me % name // ' = ' // trim ( me % str_value )) else call json % throw_exception ( 'Error in json_get_integer:' // & ' Unable to convert string value to integer: ' // & trim ( me % str_value )) end if end if case default if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_integer:' // & ' Unable to resolve value to integer: ' // me % name ) else call json % throw_exception ( 'Error in json_get_integer:' // & ' Unable to resolve value to integer' ) end if end select end if end if end subroutine json_get_integer !***************************************************************************************** !***************************************************************************************** !> ! Get an integer value from a [[json_value]], given the path string. subroutine json_get_integer_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path integer ( IK ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found integer ( IK ), intent ( in ), optional :: default !! default value if not found integer ( IK ), parameter :: default_if_not_specified = 0_IK character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_integer_by_path' #include \"json_get_scalar_by_path.inc\" end subroutine json_get_integer_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_integer_by_path]], where \"path\" is kind=CDK. subroutine wrap_json_get_integer_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path integer ( IK ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found integer ( IK ), intent ( in ), optional :: default !! default value if not found call json % get ( me , to_unicode ( path ), value , found , default ) end subroutine wrap_json_get_integer_by_path !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 5/14/2014 ! ! Get an integer vector from a [[json_value]]. subroutine json_get_integer_vec ( json , me , vec ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me integer ( IK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ) :: initialized if ( json % exception_thrown ) return ! check for 0-length arrays first: select case ( me % var_type ) case ( json_array ) if ( json % count ( me ) == 0 ) then allocate ( vec ( 0 )) return end if end select initialized = . false . !the callback function is called for each element of the array: call json % get ( me , array_callback = get_int_from_array ) if ( json % exception_thrown . and . allocated ( vec )) deallocate ( vec ) contains subroutine get_int_from_array ( json , element , i , count ) !! callback function for integer implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: element integer ( IK ), intent ( in ) :: i !! index integer ( IK ), intent ( in ) :: count !! size of array !size the output array: if (. not . initialized ) then allocate ( vec ( count )) initialized = . true . end if !populate the elements: call json % get ( element , value = vec ( i )) end subroutine get_int_from_array end subroutine json_get_integer_vec !***************************************************************************************** !***************************************************************************************** !> ! If `found` is present, set it it false. subroutine flag_not_found ( found ) implicit none logical ( LK ), intent ( out ), optional :: found if ( present ( found )) found = . false . end subroutine flag_not_found !***************************************************************************************** !***************************************************************************************** !> ! Get an integer vector from a [[json_value]], given the path string. subroutine json_get_integer_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path integer ( IK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found integer ( IK ), dimension (:), intent ( in ), optional :: default !! default value if not found character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_integer_vec_by_path' #include \"json_get_vec_by_path.inc\" end subroutine json_get_integer_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_integer_vec_by_path]], where \"path\" is kind=CDK subroutine wrap_json_get_integer_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CDK , len =* ), intent ( in ) :: path integer ( IK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found integer ( IK ), dimension (:), intent ( in ), optional :: default !! default value if not found call json % get ( me , path = to_unicode ( path ), vec = vec , found = found , default = default ) end subroutine wrap_json_get_integer_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Get a real value from a [[json_value]]. subroutine json_get_real ( json , me , value ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me real ( RK ), intent ( out ) :: value logical ( LK ) :: status_ok !! for [[string_to_real]] value = 0.0_RK if ( json % exception_thrown ) return if ( me % var_type == json_real ) then value = me % dbl_value else if ( json % strict_type_checking ) then if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_real:' // & ' Unable to resolve value to real: ' // me % name ) else call json % throw_exception ( 'Error in json_get_real:' // & ' Unable to resolve value to real' ) end if else !type conversions select case ( me % var_type ) case ( json_integer ) value = real ( me % int_value , RK ) case ( json_logical ) if ( me % log_value ) then value = 1.0_RK else value = 0.0_RK end if case ( json_string ) call string_to_real ( me % str_value , json % use_quiet_nan , value , status_ok ) if (. not . status_ok ) then value = 0.0_RK if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_real:' // & ' Unable to convert string value to real: ' // & me % name // ' = ' // trim ( me % str_value )) else call json % throw_exception ( 'Error in json_get_real:' // & ' Unable to convert string value to real: ' // & trim ( me % str_value )) end if end if case ( json_null ) if ( ieee_support_nan ( value ) . and . json % null_to_real_mode /= 1_IK ) then select case ( json % null_to_real_mode ) case ( 2_IK ) if ( json % use_quiet_nan ) then value = ieee_value ( value , ieee_quiet_nan ) else value = ieee_value ( value , ieee_signaling_nan ) end if case ( 3_IK ) value = 0.0_RK end select else if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_real:' // & ' Cannot convert null to NaN: ' // me % name ) else call json % throw_exception ( 'Error in json_get_real:' // & ' Cannot convert null to NaN' ) end if end if case default if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_real:' // & ' Unable to resolve value to real: ' // me % name ) else call json % throw_exception ( 'Error in json_get_real:' // & ' Unable to resolve value to real' ) end if end select end if end if end subroutine json_get_real !***************************************************************************************** !***************************************************************************************** !> ! Get a real value from a [[json_value]], given the path. subroutine json_get_real_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CK , len =* ), intent ( in ) :: path real ( RK ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found real ( RK ), intent ( in ), optional :: default !! default value if not found real ( RK ), parameter :: default_if_not_specified = 0.0_RK character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_real_by_path' #include \"json_get_scalar_by_path.inc\" end subroutine json_get_real_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_real_by_path]], where \"path\" is kind=CDK subroutine wrap_json_get_real_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CDK , len =* ), intent ( in ) :: path real ( RK ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found real ( RK ), intent ( in ), optional :: default !! default value if not found call json % get ( me , to_unicode ( path ), value , found , default ) end subroutine wrap_json_get_real_by_path !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 5/14/2014 ! ! Get a real vector from a [[json_value]]. subroutine json_get_real_vec ( json , me , vec ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me real ( RK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ) :: initialized if ( json % exception_thrown ) return ! check for 0-length arrays first: select case ( me % var_type ) case ( json_array ) if ( json % count ( me ) == 0 ) then allocate ( vec ( 0 )) return end if end select initialized = . false . !the callback function is called for each element of the array: call json % get ( me , array_callback = get_real_from_array ) if ( json % exception_thrown . and . allocated ( vec )) deallocate ( vec ) contains subroutine get_real_from_array ( json , element , i , count ) !! callback function for real implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: element integer ( IK ), intent ( in ) :: i !! index integer ( IK ), intent ( in ) :: count !! size of array !size the output array: if (. not . initialized ) then allocate ( vec ( count )) initialized = . true . end if !populate the elements: call json % get ( element , value = vec ( i )) end subroutine get_real_from_array end subroutine json_get_real_vec !***************************************************************************************** !***************************************************************************************** !> ! Get a real vector from a [[json_value]], given the path. subroutine json_get_real_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path real ( RK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found real ( RK ), dimension (:), intent ( in ), optional :: default !! default value if not found character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_real_vec_by_path' #include \"json_get_vec_by_path.inc\" end subroutine json_get_real_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_real_vec_by_path]], where \"path\" is kind=CDK subroutine wrap_json_get_real_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CDK , len =* ), intent ( in ) :: path real ( RK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found real ( RK ), dimension (:), intent ( in ), optional :: default !! default value if not found call json % get ( me , to_unicode ( path ), vec , found , default ) end subroutine wrap_json_get_real_vec_by_path !***************************************************************************************** #ifndef REAL32 !***************************************************************************************** !> ! Alternate version of [[json_get_real]] where value=real32. subroutine json_get_real32 ( json , me , value ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me real ( real32 ), intent ( out ) :: value real ( RK ) :: tmp call json % get ( me , tmp ) value = real ( tmp , real32 ) end subroutine json_get_real32 !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_real_by_path]] where value=real32. subroutine json_get_real32_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CK , len =* ), intent ( in ) :: path real ( real32 ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found real ( real32 ), intent ( in ), optional :: default !! default value if not found real ( RK ) :: tmp real ( RK ) :: tmp_default if ( present ( default )) then tmp_default = real ( default , RK ) call json % get ( me , path , tmp , found , tmp_default ) else call json % get ( me , path , tmp , found ) end if value = real ( tmp , real32 ) end subroutine json_get_real32_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_real32_by_path]], where \"path\" is kind=CDK subroutine wrap_json_get_real32_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CDK , len =* ), intent ( in ) :: path real ( real32 ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found real ( real32 ), intent ( in ), optional :: default !! default value if not found call json % get ( me , to_unicode ( path ), value , found , default ) end subroutine wrap_json_get_real32_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_real_vec]] where `vec` is `real32`. subroutine json_get_real32_vec ( json , me , vec ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me real ( real32 ), dimension (:), allocatable , intent ( out ) :: vec real ( RK ), dimension (:), allocatable :: tmp call json % get ( me , tmp ) if ( allocated ( tmp )) vec = real ( tmp , real32 ) end subroutine json_get_real32_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_real_vec_by_path]] where `vec` is `real32`. subroutine json_get_real32_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path real ( real32 ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found real ( real32 ), dimension (:), intent ( in ), optional :: default !! default value if not found real ( RK ), dimension (:), allocatable :: tmp real ( RK ), dimension (:), allocatable :: tmp_default if ( present ( default )) then tmp_default = real ( default , RK ) call json % get ( me , path , tmp , found , tmp_default ) else call json % get ( me , path , tmp , found ) end if if ( allocated ( tmp )) vec = real ( tmp , real32 ) end subroutine json_get_real32_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_real32_vec_by_path]], where \"path\" is kind=CDK subroutine wrap_json_get_real32_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CDK , len =* ), intent ( in ) :: path real ( real32 ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found real ( real32 ), dimension (:), intent ( in ), optional :: default !! default value if not found call json % get ( me , to_unicode ( path ), vec , found , default ) end subroutine wrap_json_get_real32_vec_by_path !***************************************************************************************** #endif #ifdef REAL128 !***************************************************************************************** !> ! Alternate version of [[json_get_real]] where `value` is `real64`. subroutine json_get_real64 ( json , me , value ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me real ( real64 ), intent ( out ) :: value real ( RK ) :: tmp call json % get ( me , tmp ) value = real ( tmp , real64 ) end subroutine json_get_real64 !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_real_by_path]] where `value` is `real64`. subroutine json_get_real64_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CK , len =* ), intent ( in ) :: path real ( real64 ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found real ( real64 ), intent ( in ), optional :: default !! default value if not found real ( RK ) :: tmp real ( RK ) :: tmp_default if ( present ( default )) then tmp_default = real ( default , RK ) call json % get ( me , path , tmp , found , tmp_default ) else call json % get ( me , path , tmp , found ) end if value = real ( tmp , real64 ) end subroutine json_get_real64_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_real64_by_path]], where \"path\" is kind=CDK subroutine wrap_json_get_real64_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CDK , len =* ), intent ( in ) :: path real ( real64 ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found real ( real64 ), intent ( in ), optional :: default !! default value if not found call json % get ( me , to_unicode ( path ), value , found , default ) end subroutine wrap_json_get_real64_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_real_vec]] where `vec` is `real64`. subroutine json_get_real64_vec ( json , me , vec ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me real ( real64 ), dimension (:), allocatable , intent ( out ) :: vec real ( RK ), dimension (:), allocatable :: tmp call json % get ( me , tmp ) if ( allocated ( tmp )) vec = real ( tmp , real64 ) end subroutine json_get_real64_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_real_vec_by_path]] where `vec` is `real64`. subroutine json_get_real64_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path real ( real64 ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found real ( real64 ), dimension (:), intent ( in ), optional :: default !! default value if not found real ( RK ), dimension (:), allocatable :: tmp real ( RK ), dimension (:), allocatable :: tmp_default if ( present ( default )) then tmp_default = real ( default , RK ) call json % get ( me , path , tmp , found , tmp_default ) else call json % get ( me , path , tmp , found ) end if if ( allocated ( tmp )) vec = real ( tmp , real64 ) end subroutine json_get_real64_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_real64_vec_by_path]], where \"path\" is kind=CDK subroutine wrap_json_get_real64_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: me character ( kind = CDK , len =* ), intent ( in ) :: path real ( real64 ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found real ( real64 ), dimension (:), intent ( in ), optional :: default !! default value if not found call json % get ( me , to_unicode ( path ), vec , found , default ) end subroutine wrap_json_get_real64_vec_by_path !***************************************************************************************** #endif !***************************************************************************************** !> ! Get a logical value from a [[json_value]]. ! !### Note ! If `strict_type_checking` is False, then the following assumptions are made: ! ! * For integers: a value > 0 is True ! * For reals: a value > 0 is True ! * For strings: 'true' is True, and everything else is false. [case sensitive match] subroutine json_get_logical ( json , me , value ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me logical ( LK ), intent ( out ) :: value value = . false . if ( json % exception_thrown ) return if ( me % var_type == json_logical ) then value = me % log_value else if ( json % strict_type_checking ) then if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_logical: ' // & 'Unable to resolve value to logical: ' // & me % name ) else call json % throw_exception ( 'Error in json_get_logical: ' // & 'Unable to resolve value to logical' ) end if else !type conversions select case ( me % var_type ) case ( json_integer ) value = ( me % int_value > 0_IK ) case ( json_real ) value = ( me % dbl_value > 0.0_RK ) case ( json_string ) value = ( me % str_value == true_str ) case default if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_logical: ' // & 'Unable to resolve value to logical: ' // & me % name ) else call json % throw_exception ( 'Error in json_get_logical: ' // & 'Unable to resolve value to logical' ) end if end select end if end if end subroutine json_get_logical !***************************************************************************************** !***************************************************************************************** !> ! Get a logical value from a [[json_value]], given the path. subroutine json_get_logical_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path logical ( LK ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found logical ( LK ), intent ( in ), optional :: default !! default value if not found logical ( LK ), parameter :: default_if_not_specified = . false . character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_logical_by_path' #include \"json_get_scalar_by_path.inc\" end subroutine json_get_logical_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_logical_by_path]], where \"path\" is kind=CDK subroutine wrap_json_get_logical_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path logical ( LK ), intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found logical ( LK ), intent ( in ), optional :: default !! default value if not found call json % get ( me , to_unicode ( path ), value , found , default ) end subroutine wrap_json_get_logical_by_path !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 5/14/2014 ! ! Get a logical vector from [[json_value]]. subroutine json_get_logical_vec ( json , me , vec ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me logical ( LK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ) :: initialized if ( json % exception_thrown ) return ! check for 0-length arrays first: select case ( me % var_type ) case ( json_array ) if ( json % count ( me ) == 0 ) then allocate ( vec ( 0 )) return end if end select initialized = . false . !the callback function is called for each element of the array: call json % get ( me , array_callback = get_logical_from_array ) if ( json % exception_thrown . and . allocated ( vec )) deallocate ( vec ) contains subroutine get_logical_from_array ( json , element , i , count ) !! callback function for logical implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: element integer ( IK ), intent ( in ) :: i !! index integer ( IK ), intent ( in ) :: count !! size of array !size the output array: if (. not . initialized ) then allocate ( vec ( count )) initialized = . true . end if !populate the elements: call json % get ( element , value = vec ( i )) end subroutine get_logical_from_array end subroutine json_get_logical_vec !***************************************************************************************** !***************************************************************************************** !> ! Get a logical vector from a [[json_value]], given the path. subroutine json_get_logical_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path logical ( LK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found logical ( LK ), dimension (:), intent ( in ), optional :: default character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_logical_vec_by_path' #include \"json_get_vec_by_path.inc\" end subroutine json_get_logical_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_logical_vec_by_path]], where \"path\" is kind=CDK subroutine wrap_json_get_logical_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path logical ( LK ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found logical ( LK ), dimension (:), intent ( in ), optional :: default call json % get ( me , to_unicode ( path ), vec , found , default ) end subroutine wrap_json_get_logical_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Get a character string from a [[json_value]]. subroutine json_get_string ( json , me , value ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len = :), allocatable , intent ( out ) :: value value = CK_ '' if (. not . json % exception_thrown ) then if ( me % var_type == json_string ) then if ( allocated ( me % str_value )) then if ( json % unescaped_strings ) then ! default: it is stored already unescaped: value = me % str_value else ! return the escaped version: call escape_string ( me % str_value , value , json % escape_solidus ) end if else call json % throw_exception ( 'Error in json_get_string: ' // & 'me%str_value not allocated' ) end if else if ( json % strict_type_checking ) then if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_string:' // & ' Unable to resolve value to string: ' // me % name ) else call json % throw_exception ( 'Error in json_get_string:' // & ' Unable to resolve value to string' ) end if else select case ( me % var_type ) case ( json_integer ) if ( allocated ( me % int_value )) then value = repeat ( space , max_integer_str_len ) call integer_to_string ( me % int_value , int_fmt , value ) value = trim ( value ) else call json % throw_exception ( 'Error in json_get_string: ' // & 'me%int_value not allocated' ) end if case ( json_real ) if ( allocated ( me % dbl_value )) then value = repeat ( space , max_numeric_str_len ) call real_to_string ( me % dbl_value , json % real_fmt ,& json % non_normals_to_null ,& json % compact_real , value ) value = trim ( value ) else call json % throw_exception ( 'Error in json_get_string: ' // & 'me%int_value not allocated' ) end if case ( json_logical ) if ( allocated ( me % log_value )) then if ( me % log_value ) then value = true_str else value = false_str end if else call json % throw_exception ( 'Error in json_get_string: ' // & 'me%log_value not allocated' ) end if case ( json_null ) value = null_str case default if ( allocated ( me % name )) then call json % throw_exception ( 'Error in json_get_string: ' // & 'Unable to resolve value to characters: ' // & me % name ) else call json % throw_exception ( 'Error in json_get_string: ' // & 'Unable to resolve value to characters' ) end if end select end if end if end if end subroutine json_get_string !***************************************************************************************** !***************************************************************************************** !> ! Get a character string from a [[json_value]], given the path. subroutine json_get_string_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path character ( kind = CK , len = :), allocatable , intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found character ( kind = CK , len =* ), intent ( in ), optional :: default character ( kind = CK , len =* ), parameter :: default_if_not_specified = CK_ '' character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_string_by_path' #include \"json_get_scalar_by_path.inc\" end subroutine json_get_string_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_string_by_path]], where \"path\" is kind=CDK subroutine wrap_json_get_string_by_path ( json , me , path , value , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path character ( kind = CK , len = :), allocatable , intent ( out ) :: value logical ( LK ), intent ( out ), optional :: found character ( kind = CK , len =* ), intent ( in ), optional :: default call json % get ( me , to_unicode ( path ), value , found , default ) end subroutine wrap_json_get_string_by_path !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 5/14/2014 ! ! Get a string vector from a [[json_value(type)]]. subroutine json_get_string_vec ( json , me , vec ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ) :: initialized if ( json % exception_thrown ) return ! check for 0-length arrays first: select case ( me % var_type ) case ( json_array ) if ( json % count ( me ) == 0 ) then allocate ( vec ( 0 )) return end if end select initialized = . false . !the callback function is called for each element of the array: call json % get ( me , array_callback = get_chars_from_array ) if ( json % exception_thrown . and . allocated ( vec )) deallocate ( vec ) contains subroutine get_chars_from_array ( json , element , i , count ) !! callback function for chars implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: element integer ( IK ), intent ( in ) :: i !! index integer ( IK ), intent ( in ) :: count !! size of array character ( kind = CK , len = :), allocatable :: cval !size the output array: if (. not . initialized ) then allocate ( vec ( count )) initialized = . true . end if !populate the elements: call json % get ( element , value = cval ) if ( allocated ( cval )) then vec ( i ) = cval deallocate ( cval ) else vec ( i ) = CK_ '' end if end subroutine get_chars_from_array end subroutine json_get_string_vec !***************************************************************************************** !***************************************************************************************** !> ! Get a string vector from a [[json_value(type)]], given the path. subroutine json_get_string_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path character ( kind = CK , len =* ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found character ( kind = CK , len =* ), dimension (:), intent ( in ), optional :: default character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_string_vec_by_path' #include \"json_get_vec_by_path.inc\" end subroutine json_get_string_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_string_vec_by_path]], where \"path\" is kind=CDK subroutine wrap_json_get_string_vec_by_path ( json , me , path , vec , found , default ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path character ( kind = CK , len =* ), dimension (:), allocatable , intent ( out ) :: vec logical ( LK ), intent ( out ), optional :: found character ( kind = CK , len =* ), dimension (:), intent ( in ), optional :: default call json % get ( me , to_unicode ( path ), vec , found , default ) end subroutine wrap_json_get_string_vec_by_path !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/16/2016 ! ! Get a string vector from a [[json_value(type)]]. This is an alternate ! version of [[json_get_string_vec]]. This one returns an allocatable ! length character (where the string length is the maximum length of ! any element in the array). It also returns an integer array of the ! actual sizes of the strings in the JSON structure. ! !@note This is somewhat inefficient since it does ! cycle through the array twice. ! !@warning The allocation of `vec` doesn't work with ! gfortran 4.9 or 5 due to compiler bugs subroutine json_get_alloc_string_vec ( json , me , vec , ilen ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len = :), dimension (:), allocatable , intent ( out ) :: vec integer ( IK ), dimension (:), allocatable , intent ( out ) :: ilen !! the actual length !! of each character !! string in the array logical ( LK ) :: initialized !! if the output array has been sized integer ( IK ) :: max_len !! the length of the longest string in the array if ( json % exception_thrown ) return ! check for 0-length arrays first: select case ( me % var_type ) case ( json_array ) if ( json % count ( me ) == 0 ) then allocate ( character ( kind = CK , len = 0 ) :: vec ( 0 )) allocate ( ilen ( 0 )) return end if end select initialized = . false . call json % string_info ( me , ilen = ilen , max_str_len = max_len ) if (. not . json % exception_thrown ) then ! now get each string using the callback function: call json % get ( me , array_callback = get_chars_from_array ) end if if ( json % exception_thrown ) then if ( allocated ( vec )) deallocate ( vec ) if ( allocated ( ilen )) deallocate ( ilen ) end if contains subroutine get_chars_from_array ( json , element , i , count ) !! callback function for chars implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: element integer ( IK ), intent ( in ) :: i !! index integer ( IK ), intent ( in ) :: count !! size of array character ( kind = CK , len = :), allocatable :: cval !! for getting string !size the output array: if (. not . initialized ) then ! string length long enough to hold the longest one ! Note that this doesn't work with gfortran 4.9 or 5. allocate ( character ( kind = CK , len = max_len ) :: vec ( count ) ) initialized = . true . end if !populate the elements: call json % get ( element , value = cval ) if ( allocated ( cval )) then vec ( i ) = cval ilen ( i ) = len ( cval ) ! return the actual length deallocate ( cval ) else vec ( i ) = CK_ '' ilen ( i ) = 0 end if end subroutine get_chars_from_array end subroutine json_get_alloc_string_vec !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_alloc_string_vec]] where input is the path. ! ! This is an alternate version of [[json_get_string_vec_by_path]]. ! This one returns an allocatable length character (where the string ! length is the maximum length of any element in the array). It also ! returns an integer array of the actual sizes of the strings in the ! JSON structure. ! !@note An alternative to using this routine is to use [[json_get_array]] with ! a callback function that gets the string from each element and populates ! a user-defined string type. ! !@note If the `default` argument is used, and `default_ilen` is not present, ! then `ilen` will just be returned as the length of the `default` dummy ! argument (all elements with the same length). subroutine json_get_alloc_string_vec_by_path ( json , me , path , vec , ilen , found , default , default_ilen ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path character ( kind = CK , len = :), dimension (:), allocatable , intent ( out ) :: vec integer ( IK ), dimension (:), allocatable , intent ( out ) :: ilen !! the actual length !! of each character !! string in the array logical ( LK ), intent ( out ), optional :: found character ( kind = CK , len =* ), dimension (:), intent ( in ), optional :: default integer ( IK ), dimension (:), intent ( in ), optional :: default_ilen !! the actual !! length of `default` character ( kind = CK , len =* ), parameter :: routine = CK_ 'json_get_alloc_string_vec_by_path' #include \"json_get_vec_by_path_alloc.inc\" end subroutine json_get_alloc_string_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_alloc_string_vec_by_path]], where \"path\" is kind=CDK subroutine wrap_json_get_alloc_string_vec_by_path ( json , me , path , vec , ilen , found , default , default_ilen ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path character ( kind = CK , len = :), dimension (:), allocatable , intent ( out ) :: vec integer ( IK ), dimension (:), allocatable , intent ( out ) :: ilen !! the actual length !! of each character !! string in the array logical ( LK ), intent ( out ), optional :: found character ( kind = CK , len =* ), dimension (:), intent ( in ), optional :: default integer ( IK ), dimension (:), intent ( in ), optional :: default_ilen !! the actual !! length of `default` call json % get ( me , to_unicode ( path ), vec , ilen , found , default , default_ilen ) end subroutine wrap_json_get_alloc_string_vec_by_path !***************************************************************************************** !***************************************************************************************** !> ! This routine calls the user-supplied [[json_array_callback_func]] ! subroutine for each element in the array. ! !@note For integer, real, logical, and character arrays, ! higher-level routines are provided (see `get` methods), so ! this routine does not have to be used for those cases. recursive subroutine json_get_array ( json , me , array_callback ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me procedure ( json_array_callback_func ) :: array_callback type ( json_value ), pointer :: element !! temp variable for getting elements integer ( IK ) :: i !! counter integer ( IK ) :: count !! number of elements in the array if ( json % exception_thrown ) return select case ( me % var_type ) case ( json_array ) count = json % count ( me ) element => me % children do i = 1 , count ! callback for each child if (. not . associated ( element )) then call json % throw_exception ( 'Error in json_get_array: ' // & 'Malformed JSON linked list' ) return end if call array_callback ( json , element , i , count ) if ( json % exception_thrown ) exit element => element % next end do case default call json % throw_exception ( 'Error in json_get_array:' // & ' Resolved value is not an array ' ) end select end subroutine json_get_array !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 4/28/2016 ! ! Traverse a JSON structure. ! This routine calls the user-specified [[json_traverse_callback_func]] ! for each element of the structure. subroutine json_traverse ( json , p , traverse_callback ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: p procedure ( json_traverse_callback_func ) :: traverse_callback logical ( LK ) :: finished !! can be used to stop the process if (. not . json % exception_thrown ) call traverse ( p ) contains recursive subroutine traverse ( p ) !! recursive [[json_value]] traversal. implicit none type ( json_value ), pointer , intent ( in ) :: p type ( json_value ), pointer :: element !! a child element integer ( IK ) :: i !! counter integer ( IK ) :: icount !! number of children if ( json % exception_thrown ) return call traverse_callback ( json , p , finished ) ! first call for this object if ( finished ) return !for arrays and objects, have to also call for all children: if ( p % var_type == json_array . or . p % var_type == json_object ) then icount = json % count ( p ) ! number of children if ( icount > 0 ) then element => p % children ! first one do i = 1 , icount ! call for each child if (. not . associated ( element )) then call json % throw_exception ( 'Error in json_traverse: ' // & 'Malformed JSON linked list' ) return end if call traverse ( element ) if ( finished . or . json % exception_thrown ) exit element => element % next end do end if nullify ( element ) end if end subroutine traverse end subroutine json_traverse !***************************************************************************************** !***************************************************************************************** !> ! This routine calls the user-supplied array_callback subroutine ! for each element in the array (specified by the path). recursive subroutine json_get_array_by_path ( json , me , path , array_callback , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CK , len =* ), intent ( in ) :: path procedure ( json_array_callback_func ) :: array_callback logical ( LK ), intent ( out ), optional :: found type ( json_value ), pointer :: p if ( json % exception_thrown ) then if ( present ( found ) ) found = . false . return end if nullify ( p ) ! resolve the path to the value call json % get ( me = me , path = path , p = p ) if (. not . associated ( p )) then call json % throw_exception ( 'Error in json_get_array:' // & ' Unable to resolve path: ' // trim ( path ), found ) else call json % get ( me = p , array_callback = array_callback ) nullify ( p ) end if if ( json % exception_thrown ) then if ( present ( found ) ) then found = . false . call json % clear_exceptions () end if else if ( present ( found ) ) found = . true . end if end subroutine json_get_array_by_path !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_get_array_by_path]], where \"path\" is kind=CDK recursive subroutine wrap_json_get_array_by_path ( json , me , path , array_callback , found ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer , intent ( in ) :: me character ( kind = CDK , len =* ), intent ( in ) :: path procedure ( json_array_callback_func ) :: array_callback logical ( LK ), intent ( out ), optional :: found call json % get ( me , to_unicode ( path ), array_callback , found ) end subroutine wrap_json_get_array_by_path !***************************************************************************************** !***************************************************************************************** !> ! Internal routine to be called before parsing JSON. ! Currently, all this does it allocate the `comment_char` if none was specified. subroutine json_prepare_parser ( json ) implicit none class ( json_core ), intent ( inout ) :: json if ( json % allow_comments . and . . not . allocated ( json % comment_char )) then ! comments are enabled, but user hasn't set the comment char, ! so in this case use the default: json % comment_char = CK_ '/!#' end if end subroutine json_prepare_parser !***************************************************************************************** !***************************************************************************************** !> ! Parse the JSON file and populate the [[json_value]] tree. ! !### Inputs ! ! The inputs can be: ! ! * `file` & `unit` : the specified unit is used to read JSON from file. ! [note if unit is already open, then the filename is ignored] ! * `file` : JSON is read from file using internal unit number ! !### Example ! !````fortran ! type(json_core) :: json ! type(json_value),pointer :: p ! call json%load(file='myfile.json', p=p) !```` ! !### History ! * Jacob Williams : 01/13/2015 : added read from string option. ! * Izaak Beekman : 03/08/2015 : moved read from string to separate ! subroutine, and error annotation to separate subroutine. ! !@note When calling this routine, any exceptions thrown from previous ! calls will automatically be cleared. subroutine json_parse_file ( json , file , p , unit ) implicit none class ( json_core ), intent ( inout ) :: json character ( kind = CDK , len =* ), intent ( in ) :: file !! JSON file name type ( json_value ), pointer :: p !! output structure integer ( IK ), intent ( in ), optional :: unit !! file unit number (/= 0) integer ( IK ) :: iunit !! file unit actually used integer ( IK ) :: istat !! iostat flag logical ( LK ) :: is_open !! if the file is already open logical ( LK ) :: has_duplicate !! if checking for duplicate keys character ( kind = CK , len = :), allocatable :: path !! path to any duplicate key ! clear any exceptions and initialize: call json % initialize () call json % prepare_parser () if ( present ( unit ) ) then if ( unit == 0 ) then call json % throw_exception ( 'Error in json_parse_file: unit number must not be 0.' ) return end if iunit = unit ! check to see if the file is already open ! if it is, then use it, otherwise open the file with the name given. inquire ( unit = iunit , opened = is_open , iostat = istat ) if ( istat == 0 . and . . not . is_open ) then ! open the file open ( unit = iunit , & file = file , & status = 'OLD' , & action = 'READ' , & form = form_spec , & access = access_spec , & iostat = istat & FILE_ENCODING ) else ! if the file is already open, then we need to make sure ! that it is open with the correct form/access/etc... end if else ! open the file with a new unit number: open ( newunit = iunit , & file = file , & status = 'OLD' , & action = 'READ' , & form = form_spec , & access = access_spec , & iostat = istat & FILE_ENCODING ) end if if ( istat == 0 ) then if ( use_unformatted_stream ) then ! save the file size to be read: inquire ( unit = iunit , size = json % filesize , iostat = istat ) end if ! create the value and associate the pointer call json_value_create ( p ) ! Note: the name of the root json_value doesn't really matter, ! but we'll allocate something here just in case. p % name = trim ( file ) !use the file name ! parse as a value call json % parse_value ( unit = iunit , str = CK_ '' , value = p ) call json % parse_end ( unit = iunit , str = CK_ '' ) ! check for errors: if ( json % exception_thrown ) then call json % annotate_invalid_json ( iunit , CK_ '' ) else if (. not . json % allow_duplicate_keys ) then call json % check_for_duplicate_keys ( p , has_duplicate , path = path ) if (. not . json % exception_thrown ) then if ( has_duplicate ) then call json % throw_exception ( 'Error in json_parse_file: ' // & 'Duplicate key found: ' // path ) end if end if end if end if ! close the file: close ( unit = iunit , iostat = istat ) else call json % throw_exception ( 'Error in json_parse_file: Error opening file: ' // trim ( file )) nullify ( p ) end if end subroutine json_parse_file !***************************************************************************************** !***************************************************************************************** !> ! Parse the JSON string and populate the [[json_value]] tree. ! !### See also ! * [[json_parse_file]] subroutine json_parse_string ( json , p , str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! output structure character ( kind = CK , len =* ), intent ( in ) :: str !! string with JSON data integer ( IK ), parameter :: iunit = 0 !! indicates that json data will be read from buffer logical ( LK ) :: has_duplicate !! if checking for duplicate keys character ( kind = CK , len = :), allocatable :: path !! path to any duplicate key ! clear any exceptions and initialize: call json % initialize () call json % prepare_parser () ! create the value and associate the pointer call json_value_create ( p ) ! Note: the name of the root json_value doesn't really matter, ! but we'll allocate something here just in case. p % name = CK_ '' ! parse as a value call json % parse_value ( unit = iunit , str = str , value = p ) call json % parse_end ( unit = iunit , str = str ) if ( json % exception_thrown ) then call json % annotate_invalid_json ( iunit , str ) else if (. not . json % allow_duplicate_keys ) then call json % check_for_duplicate_keys ( p , has_duplicate , path = path ) if (. not . json % exception_thrown ) then if ( has_duplicate ) then call json % throw_exception ( 'Error in json_parse_string: ' // & 'Duplicate key found: ' // path ) end if end if end if end if end subroutine json_parse_string !***************************************************************************************** !***************************************************************************************** !> ! An error checking routine to call after a file (or string) has been parsed. ! It will throw an exception if there are any other non-whitespace characters ! in the file. subroutine json_parse_end ( json , unit , str ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: unit !! file unit number character ( kind = CK , len =* ), intent ( in ) :: str !! string containing JSON !! data (only used if `unit=0`) logical ( LK ) :: eof !! end-of-file flag character ( kind = CK , len = 1 ) :: c !! character read from file !! (or string) by [[pop_char]] ! first check for exceptions: if ( json % exception_thrown ) return ! pop the next non whitespace character off the file call json % pop_char ( unit , str = str , eof = eof , skip_ws = . true ., & skip_comments = json % allow_comments , popped = c ) if (. not . eof ) then call json % throw_exception ( 'Error in json_parse_end:' // & ' Unexpected character found after parsing value. \"' // & c // '\"' ) end if end subroutine json_parse_end !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_parse_string]], where `str` is kind=CDK. subroutine wrap_json_parse_string ( json , p , str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p !! output structure character ( kind = CDK , len =* ), intent ( in ) :: str !! string with JSON data call json % deserialize ( p , to_unicode ( str )) end subroutine wrap_json_parse_string !***************************************************************************************** !***************************************************************************************** !> ! Generate a warning message if there was an error parsing a JSON ! file or string. subroutine annotate_invalid_json ( json , iunit , str ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: iunit !! file unit number character ( kind = CK , len =* ), intent ( in ) :: str !! string with JSON data character ( kind = CK , len = :), allocatable :: line !! line containing the error character ( kind = CK , len = :), allocatable :: arrow_str !! arrow string that points !! to the current character character ( kind = CK , len = max_integer_str_len ) :: line_str !! current line number string character ( kind = CK , len = max_integer_str_len ) :: char_str !! current character count string integer ( IK ) :: i !! line number counter integer ( IK ) :: i_nl_prev !! index of previous newline character integer ( IK ) :: i_nl !! index of current newline character ! If there was an error reading the file, then ! print the line where the error occurred: if ( json % exception_thrown ) then !the counters for the current line and the last character read: call integer_to_string ( json % line_count , int_fmt , line_str ) call integer_to_string ( json % char_count , int_fmt , char_str ) !draw the arrow string that points to the current character: arrow_str = repeat ( '-' , max ( 0_IK , json % char_count - 1_IK ) ) // '^' if ( json % line_count > 0 . and . json % char_count > 0 ) then if ( iunit /= 0 ) then if ( use_unformatted_stream ) then call json % get_current_line_from_file_stream ( iunit , line ) else call json % get_current_line_from_file_sequential ( iunit , line ) end if else !get the current line from the string: ! [this is done by counting the newline characters] i_nl_prev = 0 !index of previous newline character i_nl = 2 !just in case line_count = 0 do i = 1 , json % line_count i_nl = index ( str ( i_nl_prev + 1 :), newline ) if ( i_nl == 0 ) then !last line - no newline character i_nl = len ( str ) + 1 exit end if i_nl = i_nl + i_nl_prev !index of current newline character i_nl_prev = i_nl !update for next iteration end do line = str ( i_nl_prev + 1 : i_nl - 1 ) !extract current line end if else !in this case, it was an empty line or file line = CK_ '' end if ! add a newline for the error display if necessary: line = trim ( line ) if ( len ( line ) > 0 ) then i = len ( line ) if ( line ( i : i ) /= newline ) line = line // newline else line = line // newline end if !create the error message: if ( allocated ( json % err_message )) then json % err_message = json % err_message // newline else json % err_message = '' end if json % err_message = json % err_message // & 'line: ' // trim ( adjustl ( line_str )) // ', ' // & 'character: ' // trim ( adjustl ( char_str )) // newline // & line // arrow_str if ( allocated ( line )) deallocate ( line ) end if end subroutine annotate_invalid_json !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Rewind the file to the beginning of the current line, and return this line. ! The file is assumed to be opened. ! This is the SEQUENTIAL version (see also [[get_current_line_from_file_stream]]). subroutine get_current_line_from_file_sequential ( iunit , line ) implicit none integer ( IK ), intent ( in ) :: iunit !! file unit number character ( kind = CK , len = :), allocatable , intent ( out ) :: line !! current line character ( kind = CK , len = seq_chunk_size ) :: chunk !! for reading line in chunks integer ( IK ) :: istat !! iostat flag integer ( IK ) :: isize !! number of characters read in read statement !initialize: line = CK_ '' !rewind to beginning of the current record: backspace ( iunit , iostat = istat ) !loop to read in all the characters in the current record. ![the line is read in chunks until the end of the line is reached] if ( istat == 0 ) then do isize = 0 read ( iunit , fmt = '(A)' , advance = 'NO' , size = isize , iostat = istat ) chunk if ( istat == 0 ) then line = line // chunk else if ( isize > 0 . and . isize <= seq_chunk_size ) line = line // chunk ( 1 : isize ) exit end if end do end if end subroutine get_current_line_from_file_sequential !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Rewind the file to the beginning of the current line, and return this line. ! The file is assumed to be opened. ! This is the STREAM version (see also [[get_current_line_from_file_sequential]]). subroutine get_current_line_from_file_stream ( json , iunit , line ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: iunit !! file unit number character ( kind = CK , len = :), allocatable , intent ( out ) :: line !! current line integer ( IK ) :: istart !! start position of current line integer ( IK ) :: iend !! end position of current line integer ( IK ) :: ios !! file read `iostat` code character ( kind = CK , len = 1 ) :: c !! a character read from the file logical :: done !! flag to exit the loop istart = json % ipos do if ( istart <= 1 ) then istart = 1 exit end if read ( iunit , pos = istart , iostat = ios ) c done = ios /= 0_IK if (. not . done ) done = c == newline if ( done ) then if ( istart /= 1 ) istart = istart - 1 exit end if istart = istart - 1 !rewind until the beginning of the line end do iend = json % ipos do read ( iunit , pos = iend , iostat = ios ) c if ( IS_IOSTAT_END ( ios )) then ! account for end of file without linebreak iend = iend - 1 exit end if if ( c == newline . or . ios /= 0 ) exit iend = iend + 1 end do allocate ( character ( kind = CK , len = iend - istart + 1 ) :: line ) read ( iunit , pos = istart , iostat = ios ) line end subroutine get_current_line_from_file_stream !***************************************************************************************** !***************************************************************************************** !> ! Core parsing routine. recursive subroutine parse_value ( json , unit , str , value ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: unit !! file unit number character ( kind = CK , len =* ), intent ( in ) :: str !! string containing JSON !! data (only used if `unit=0`) type ( json_value ), pointer :: value !! JSON data that is extracted logical ( LK ) :: eof !! end-of-file flag character ( kind = CK , len = 1 ) :: c !! character read from file !! (or string) by [[pop_char]] #if defined __GFORTRAN__ character ( kind = CK , len = :), allocatable :: tmp !! this is a work-around for a bug !! in the gfortran 4.9 compiler. #endif if (. not . json % exception_thrown ) then !the routine is being called incorrectly. if (. not . associated ( value )) then call json % throw_exception ( 'Error in parse_value: value pointer not associated.' ) return end if ! pop the next non whitespace character off the file call json % pop_char ( unit , str = str , eof = eof , skip_ws = . true ., & skip_comments = json % allow_comments , popped = c ) if ( eof ) then return else select case ( c ) case ( start_object ) ! start object call json % to_object ( value ) !allocate class call json % parse_object ( unit , str , value , expecting_next_element = . false .) case ( start_array ) ! start array call json % to_array ( value ) !allocate class call json % parse_array ( unit , str , value ) case ( end_array ) ! end an empty array call json % push_char ( c ) if ( associated ( value )) then deallocate ( value ) nullify ( value ) end if case ( quotation_mark ) ! string call json % to_string ( value ) !allocate class select case ( value % var_type ) case ( json_string ) #if defined __GFORTRAN__ ! write to a tmp variable because of ! a bug in 4.9 gfortran compiler. call json % parse_string ( unit , str , tmp ) value % str_value = tmp if ( allocated ( tmp )) deallocate ( tmp ) #else call json % parse_string ( unit , str , value % str_value ) #endif end select case ( CK_ 't' ) !true_str(1:1) gfortran bug work around !true call json % parse_for_chars ( unit , str , true_str ( 2 :)) !allocate class and set value: if (. not . json % exception_thrown ) call json % to_logical ( value ,. true .) case ( CK_ 'f' ) !false_str(1:1) gfortran bug work around !false call json % parse_for_chars ( unit , str , false_str ( 2 :)) !allocate class and set value: if (. not . json % exception_thrown ) call json % to_logical ( value ,. false .) case ( CK_ 'n' ) !null_str(1:1) gfortran bug work around !null call json % parse_for_chars ( unit , str , null_str ( 2 :)) if (. not . json % exception_thrown ) call json % to_null ( value ) ! allocate class case ( CK_ '-' , CK_ '0' : CK_ '9' , CK_ '.' , CK_ '+' ) call json % push_char ( c ) call json % parse_number ( unit , str , value ) case default call json % throw_exception ( 'Error in parse_value:' // & ' Unexpected character while parsing value. \"' // & c // '\"' ) end select end if end if end subroutine parse_value !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Allocate a [[json_value]] pointer and make it a logical(LK) variable. ! The pointer should not already be allocated. ! !### Example !````fortran ! type(json_value),pointer :: p ! type(json_core) :: json ! call json%create_logical(p,'value',.true.) !```` subroutine json_value_create_logical ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p logical ( LK ), intent ( in ) :: val !! variable value character ( kind = CK , len =* ), intent ( in ) :: name !! variable name call json_value_create ( p ) call json % to_logical ( p , val , name ) end subroutine json_value_create_logical !***************************************************************************************** !***************************************************************************************** !> author: Izaak Beekman ! ! Wrapper for [[json_value_create_logical]] so `create_logical` method can ! be called with name of character kind 'DEFAULT' or 'ISO_10646' subroutine wrap_json_value_create_logical ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p logical ( LK ), intent ( in ) :: val character ( kind = CDK , len =* ), intent ( in ) :: name call json % create_logical ( p , val , to_unicode ( name )) end subroutine wrap_json_value_create_logical !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Allocate a [[json_value]] pointer and make it an integer(IK) variable. ! The pointer should not already be allocated. ! !### Example !````fortran ! type(json_value),pointer :: p ! type(json_core) :: json ! call json%create_integer(p,'value',1) !```` subroutine json_value_create_integer ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p integer ( IK ), intent ( in ) :: val character ( kind = CK , len =* ), intent ( in ) :: name call json_value_create ( p ) call json % to_integer ( p , val , name ) end subroutine json_value_create_integer !***************************************************************************************** !***************************************************************************************** !> author: Izaak Beekman ! ! A wrapper procedure for [[json_value_create_integer]] so that `create_integer` ! method may be called with either a 'DEFAULT' or 'ISO_10646' character kind ! `name` actual argument. subroutine wrap_json_value_create_integer ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p integer ( IK ), intent ( in ) :: val character ( kind = CDK , len =* ), intent ( in ) :: name call json % create_integer ( p , val , to_unicode ( name )) end subroutine wrap_json_value_create_integer !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Allocate a [[json_value]] pointer and make it a real(RK) variable. ! The pointer should not already be allocated. ! !### Example !````fortran ! type(json_value),pointer :: p ! type(json_core) :: json ! call json%create_real(p,'value',1.0_RK) !```` subroutine json_value_create_real ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p real ( RK ), intent ( in ) :: val character ( kind = CK , len =* ), intent ( in ) :: name call json_value_create ( p ) call json % to_real ( p , val , name ) end subroutine json_value_create_real !***************************************************************************************** !***************************************************************************************** !> author: Izaak Beekman ! ! A wrapper for [[json_value_create_real]] so that `create_real` method ! may be called with an actual argument corresponding to the dummy argument, ! `name` that may be of 'DEFAULT' or 'ISO_10646' character kind. subroutine wrap_json_value_create_real ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p real ( RK ), intent ( in ) :: val character ( kind = CDK , len =* ), intent ( in ) :: name call json % create_real ( p , val , to_unicode ( name )) end subroutine wrap_json_value_create_real !***************************************************************************************** #ifndef REAL32 !***************************************************************************************** !> ! Alternate version of [[json_value_create_real]] where val=real32. ! !@note The value is converted into a `real(RK)` variable internally. subroutine json_value_create_real32 ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p real ( real32 ), intent ( in ) :: val character ( kind = CK , len =* ), intent ( in ) :: name call json % create_real ( p , real ( val , RK ), name ) end subroutine json_value_create_real32 !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_create_real32]] where \"name\" is kind(CDK). subroutine wrap_json_value_create_real32 ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p real ( real32 ), intent ( in ) :: val character ( kind = CDK , len =* ), intent ( in ) :: name call json % create_real ( p , val , to_unicode ( name )) end subroutine wrap_json_value_create_real32 !***************************************************************************************** #endif #ifdef REAL128 !***************************************************************************************** !> ! Alternate version of [[json_value_create_real]] where val=real64. ! !@note The value is converted into a `real(RK)` variable internally. subroutine json_value_create_real64 ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p real ( real64 ), intent ( in ) :: val character ( kind = CK , len =* ), intent ( in ) :: name call json % create_real ( p , real ( val , RK ), name ) end subroutine json_value_create_real64 !***************************************************************************************** !***************************************************************************************** !> ! Alternate version of [[json_value_create_real64]] where \"name\" is kind(CDK). subroutine wrap_json_value_create_real64 ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p real ( real64 ), intent ( in ) :: val character ( kind = CDK , len =* ), intent ( in ) :: name call json % create_real ( p , val , to_unicode ( name )) end subroutine wrap_json_value_create_real64 !***************************************************************************************** #endif !***************************************************************************************** !> author: Jacob Williams ! ! Allocate a json_value pointer and make it a string variable. ! The pointer should not already be allocated. ! !### Example !````fortran ! type(json_value),pointer :: p ! type(json_core) :: json ! call json%create_string(p,'value','hello') !```` subroutine json_value_create_string ( json , p , val , name , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: val character ( kind = CK , len =* ), intent ( in ) :: name logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` call json_value_create ( p ) call json % to_string ( p , val , name , trim_str , adjustl_str ) end subroutine json_value_create_string !***************************************************************************************** !***************************************************************************************** !> author: Izaak Beekman ! ! Wrap [[json_value_create_string]] so that `create_string` method may be called ! with actual character string arguments for `name` and `val` that are BOTH of ! 'DEFAULT' or 'ISO_10646' character kind. subroutine wrap_json_value_create_string ( json , p , val , name , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: val character ( kind = CDK , len =* ), intent ( in ) :: name logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` call json % create_string ( p , to_unicode ( val ), to_unicode ( name ), trim_str , adjustl_str ) end subroutine wrap_json_value_create_string !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Allocate a json_value pointer and make it a null variable. ! The pointer should not already be allocated. ! !### Example !````fortran ! type(json_value),pointer :: p ! type(json_core) :: json ! call json%create_null(p,'value') !```` subroutine json_value_create_null ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name call json_value_create ( p ) call json % to_null ( p , name ) end subroutine json_value_create_null !***************************************************************************************** !***************************************************************************************** !> author: Izaak Beekman ! ! Wrap [[json_value_create_null]] so that `create_null` method may be called with ! an actual argument corresponding to the dummy argument `name` that is either ! of 'DEFAULT' or 'ISO_10646' character kind. subroutine wrap_json_value_create_null ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name call json % create_null ( p , to_unicode ( name )) end subroutine wrap_json_value_create_null !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Allocate a [[json_value]] pointer and make it an object variable. ! The pointer should not already be allocated. ! !### Example !````fortran ! type(json_value),pointer :: p ! type(json_core) :: json ! call json%create_object(p,'objectname') !```` ! !@note The name is not significant for the root structure or an array element. ! In those cases, an empty string can be used. subroutine json_value_create_object ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name call json_value_create ( p ) call json % to_object ( p , name ) end subroutine json_value_create_object !***************************************************************************************** !***************************************************************************************** !> author: Izaak Beekman ! ! Wrap [[json_value_create_object]] so that `create_object` method may be called ! with an actual argument corresponding to the dummy argument `name` that is of ! either 'DEFAULT' or 'ISO_10646' character kind. subroutine wrap_json_value_create_object ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name call json % create_object ( p , to_unicode ( name )) end subroutine wrap_json_value_create_object !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Allocate a [[json_value]] pointer and make it an array variable. ! The pointer should not already be allocated. ! !### Example !````fortran ! type(json_value),pointer :: p ! type(json_core) :: json ! call json%create_array(p,'arrayname') !```` subroutine json_value_create_array ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ) :: name call json_value_create ( p ) call json % to_array ( p , name ) end subroutine json_value_create_array !***************************************************************************************** !***************************************************************************************** !> author: Izaak Beekman ! ! A wrapper for [[json_value_create_array]] so that `create_array` method may be ! called with an actual argument, corresponding to the dummy argument `name`, ! that is either of 'DEFAULT' or 'ISO_10646' character kind. subroutine wrap_json_value_create_array ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CDK , len =* ), intent ( in ) :: name call json % create_array ( p , to_unicode ( name )) end subroutine wrap_json_value_create_array !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Change the [[json_value]] variable to a logical. subroutine to_logical ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p logical ( LK ), intent ( in ), optional :: val !! if the value is also to be set !! (if not present, then .false. is used). character ( kind = CK , len =* ), intent ( in ), optional :: name !! if the name is also to be changed. !set type and value: call destroy_json_data ( p ) p % var_type = json_logical allocate ( p % log_value ) if ( present ( val )) then p % log_value = val else p % log_value = . false . !default value end if !name: if ( present ( name )) call json % rename ( p , name ) end subroutine to_logical !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Change the [[json_value]] variable to an integer. subroutine to_integer ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p integer ( IK ), intent ( in ), optional :: val !! if the value is also to be set !! (if not present, then 0 is used). character ( kind = CK , len =* ), intent ( in ), optional :: name !! if the name is also to be changed. !set type and value: call destroy_json_data ( p ) p % var_type = json_integer allocate ( p % int_value ) if ( present ( val )) then p % int_value = val else p % int_value = 0_IK !default value end if !name: if ( present ( name )) call json % rename ( p , name ) end subroutine to_integer !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Change the [[json_value]] variable to a real. subroutine to_real ( json , p , val , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p real ( RK ), intent ( in ), optional :: val !! if the value is also to be set !! (if not present, then 0.0_rk is used). character ( kind = CK , len =* ), intent ( in ), optional :: name !! if the name is also to be changed. !set type and value: call destroy_json_data ( p ) p % var_type = json_real allocate ( p % dbl_value ) if ( present ( val )) then p % dbl_value = val else p % dbl_value = 0.0_RK !default value end if !name: if ( present ( name )) call json % rename ( p , name ) end subroutine to_real !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Change the [[json_value]] variable to a string. ! !### Modified ! * Izaak Beekman : 02/24/2015 subroutine to_string ( json , p , val , name , trim_str , adjustl_str ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ), optional :: val !! if the value is also to be set !! (if not present, then '' is used). character ( kind = CK , len =* ), intent ( in ), optional :: name !! if the name is also to be changed. logical ( LK ), intent ( in ), optional :: trim_str !! if TRIM() should be called for the `val` !! (only used if `val` is present) logical ( LK ), intent ( in ), optional :: adjustl_str !! if ADJUSTL() should be called for the `val` !! (only used if `val` is present) !! (note that ADJUSTL is done before TRIM) character ( kind = CK , len = :), allocatable :: str !! temp string for `trim()` and/or `adjustl()` logical :: trim_string !! if the string is to be trimmed logical :: adjustl_string !! if the string is to be adjusted left !set type and value: call destroy_json_data ( p ) p % var_type = json_string if ( present ( val )) then if ( present ( trim_str )) then trim_string = trim_str else trim_string = . false . end if if ( present ( adjustl_str )) then adjustl_string = adjustl_str else adjustl_string = . false . end if if ( trim_string . or . adjustl_string ) then str = val if ( adjustl_string ) str = adjustl ( str ) if ( trim_string ) str = trim ( str ) p % str_value = str else p % str_value = val end if else p % str_value = CK_ '' ! default value end if !name: if ( present ( name )) call json % rename ( p , name ) end subroutine to_string !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Change the [[json_value]] variable to a null. subroutine to_null ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ), optional :: name !! if the name is also to be changed. !set type and value: call destroy_json_data ( p ) p % var_type = json_null !name: if ( present ( name )) call json % rename ( p , name ) end subroutine to_null !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Change the [[json_value]] variable to an object. subroutine to_object ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ), optional :: name !! if the name is also to be changed. !set type and value: call destroy_json_data ( p ) p % var_type = json_object !name: if ( present ( name )) call json % rename ( p , name ) end subroutine to_object !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Change the [[json_value]] variable to an array. subroutine to_array ( json , p , name ) implicit none class ( json_core ), intent ( inout ) :: json type ( json_value ), pointer :: p character ( kind = CK , len =* ), intent ( in ), optional :: name !! if the name is also to be changed. !set type and value: call destroy_json_data ( p ) p % var_type = json_array !name: if ( present ( name )) call json % rename ( p , name ) end subroutine to_array !***************************************************************************************** !***************************************************************************************** !> ! Core parsing routine. recursive subroutine parse_object ( json , unit , str , parent , expecting_next_element ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: unit !! file unit number (if parsing from a file) character ( kind = CK , len =* ), intent ( in ) :: str !! JSON string (if parsing from a string) type ( json_value ), pointer :: parent !! the parsed object will be added as a child of this logical ( LK ), intent ( in ) :: expecting_next_element !! if true, this object is preceeded by a comma, so !! we expect a valid object to exist. used to check !! for trailing delimiters. type ( json_value ), pointer :: pair !! temp variable logical ( LK ) :: eof !! end of file flag character ( kind = CK , len = 1 ) :: c !! character returned by [[pop_char]] #if defined __GFORTRAN__ character ( kind = CK , len = :), allocatable :: tmp !! this is a work-around for a bug !! in the gfortran 4.9 compiler. #endif if (. not . json % exception_thrown ) then !the routine is being called incorrectly. if (. not . associated ( parent )) then call json % throw_exception ( 'Error in parse_object: parent pointer not associated.' ) end if nullify ( pair ) !probably not necessary ! pair name call json % pop_char ( unit , str = str , eof = eof , skip_ws = . true ., & skip_comments = json % allow_comments , popped = c ) if ( eof ) then call json % throw_exception ( 'Error in parse_object:' // & ' Unexpected end of file while parsing start of object.' ) return else if ( end_object == c ) then ! end of an empty object if ( expecting_next_element . and . . not . json % allow_trailing_comma ) then ! this is a dangling comma. call json % throw_exception ( 'Error in parse_object: ' // & 'Dangling comma when parsing an object.' ) end if return else if ( quotation_mark == c ) then call json_value_create ( pair ) #if defined __GFORTRAN__ call json % parse_string ( unit , str , tmp ) ! write to a tmp variable because of pair % name = tmp ! a bug in 4.9 gfortran compiler. deallocate ( tmp ) #else call json % parse_string ( unit , str , pair % name ) #endif if ( json % exception_thrown ) then call json % destroy ( pair ) return end if else call json % throw_exception ( 'Error in parse_object: Expecting string: \"' // c // '\"' ) return end if ! pair value call json % pop_char ( unit , str = str , eof = eof , skip_ws = . true ., & skip_comments = json % allow_comments , popped = c ) if ( eof ) then call json % destroy ( pair ) call json % throw_exception ( 'Error in parse_object:' // & ' Unexpected end of file while parsing object member.' ) return else if ( colon_char == c ) then ! parse the value call json % parse_value ( unit , str , pair ) if ( json % exception_thrown ) then call json % destroy ( pair ) return else call json % add ( parent , pair ) end if else call json % destroy ( pair ) call json % throw_exception ( 'Error in parse_object:' // & ' Expecting : and then a value: ' // c ) return end if ! another possible pair call json % pop_char ( unit , str = str , eof = eof , skip_ws = . true ., & skip_comments = json % allow_comments , popped = c ) if ( eof ) then call json % throw_exception ( 'Error in parse_object: ' // & 'End of file encountered when parsing an object' ) return else if ( delimiter == c ) then ! read the next member call json % parse_object ( unit = unit , str = str , parent = parent , & expecting_next_element = . true .) else if ( end_object == c ) then ! end of object return else call json % throw_exception ( 'Error in parse_object: Expecting end of object: ' // c ) return end if end if end subroutine parse_object !***************************************************************************************** !***************************************************************************************** !> ! Core parsing routine. recursive subroutine parse_array ( json , unit , str , array ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: unit !! file unit number (if parsing from a file) character ( kind = CK , len =* ), intent ( in ) :: str !! JSON string (if parsing from a string) type ( json_value ), pointer :: array type ( json_value ), pointer :: element !! temp variable for array element logical ( LK ) :: eof !! end of file flag character ( kind = CK , len = 1 ) :: c !! character returned by [[pop_char]] logical ( LK ) :: expecting_next_element !! to check for trailing delimiters expecting_next_element = . false . do if ( json % exception_thrown ) exit ! try to parse an element value nullify ( element ) call json_value_create ( element ) call json % parse_value ( unit , str , element ) if ( json % exception_thrown ) then if ( associated ( element )) call json % destroy ( element ) exit end if ! parse value will deallocate an empty array value if ( associated ( element )) then expecting_next_element = . false . call json % add ( array , element ) end if ! popped the next character call json % pop_char ( unit , str = str , eof = eof , skip_ws = . true ., & skip_comments = json % allow_comments , popped = c ) if ( eof ) then ! The file ended before array was finished: call json % throw_exception ( 'Error in parse_array: ' // & 'End of file encountered when parsing an array.' ) exit else if ( delimiter == c ) then ! parse the next element expecting_next_element = . true . cycle else if ( end_array == c ) then ! end of array if ( expecting_next_element . and . . not . json % allow_trailing_comma ) then ! this is a dangling comma. call json % throw_exception ( 'Error in parse_array: ' // & 'Dangling comma when parsing an array.' ) end if exit else call json % throw_exception ( 'Error in parse_array: ' // & 'Unexpected character encountered when parsing array.' ) exit end if end do end subroutine parse_array !***************************************************************************************** !***************************************************************************************** !> ! Parses a string while reading a JSON file. ! !### History ! * Jacob Williams : 6/16/2014 : Added hex validation. ! * Jacob Williams : 12/3/2015 : Fixed some bugs. ! * Jacob Williams : 8/23/2015 : `string` is now returned unescaped. ! * Jacob Williams : 7/21/2018 : moved hex validate to [[unescape_string]]. subroutine parse_string ( json , unit , str , string ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: unit !! file unit number (if !! parsing from a file) character ( kind = CK , len =* ), intent ( in ) :: str !! JSON string (if parsing !! from a string) character ( kind = CK , len = :), allocatable , intent ( out ) :: string !! the string (unescaped !! if necessary) logical ( LK ) :: eof !! end of file flag logical ( LK ) :: escape !! for escape string parsing character ( kind = CK , len = 1 ) :: c !! character returned by [[pop_char]] integer ( IK ) :: ip !! index to put next character, !! to speed up by reducing the number !! of character string reallocations. character ( kind = CK , len = :), allocatable :: error_message !! for string unescaping !at least return a blank string if there is a problem: string = blank_chunk if (. not . json % exception_thrown ) then !initialize: escape = . false . ip = 1 do !get the next character from the file: call json % pop_char ( unit , str = str , eof = eof , skip_ws = . false ., popped = c ) if ( eof ) then call json % throw_exception ( 'Error in parse_string: Expecting end of string' ) return else if ( c == quotation_mark . and . . not . escape ) then !end of string exit else !if the string is not big enough, then add another chunk: if ( ip > len ( string )) string = string // blank_chunk !append to string: string ( ip : ip ) = c ip = ip + 1 ! check for escape character, so we don't ! exit prematurely if escaping a quotation ! character: if ( escape ) then escape = . false . else escape = ( c == backslash ) end if end if end do !trim the string if necessary: if ( ip < len ( string ) + 1 ) then if ( ip == 1 ) then string = CK_ '' else string = string ( 1 : ip - 1 ) end if end if ! string is returned unescaped: ! (this will also validate any hex strings present) call unescape_string ( string , error_message ) if ( allocated ( error_message )) then call json % throw_exception ( error_message ) deallocate ( error_message ) !cleanup end if end if end subroutine parse_string !***************************************************************************************** !***************************************************************************************** !> ! Core parsing routine. ! ! This is used to verify the strings `true`, `false`, and `null` during parsing. subroutine parse_for_chars ( json , unit , str , chars ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: unit !! file unit number (if parsing from a file) character ( kind = CK , len =* ), intent ( in ) :: str !! JSON string (if parsing from a string) character ( kind = CK , len =* ), intent ( in ) :: chars !! the string to check for. integer ( IK ) :: i !! counter integer ( IK ) :: length !! trimmed length of `chars` logical ( LK ) :: eof !! end of file flag character ( kind = CK , len = 1 ) :: c !! character returned by [[pop_char]] if (. not . json % exception_thrown ) then length = len_trim ( chars ) do i = 1 , length call json % pop_char ( unit , str = str , eof = eof , skip_ws = . false ., popped = c ) if ( eof ) then call json % throw_exception ( 'Error in parse_for_chars:' // & ' Unexpected end of file while parsing.' ) return else if ( c /= chars ( i : i )) then call json % throw_exception ( 'Error in parse_for_chars:' // & ' Unexpected character: \"' // c // '\" (expecting \"' // & chars ( i : i ) // '\")' ) return end if end do end if end subroutine parse_for_chars !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/20/2014 ! ! Read a numerical value from the file (or string). ! The routine will determine if it is an integer or a real, and ! allocate the type accordingly. ! !@note Complete rewrite of the original FSON routine, which had some problems. subroutine parse_number ( json , unit , str , value ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: unit !! file unit number (if parsing from a file) character ( kind = CK , len =* ), intent ( in ) :: str !! JSON string (if parsing from a string) type ( json_value ), pointer :: value character ( kind = CK , len = :), allocatable :: tmp !! temp string character ( kind = CK , len = :), allocatable :: saved_err_message !! temp error message for !! string to int conversion character ( kind = CK , len = 1 ) :: c !! character returned by [[pop_char]] logical ( LK ) :: eof !! end of file flag real ( RK ) :: rval !! real value integer ( IK ) :: ival !! integer value logical ( LK ) :: first !! first character logical ( LK ) :: is_integer !! it is an integer integer ( IK ) :: ip !! index to put next character !! [to speed up by reducing the number !! of character string reallocations] if (. not . json % exception_thrown ) then tmp = blank_chunk ip = 1 first = . true . is_integer = . true . !assume it may be an integer, unless otherwise determined !read one character at a time and accumulate the string: do !get the next character: call json % pop_char ( unit , str = str , eof = eof , skip_ws = . true ., popped = c ) select case ( c ) case ( CK_ '-' , CK_ '+' ) !note: allowing a '+' as the first character here. if ( is_integer . and . (. not . first )) is_integer = . false . !add it to the string: !tmp = tmp // c !...original if ( ip > len ( tmp )) tmp = tmp // blank_chunk tmp ( ip : ip ) = c ip = ip + 1 case ( CK_ '.' , CK_ 'E' , CK_ 'e' , CK_ 'D' , CK_ 'd' ) !can be present in real numbers if ( is_integer ) is_integer = . false . !add it to the string: !tmp = tmp // c !...original if ( ip > len ( tmp )) tmp = tmp // blank_chunk tmp ( ip : ip ) = c ip = ip + 1 case ( CK_ '0' : CK_ '9' ) !valid characters for numbers !add it to the string: !tmp = tmp // c !...original if ( ip > len ( tmp )) tmp = tmp // blank_chunk tmp ( ip : ip ) = c ip = ip + 1 case default !push back the last character read: call json % push_char ( c ) !string to value: if ( is_integer ) then ! it is an integer: ival = json % string_to_int ( tmp ) if ( json % exception_thrown . and . . not . json % strict_integer_type_checking ) then ! if it couldn't be converted to an integer, ! then try to convert it to a real value and see if that works saved_err_message = json % err_message ! keep the original error message call json % clear_exceptions () ! clear exceptions rval = json % string_to_dble ( tmp ) if ( json % exception_thrown ) then ! restore original error message and continue json % err_message = saved_err_message call json % to_integer ( value , ival ) ! just so we have something else ! in this case, we return a real call json % to_real ( value , rval ) end if else call json % to_integer ( value , ival ) end if else ! it is a real: rval = json % string_to_dble ( tmp ) call json % to_real ( value , rval ) end if exit !finished end select if ( first ) first = . false . end do !cleanup: if ( allocated ( tmp )) deallocate ( tmp ) end if end subroutine parse_number !***************************************************************************************** !***************************************************************************************** !> ! Get the next character from the file (or string). ! !### See also ! * [[push_char]] ! !@note This routine ignores non-printing ASCII characters ! (`iachar<=31`) that are in strings. subroutine pop_char ( json , unit , str , skip_ws , skip_comments , eof , popped ) implicit none class ( json_core ), intent ( inout ) :: json integer ( IK ), intent ( in ) :: unit !! file unit number (if parsing !! from a file) character ( kind = CK , len =* ), intent ( in ) :: str !! JSON string (if parsing from a !! string) -- only used if `unit=0` logical ( LK ), intent ( in ), optional :: skip_ws !! to ignore whitespace [default False] logical ( LK ), intent ( in ), optional :: skip_comments !! to ignore comment lines [default False] logical ( LK ), intent ( out ) :: eof !! true if the end of the file has !! been reached. character ( kind = CK , len = 1 ), intent ( out ) :: popped !! the popped character returned integer ( IK ) :: ios !! `iostat` flag integer ( IK ) :: str_len !! length of `str` character ( kind = CK , len = 1 ) :: c !! a character read from the file (or string) logical ( LK ) :: ignore !! if whitespace is to be ignored logical ( LK ) :: ignore_comments !! if comment lines are to be ignored logical ( LK ) :: parsing_comment !! if we are in the process !! of parsing a comment line if (. not . json % exception_thrown ) then eof = . false . if (. not . present ( skip_ws )) then ignore = . false . else ignore = skip_ws end if parsing_comment = . false . if (. not . present ( skip_comments )) then ignore_comments = . false . else ignore_comments = skip_comments end if do if ( json % pushed_index > 0 ) then ! there is a character pushed back on, most likely ! from the number parsing. Note: this can only occur if ! reading from a file when use_unformatted_stream=.false. c = json % pushed_char ( json % pushed_index : json % pushed_index ) json % pushed_index = json % pushed_index - 1 else if ( unit /= 0 ) then !read from the file !read the next character: if ( use_unformatted_stream ) then ! in this case, we read the file in chunks. ! if we already have the character we need, ! then get it from the chunk. Otherwise, ! read in another chunk. if ( json % ichunk < 1 ) then ! read in a chunk: json % ichunk = 0 if ( json % filesize < json % ipos + len ( json % chunk ) - 1 ) then ! for the last chunk, we resize ! it to the correct size: json % chunk = repeat ( space , json % filesize - json % ipos + 1 ) end if read ( unit = unit , pos = json % ipos , iostat = ios ) json % chunk else ios = 0 end if json % ichunk = json % ichunk + 1 if ( json % ichunk > len ( json % chunk )) then ! check this just in case ios = IOSTAT_END else ! get the next character from the chunk: c = json % chunk ( json % ichunk : json % ichunk ) if ( json % ichunk == len ( json % chunk )) then json % ichunk = 0 ! reset for next chunk end if end if else ! a formatted read: read ( unit = unit , fmt = '(A1)' , advance = 'NO' , iostat = ios ) c end if json % ipos = json % ipos + 1 else !read from the string str_len = len ( str ) !length of the string if ( json % ipos <= str_len ) then c = str ( json % ipos : json % ipos ) ios = 0 else ios = IOSTAT_END !end of the string end if json % ipos = json % ipos + 1 end if json % char_count = json % char_count + 1 !character count in the current line if ( IS_IOSTAT_END ( ios )) then !end of file ! no character to return json % char_count = 0 eof = . true . popped = space ! just to set a value exit else if ( IS_IOSTAT_EOR ( ios ) . or . c == newline ) then !end of record json % char_count = 0 json % line_count = json % line_count + 1 if ( ignore_comments ) parsing_comment = . false . ! done parsing this comment line cycle end if end if if ( ignore_comments . and . ( parsing_comment . or . scan ( c , json % comment_char , kind = IK ) > 0_IK ) ) then ! skipping the comment parsing_comment = . true . cycle else if ( any ( c == control_chars )) then ! non printing ascii characters cycle else if ( ignore . and . c == space ) then ! ignoring whitespace cycle else ! return the character popped = c exit end if end do end if end subroutine pop_char !***************************************************************************************** !***************************************************************************************** !> ! Core routine. ! !### See also ! * [[pop_char]] ! !### History ! * Jacob Williams : 5/3/2015 : replaced original version of this routine. subroutine push_char ( json , c ) implicit none class ( json_core ), intent ( inout ) :: json character ( kind = CK , len = 1 ), intent ( in ) :: c !! to character to push character ( kind = CK , len = max_numeric_str_len ) :: istr !! for error printing if (. not . json % exception_thrown ) then if ( use_unformatted_stream ) then !in this case, c is ignored, and we just !decrement the stream position counter: json % ipos = json % ipos - 1 json % ichunk = json % ichunk - 1 else json % pushed_index = json % pushed_index + 1 if ( json % pushed_index > 0 . and . json % pushed_index <= len ( json % pushed_char )) then json % pushed_char ( json % pushed_index : json % pushed_index ) = c else call integer_to_string ( json % pushed_index , int_fmt , istr ) call json % throw_exception ( 'Error in push_char: ' // & 'invalid valid of pushed_index: ' // trim ( istr )) end if end if !character count in the current line json % char_count = json % char_count - 1 end if end subroutine push_char !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Print any error message, and then clear the exceptions. ! !@note This routine is used by the unit tests. ! It was originally in json_example.f90, and was ! moved here 2/26/2015 by Izaak Beekman. subroutine json_print_error_message ( json , io_unit ) implicit none class ( json_core ), intent ( inout ) :: json integer , intent ( in ), optional :: io_unit !! unit number for !! printing error message character ( kind = CK , len = :), allocatable :: error_msg !! error message logical :: status_ok !! false if there were any errors thrown !get error message: call json % check_for_errors ( status_ok , error_msg ) !print it if there is one: if (. not . status_ok ) then if ( present ( io_unit )) then write ( io_unit , '(A)' ) error_msg else write ( output_unit , '(A)' ) error_msg end if deallocate ( error_msg ) call json % clear_exceptions () end if end subroutine json_print_error_message !***************************************************************************************** !***************************************************************************************** end module json_value_module !*****************************************************************************************","tags":"","loc":"sourcefile/json_value_module.f90.html"},{"title":"json_string_utilities.F90 – JSON-Fortran","text":"This file depends on sourcefile~~json_string_utilities.f90~~EfferentGraph sourcefile~json_string_utilities.f90 json_string_utilities.F90 sourcefile~json_kinds.f90 json_kinds.F90 sourcefile~json_string_utilities.f90->sourcefile~json_kinds.f90 sourcefile~json_parameters.f90 json_parameters.F90 sourcefile~json_string_utilities.f90->sourcefile~json_parameters.f90 sourcefile~json_parameters.f90->sourcefile~json_kinds.f90 Help Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\nis dependent upon another if the latter must be compiled before the former\ncan be. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Files dependent on this one sourcefile~~json_string_utilities.f90~~AfferentGraph sourcefile~json_string_utilities.f90 json_string_utilities.F90 sourcefile~json_file_module.f90 json_file_module.F90 sourcefile~json_file_module.f90->sourcefile~json_string_utilities.f90 sourcefile~json_value_module.f90 json_value_module.F90 sourcefile~json_file_module.f90->sourcefile~json_value_module.f90 sourcefile~json_module.f90 json_module.F90 sourcefile~json_module.f90->sourcefile~json_string_utilities.f90 sourcefile~json_module.f90->sourcefile~json_file_module.f90 sourcefile~json_module.f90->sourcefile~json_value_module.f90 sourcefile~json_value_module.f90->sourcefile~json_string_utilities.f90 Help Graph Key Nodes of different colours represent the following: Graph Key Source File Source File This Page's Entity This Page's Entity Solid arrows point from a file to a file which it depends on. A file\nis dependent upon another if the latter must be compiled before the former\ncan be. Where possible, edges connecting nodes are\ngiven different colours to make them easier to distinguish in\nlarge graphs. Source Code !***************************************************************************************** !> author: Jacob Williams ! license: BSD ! ! JSON-Fortran support module for string manipulation. ! !### License ! * JSON-Fortran is released under a BSD-style license. ! See the [LICENSE](https://github.com/jacobwilliams/json-fortran/blob/master/LICENSE) ! file for details. module json_string_utilities use , intrinsic :: ieee_arithmetic use json_kinds use json_parameters implicit none private !****************************************************** !> ! Convert a 'DEFAULT' kind character input to ! 'ISO_10646' kind and return it interface to_unicode module procedure to_uni , to_uni_vec end interface !****************************************************** #ifdef USE_UCS4 !****************************************************** !> ! Provide a means to convert to UCS4 while ! concatenating UCS4 and default strings interface operator ( // ) module procedure ucs4_join_default , default_join_ucs4 end interface public :: operator ( // ) !****************************************************** !****************************************************** !> ! Provide a string `==` operator that works ! with mixed kinds interface operator ( == ) module procedure ucs4_comp_default , default_comp_ucs4 end interface public :: operator ( == ) !****************************************************** !****************************************************** !> ! Provide a string `/=` operator that works ! with mixed kinds interface operator ( /= ) module procedure ucs4_neq_default , default_neq_ucs4 end interface public :: operator ( /= ) !****************************************************** #endif public :: integer_to_string public :: real_to_string public :: string_to_integer public :: string_to_real public :: valid_json_hex public :: to_unicode public :: escape_string public :: unescape_string public :: lowercase_string public :: replace_string public :: decode_rfc6901 public :: encode_rfc6901 contains !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/4/2013 ! ! Convert an integer to a string. pure subroutine integer_to_string ( ival , int_fmt , str ) implicit none integer ( IK ), intent ( in ) :: ival !! integer value. character ( kind = CDK , len =* ), intent ( in ) :: int_fmt !! format for integers character ( kind = CK , len =* ), intent ( out ) :: str !! `ival` converted to a string. integer ( IK ) :: istat write ( str , fmt = int_fmt , iostat = istat ) ival if ( istat == 0 ) then str = adjustl ( str ) else str = repeat ( star , len ( str )) end if end subroutine integer_to_string !***************************************************************************************** !***************************************************************************************** !> ! Convert a string into an integer. ! !# History ! * Jacob Williams : 12/10/2013 : Rewrote original `parse_integer` routine. ! Added error checking. ! * Modified by Izaak Beekman ! * Jacob Williams : 2/4/2017 : moved core logic to this routine. subroutine string_to_integer ( str , ival , status_ok ) implicit none character ( kind = CK , len =* ), intent ( in ) :: str !! the string to convert to an integer integer ( IK ), intent ( out ) :: ival !! the integer value logical ( LK ), intent ( out ) :: status_ok !! true if there were no errors character ( kind = CDK , len = :), allocatable :: digits integer ( IK ) :: ndigits_digits , ndigits , ierr ! Compute how many digits we need to read ndigits = 2 * len_trim ( str ) if ( ndigits /= 0 ) then ndigits_digits = nint ( log10 ( real ( ndigits ))) + 1 allocate ( character ( kind = CDK , len = ndigits_digits ) :: digits ) write ( digits , '(I0)' ) ndigits !gfortran will have a runtime error with * edit descriptor here ! gfortran bug: '*' edit descriptor for ISO_10646 strings does bad stuff. read ( str , '(I' // trim ( digits ) // ')' , iostat = ierr ) ival !string to integer ! error check: status_ok = ( ierr == 0 ) else status_ok = . false . end if if (. not . status_ok ) ival = 0_IK end subroutine string_to_integer !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 12/4/2013 ! ! Convert a real value to a string. ! !### Modified ! * Izaak Beekman : 02/24/2015 : added the compact option. ! * Jacob Williams : 10/27/2015 : added the star option. ! * Jacob Williams : 07/07/2019 : added null and ieee options. subroutine real_to_string ( rval , real_fmt , compact_real , non_normals_to_null , str ) implicit none real ( RK ), intent ( in ) :: rval !! real value. character ( kind = CDK , len =* ), intent ( in ) :: real_fmt !! format for real numbers logical ( LK ), intent ( in ) :: compact_real !! compact the string so that it is !! displayed with fewer characters logical ( LK ), intent ( in ) :: non_normals_to_null !! If True, NaN, Infinity, or -Infinity are returned as `null`. !! If False, the string value will be returned in quotes !! (e.g., \"NaN\", \"Infinity\", or \"-Infinity\" ) character ( kind = CK , len =* ), intent ( out ) :: str !! `rval` converted to a string. integer ( IK ) :: istat !! write `iostat` flag if ( ieee_is_finite ( rval ) . and . . not . ieee_is_nan ( rval )) then ! normal real numbers if ( real_fmt == star ) then write ( str , fmt =* , iostat = istat ) rval else write ( str , fmt = real_fmt , iostat = istat ) rval end if if ( istat == 0 ) then !in this case, the default string will be compacted, ! so that the same value is displayed with fewer characters. if ( compact_real ) call compact_real_string ( str ) else str = repeat ( star , len ( str )) ! error end if else ! special cases for NaN, Infinity, and -Infinity if ( non_normals_to_null ) then ! return it as a JSON null value str = null_str else ! Let the compiler do the real to string conversion ! like before, but put the result in quotes so it ! gets printed as a string write ( str , fmt =* , iostat = istat ) rval if ( istat == 0 ) then str = quotation_mark // trim ( adjustl ( str )) // quotation_mark else str = repeat ( star , len ( str )) ! error end if end if end if end subroutine real_to_string !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/19/2014 ! ! Convert a string into a `real(RK)`. ! !# History ! * Jacob Williams, 10/27/2015 : Now using `fmt=*`, rather than ! `fmt=real_fmt`, since it doesn't work for some unusual cases ! (e.g., when `str='1E-5'`). ! * Jacob Williams : 2/6/2017 : moved core logic to this routine. subroutine string_to_real ( str , use_quiet_nan , rval , status_ok ) implicit none character ( kind = CK , len =* ), intent ( in ) :: str !! the string to convert to a real logical ( LK ), intent ( in ) :: use_quiet_nan !! if true, return NaN's as `ieee_quiet_nan`. !! otherwise, use `ieee_signaling_nan`. real ( RK ), intent ( out ) :: rval !! `str` converted to a real value logical ( LK ), intent ( out ) :: status_ok !! true if there were no errors integer ( IK ) :: ierr !! read iostat error code read ( str , fmt =* , iostat = ierr ) rval status_ok = ( ierr == 0 ) if (. not . status_ok ) then rval = 0.0_RK else if ( ieee_support_nan ( rval )) then if ( ieee_is_nan ( rval )) then ! make sure to return the correct NaN if ( use_quiet_nan ) then rval = ieee_value ( rval , ieee_quiet_nan ) else rval = ieee_value ( rval , ieee_signaling_nan ) end if end if end if end if end subroutine string_to_real !***************************************************************************************** !***************************************************************************************** !> author: Izaak Beekman ! date: 02/24/2015 ! ! Compact a string representing a real number, so that ! the same value is displayed with fewer characters. ! !# See also ! * [[real_to_string]] subroutine compact_real_string ( str ) implicit none character ( kind = CK , len =* ), intent ( inout ) :: str !! string representation of a real number. character ( kind = CK , len = len ( str )) :: significand character ( kind = CK , len = len ( str )) :: expnt character ( kind = CK , len = 2 ) :: separator integer ( IK ) :: exp_start integer ( IK ) :: decimal_pos integer ( IK ) :: sig_trim integer ( IK ) :: exp_trim integer ( IK ) :: i !! counter str = adjustl ( str ) exp_start = scan ( str , CK_ 'eEdD' ) if ( exp_start == 0 ) exp_start = scan ( str , CK_ '-+' , back = . true .) decimal_pos = scan ( str , CK_ '.' ) if ( exp_start /= 0 ) separator = str ( exp_start : exp_start ) if ( exp_start < decimal_pos ) then !possibly signed, exponent-less float significand = str sig_trim = len ( trim ( significand )) do i = len ( trim ( significand )), decimal_pos + 2 , - 1 !look from right to left at 0s !but save one after the decimal place if ( significand ( i : i ) == '0' ) then sig_trim = i - 1 else exit end if end do str = trim ( significand ( 1 : sig_trim )) else if ( exp_start > decimal_pos ) then !float has exponent significand = str ( 1 : exp_start - 1 ) sig_trim = len ( trim ( significand )) do i = len ( trim ( significand )), decimal_pos + 2 , - 1 !look from right to left at 0s if ( significand ( i : i ) == '0' ) then sig_trim = i - 1 else exit end if end do expnt = adjustl ( str ( exp_start + 1 :)) if ( expnt ( 1 : 1 ) == '+' . or . expnt ( 1 : 1 ) == '-' ) then separator = trim ( adjustl ( separator )) // expnt ( 1 : 1 ) exp_start = exp_start + 1 expnt = adjustl ( str ( exp_start + 1 :)) end if exp_trim = 1 do i = 1 ,( len ( trim ( expnt )) - 1 ) !look at exponent leading zeros saving last if ( expnt ( i : i ) == '0' ) then exp_trim = i + 1 else exit end if end do str = trim ( adjustl ( significand ( 1 : sig_trim ))) // & trim ( adjustl ( separator )) // & trim ( adjustl ( expnt ( exp_trim :))) !else ! mal-formed real, BUT this code should be unreachable end if end subroutine compact_real_string !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 1/21/2014 ! ! Add the escape characters to a string for adding to JSON. subroutine escape_string ( str_in , str_out , escape_solidus ) implicit none character ( kind = CK , len =* ), intent ( in ) :: str_in character ( kind = CK , len = :), allocatable , intent ( out ) :: str_out logical ( LK ), intent ( in ) :: escape_solidus !! if the solidus (forward slash) !! is also to be escaped integer ( IK ) :: i !! counter integer ( IK ) :: ipos !! accumulated string size !! (so we can allocate it in chunks for !! greater runtime efficiency) character ( kind = CK , len = 1 ) :: c !! for reading `str_in` one character at a time. #if defined __GFORTRAN__ character ( kind = CK , len = :), allocatable :: tmp !! workaround for bug in gfortran 6.1 #endif logical :: to_be_escaped !! if there are characters to be escaped character ( kind = CK , len =* ), parameter :: specials_no_slash = quotation_mark // & backslash // & bspace // & formfeed // & newline // & carriage_return // & horizontal_tab character ( kind = CK , len =* ), parameter :: specials = specials_no_slash // slash !Do a quick scan for the special characters, ! if any are present, then process the string, ! otherwise, return the string as is. if ( escape_solidus ) then to_be_escaped = scan ( str_in , specials ) > 0 else to_be_escaped = scan ( str_in , specials_no_slash ) > 0 end if if ( to_be_escaped ) then str_out = repeat ( space , chunk_size ) ipos = 1 !go through the string and look for special characters: do i = 1 , len ( str_in ) c = str_in ( i : i ) !get next character in the input string !if the string is not big enough, then add another chunk: if ( ipos + 3 > len ( str_out )) str_out = str_out // blank_chunk select case ( c ) case ( backslash ) !test for unicode sequence: '\\uXXXX' ![don't add an extra '\\' for those] if ( i + 5 <= len ( str_in )) then if ( str_in ( i + 1 : i + 1 ) == CK_ 'u' . and . & valid_json_hex ( str_in ( i + 2 : i + 5 ))) then str_out ( ipos : ipos ) = c ipos = ipos + 1 cycle end if end if str_out ( ipos : ipos + 1 ) = backslash // c ipos = ipos + 2 case ( quotation_mark ) str_out ( ipos : ipos + 1 ) = backslash // c ipos = ipos + 2 case ( slash ) if ( escape_solidus ) then str_out ( ipos : ipos + 1 ) = backslash // c ipos = ipos + 2 else str_out ( ipos : ipos ) = c ipos = ipos + 1 end if case ( bspace ) str_out ( ipos : ipos + 1 ) = '\\b' ipos = ipos + 2 case ( formfeed ) str_out ( ipos : ipos + 1 ) = '\\f' ipos = ipos + 2 case ( newline ) str_out ( ipos : ipos + 1 ) = '\\n' ipos = ipos + 2 case ( carriage_return ) str_out ( ipos : ipos + 1 ) = '\\r' ipos = ipos + 2 case ( horizontal_tab ) str_out ( ipos : ipos + 1 ) = '\\t' ipos = ipos + 2 case default str_out ( ipos : ipos ) = c ipos = ipos + 1 end select end do !trim the string if necessary: if ( ipos < len ( str_out ) + 1 ) then if ( ipos == 1 ) then str_out = CK_ '' else #if defined __GFORTRAN__ tmp = str_out ( 1 : ipos - 1 ) !workaround for bug in gfortran 6.1 str_out = tmp #else str_out = str_out ( 1 : ipos - 1 ) !original #endif end if end if else str_out = str_in end if end subroutine escape_string !***************************************************************************************** !***************************************************************************************** !> ! Remove the escape characters from a JSON string and return it. ! ! The escaped characters are denoted by the `\\` character: ! ! * `\\\"` - quotation mark ! * `\\\\` - reverse solidus ! * `\\/` - solidus ! * `\\b` - backspace ! * `\\f` - formfeed ! * `\\n` - newline (LF) ! * `\\r` - carriage return (CR) ! * `\\t` - horizontal tab ! * `\\uXXXX` - 4 hexadecimal digits subroutine unescape_string ( str , error_message ) implicit none character ( kind = CK , len = :), allocatable , intent ( inout ) :: str !! * in: string as stored !! in a [[json_value]]. !! * out: decoded string. character ( kind = CK , len = :), allocatable , intent ( out ) :: error_message !! will be allocated if !! there was an error integer :: i !! counter integer :: n !! length of `str` integer :: m !! length of `str_tmp` character ( kind = CK , len = 1 ) :: c !! for scanning each character in string character ( kind = CK , len = :), allocatable :: str_tmp !! temp decoded string (if the input !! string contains an escape character !! and needs to be decoded). if ( scan ( str , backslash ) > 0 ) then !there is at least one escape character, so process this string: n = len ( str ) str_tmp = repeat ( space , n ) !size the output string (will be trimmed later) m = 0 !counter in str_tmp i = 0 !counter in str do i = i + 1 if ( i > n ) exit ! finished c = str ( i : i ) ! get next character in the string if ( c == backslash ) then if ( i < n ) then i = i + 1 c = str ( i : i ) !character after the escape select case ( c ) case ( quotation_mark , backslash , slash ) !use d as is m = m + 1 str_tmp ( m : m ) = c case ( CK_ 'b' ) c = bspace m = m + 1 str_tmp ( m : m ) = c case ( CK_ 'f' ) c = formfeed m = m + 1 str_tmp ( m : m ) = c case ( CK_ 'n' ) c = newline m = m + 1 str_tmp ( m : m ) = c case ( CK_ 'r' ) c = carriage_return m = m + 1 str_tmp ( m : m ) = c case ( CK_ 't' ) c = horizontal_tab m = m + 1 str_tmp ( m : m ) = c case ( CK_ 'u' ) ! expecting 4 hexadecimal digits after ! the escape character [\\uXXXX] !for now, we are just returning them as is ![not checking to see if it is a valid hex value] ! ! Example: ! 123456 ! \\uXXXX if ( i + 4 <= n ) then ! validate the hex string: if ( valid_json_hex ( str ( i + 1 : i + 4 ))) then m = m + 1 str_tmp ( m : m + 5 ) = str ( i - 1 : i + 4 ) i = i + 4 m = m + 5 else error_message = 'Error in unescape_string:' // & ' Invalid hexadecimal sequence in string \"' // & trim ( str ) // '\" [' // str ( i - 1 : i + 4 ) // ']' if ( allocated ( str_tmp )) deallocate ( str_tmp ) return end if else error_message = 'Error in unescape_string:' // & ' Invalid hexadecimal sequence in string \"' // & trim ( str ) // '\" [' // str ( i - 1 :) // ']' if ( allocated ( str_tmp )) deallocate ( str_tmp ) return end if case default !unknown escape character error_message = 'Error in unescape_string:' // & ' unknown escape sequence in string \"' // & trim ( str ) // '\" [' // backslash // c // ']' if ( allocated ( str_tmp )) deallocate ( str_tmp ) return end select else ! an escape character is the last character in ! the string. This is an error. error_message = 'Error in unescape_string:' // & ' invalid escape character in string \"' // & trim ( str ) // '\"' if ( allocated ( str_tmp )) deallocate ( str_tmp ) return end if else m = m + 1 str_tmp ( m : m ) = c end if end do !trim trailing space: str = str_tmp ( 1 : m ) end if end subroutine unescape_string !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! date: 6/14/2014 ! ! Returns true if the string is a valid 4-digit hex string. ! !# Examples !```fortran ! valid_json_hex('0000') !returns true ! valid_json_hex('ABC4') !returns true ! valid_json_hex('AB') !returns false (< 4 characters) ! valid_json_hex('WXYZ') !returns false (invalid characters) !``` pure function valid_json_hex ( str ) result ( valid ) implicit none logical ( LK ) :: valid !! is str a value 4-digit hex string character ( kind = CK , len =* ), intent ( in ) :: str !! the string to check. integer ( IK ) :: n !! length of `str` integer ( IK ) :: i !! counter !> an array of the valid hex characters character ( kind = CK , len = 1 ), dimension ( 22 ), parameter :: valid_chars = & [ ( achar ( i ), i = 48 , 57 ), & ! decimal digits ( achar ( i ), i = 65 , 70 ), & ! capital A-F ( achar ( i ), i = 97 , 102 ) ] ! lowercase a-f !initialize valid = . false . !check all the characters in the string: n = len ( str ) if ( n == 4 ) then do i = 1 , n if (. not . any ( str ( i : i ) == valid_chars )) return end do valid = . true . !all are in the set, so it is OK end if end function valid_json_hex !***************************************************************************************** !***************************************************************************************** !> author: Izaak Beekman ! ! Convert string to unicode (CDK to CK). pure function to_uni ( str ) implicit none character ( kind = CDK , len =* ), intent ( in ) :: str character ( kind = CK , len = len ( str )) :: to_uni to_uni = str end function to_uni !***************************************************************************************** !***************************************************************************************** !> author: Izaak Beekman ! ! Convert array of strings to unicode (CDK to CK). ! !@note JW: may be able to remove this by making [[to_uni]] PURE ELEMENTAL ? pure function to_uni_vec ( str ) implicit none character ( kind = CDK , len =* ), dimension (:), intent ( in ) :: str character ( kind = CK , len = len ( str )), dimension ( size ( str )) :: to_uni_vec to_uni_vec = str end function to_uni_vec !***************************************************************************************** !***************************************************************************************** !> author: Izaak Beekman ! ! `CK`//`CDK` operator. pure function ucs4_join_default ( ucs4_str , def_str ) result ( res ) implicit none character ( kind = CK , len =* ), intent ( in ) :: ucs4_str character ( kind = CDK , len =* ), intent ( in ) :: def_str character ( kind = CK , len = ( len ( ucs4_str ) + len ( def_str ))) :: res res = ucs4_str // to_unicode ( def_str ) end function ucs4_join_default !***************************************************************************************** !***************************************************************************************** !> author: Izaak Beekman ! ! `CDK`//`CK` operator. pure function default_join_ucs4 ( def_str , ucs4_str ) result ( res ) implicit none character ( kind = CDK , len =* ), intent ( in ) :: def_str character ( kind = CK , len =* ), intent ( in ) :: ucs4_str character ( kind = CK , len = ( len ( def_str ) + len ( ucs4_str ))) :: res res = to_unicode ( def_str ) // ucs4_str end function default_join_ucs4 !***************************************************************************************** !***************************************************************************************** !> author: Izaak Beekman ! ! `CK`==`CDK` operator. pure elemental function ucs4_comp_default ( ucs4_str , def_str ) result ( res ) implicit none character ( kind = CK , len =* ), intent ( in ) :: ucs4_str character ( kind = CDK , len =* ), intent ( in ) :: def_str logical ( LK ) :: res res = ( ucs4_str == to_unicode ( def_str ) ) end function ucs4_comp_default !***************************************************************************************** !***************************************************************************************** !> author: Izaak Beekman ! ! `CDK`==`CK` operator. pure elemental function default_comp_ucs4 ( def_str , ucs4_str ) result ( res ) implicit none character ( kind = CDK , len =* ), intent ( in ) :: def_str character ( kind = CK , len =* ), intent ( in ) :: ucs4_str logical ( LK ) :: res res = ( to_unicode ( def_str ) == ucs4_str ) end function default_comp_ucs4 !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! `CK`/=`CDK` operator. pure elemental function ucs4_neq_default ( ucs4_str , def_str ) result ( res ) implicit none character ( kind = CK , len =* ), intent ( in ) :: ucs4_str character ( kind = CDK , len =* ), intent ( in ) :: def_str logical ( LK ) :: res res = ( ucs4_str /= to_unicode ( def_str ) ) end function ucs4_neq_default !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! `CDK`/=`CK` operator. pure elemental function default_neq_ucs4 ( def_str , ucs4_str ) result ( res ) implicit none character ( kind = CDK , len =* ), intent ( in ) :: def_str character ( kind = CK , len =* ), intent ( in ) :: ucs4_str logical ( LK ) :: res res = ( to_unicode ( def_str ) /= ucs4_str ) end function default_neq_ucs4 !***************************************************************************************** !***************************************************************************************** !> author: Jacob Williams ! ! Returns lowercase version of the `CK` string. pure function lowercase_string ( str ) result ( s_lower ) implicit none character ( kind = CK , len =* ), intent ( in ) :: str !! input string character ( kind = CK , len = ( len ( str ))) :: s_lower !! lowercase version of the string integer :: i !! counter integer :: j !! index of uppercase character s_lower = str do i = 1 , len_trim ( str ) j = index ( upper , s_lower ( i : i )) if ( j > 0 ) s_lower ( i : i ) = lower ( j : j ) end do end function lowercase_string !***************************************************************************************** !***************************************************************************************** !> ! Replace all occurrences of `s1` in `str` with `s2`. ! ! A case-sensitive match is used. ! !@note `str` must be allocated. pure subroutine replace_string ( str , s1 , s2 ) implicit none character ( kind = CK , len = :), allocatable , intent ( inout ) :: str character ( kind = CK , len =* ), intent ( in ) :: s1 character ( kind = CK , len =* ), intent ( in ) :: s2 character ( kind = CK , len = :), allocatable :: tmp !! temporary string for accumulating result integer ( IK ) :: i !! counter integer ( IK ) :: n !! for accumulating the string integer ( IK ) :: ilen !! length of `str` string integer ( IK ) :: ilen1 !! length of `s1` string if ( len ( str ) > 0 ) then tmp = CK_ '' ! initialize ilen1 = len ( s1 ) ! . ! '123ab789' do ilen = len ( str ) i = index ( str , s1 ) if ( i > 0 ) then if ( i > 1 ) tmp = tmp // str ( 1 : i - 1 ) tmp = tmp // s2 ! replace s1 with s2 in new string n = i + ilen1 ! start of remainder of str to keep if ( n <= ilen ) then str = str ( n : ilen ) else ! done exit end if else ! done: get remainder of string tmp = tmp // str exit end if end do str = tmp end if end subroutine replace_string !***************************************************************************************** !***************************************************************************************** !> ! Decode a string from the \"JSON Pointer\" RFC 6901 format. ! ! It replaces `~1` with `/` and `~0` with `~`. pure function decode_rfc6901 ( str ) result ( str_out ) implicit none character ( kind = CK , len =* ), intent ( in ) :: str character ( kind = CK , len = :), allocatable :: str_out str_out = str call replace_string ( str_out , tilde // CK_ '1' , slash ) call replace_string ( str_out , tilde // CK_ '0' , tilde ) end function decode_rfc6901 !***************************************************************************************** !***************************************************************************************** !> ! Encode a string into the \"JSON Pointer\" RFC 6901 format. ! ! It replaces `~` with `~0` and `/` with `~1`. pure function encode_rfc6901 ( str ) result ( str_out ) implicit none character ( kind = CK , len =* ), intent ( in ) :: str character ( kind = CK , len = :), allocatable :: str_out str_out = str call replace_string ( str_out , tilde , tilde // CK_ '0' ) call replace_string ( str_out , slash , tilde // CK_ '1' ) end function encode_rfc6901 !***************************************************************************************** end module json_string_utilities !*****************************************************************************************","tags":"","loc":"sourcefile/json_string_utilities.f90.html"},{"title":"Other Docs – JSON-Fortran","text":"Current Stable Release The latest stable release is 9.0.0 . 1 Past Releases Documentation for official, tagged releases can be found here , including the changelog , and download\nlinks. Development Documentation Additional documentation useful to JSON -Fortran contributors can be\nfound here , including contributing guidelines\nand test coverage reports. General Documentation A README , the same one that’s posted on GitHub , can be found here . Documentation pages for a specific release do not contain links\nback to this page and the master documentation. Please use your\nbrowser’s back button to navigate back to https://jacobwilliams.github.com/json-fortran/ . ↩","tags":"","loc":"page/index.html"},{"title":"Github README – JSON-Fortran","text":"JSON -Fortran: A Modern Fortran JSON API Table of Contents JSON -Fortran Status Brief description Download Building the library Documentation Contributing License Miscellaneous Status Take a look at the CHANGELOG for a list of changes since the latest release. top Brief description JSON -Fortran is a user-friendly, thread-safe, and object-oriented API for reading and writing JSON files, written in modern Fortran. top Download Download the official versioned releases here .\nOr, get the latest development code from the master branch here . NEWS: As of June 7, 2015, json-fortran can be\ndownloaded and installed with the homebrew package\nmanager on Mac OS X. Once homebrew is installed,\nmake sure that the formulae are up to date, view the package options\nand caveats, and install the json-fortran formula : brew update\nbrew info json-fortran\nbrew install --with-unicode-support json-fortran Please note , if you wish to support usage of JSON -Fortran with\nmultiple Fortran compilers, please follow the CMake installation\ninstructions below, as the homebrew installation is only intended to\nsupport a single Fortran compiler. Cheers! NEWS: As of January 20, 2022, json-fortran can be\ndownloaded and installed via the conda package manager on Mac OS X and Linux. Once a conda-distribution, like miniforge , is installed\nthe json-fortran package can be installed. conda install --channel conda-forge json-fortran Note: Packages on conda-forge are build with GCC 9.4 which is upwards\ncompatible with newer GCC versions, but not with other Fortran compilers. Package status from Repology top Building the library The code requires a Fortran compiler that supports\nvarious Fortran 2003 and Fortran 2008 features such as: allocatable\nstrings, newunit , generic , class , and abstract interface .\nIt has been successfully compiled with the Intel Fortran compiler\n13.1.0 (and greater) and the GNU gfortran\ncompiler [4.9 and greater]. It has also\nbeen reported that the library can be built (using the CMake build\nscript) with the NAG Fortran compiler 6.0 Currently, several ways are provided to build the JSON -fortran library\n(libjsonfortran). A build script, build.sh is provided in the project root directory. This script uses FoBiS to build the JSON -Fortran library and the unit tests on Unix-like systems. Edit the script to use either the Intel Fortran Compiler or Gfortran . Note that version 1.2.5 of FoBiS (or later) is required. A FoBiS configuration file ( json-fortran.fobis ) is also provided that can also build the library and examples. Use the mode flag to indicate what to build. For example: To build all the examples using gfortran: FoBiS.py build -f json-fortran.fobis -mode tests-gnu To build all the examples using ifort: FoBiS.py build -f json-fortran.fobis -mode tests-intel To build a static library using gfortran: FoBiS.py build -f json-fortran.fobis -mode static-gnu To build a static library using ifort: FoBiS.py build -f json-fortran.fobis -mode static-intel The full set of modes are: static-gnu , static-gnu-debug , static-intel , static-intel-debug , shared-gnu , shared-gnu-debug , shared-intel , shared-intel-debug , tests-gnu , tests-gnu-debug , tests-intel , tests-intel-debug To generate the documentation using ford , run: FoBiS.py rule --execute makedoc -f json-fortran.fobis To run all the tests, run: FoBiS.py rule --execute tests -f json-fortran.fobis A Visual Studio project is included for building the library (and unit tests) on Windows with the Intel Fortran Compiler. The project has been tested with Visual Studio 2010 and 2013. A CMake build\nsystem is provided. This build system has been tested on Mac and Linux\nusing the Intel Fortran Compiler, gfortran 4.9, and NAG Fortran 6.0. It does also work on Windows (but note that the Visual Studio project it generates is not quite the same as the one mentioned above). This CMake based build provides an install target,\nand exports from both the install location and the build location so\nthat building and using JSON -Fortran in another CMake based project is\ntrivial. To get started with the CMake based build, set the\nenvironment variable FC to point to your Fortran compiler, and\ncreate a build directory. Then (cmake-gui|ccmake|cmake)\n/path/to/json-fortran-root to configure, make to build and make\ninstall to optionally install. You can also use make check to build and run the unit tests.\nAs long as the project is built with\nCMake, other CMake projects can find it and link against it. For example,\nif you have a second copy of the JSON -Fortran project tree, and want to build the unit tests\nlinking against those compiled/installed by the first copy: cmake_minimum_required ( VERSION 3.18 FATAL_ERROR ) enable_language ( Fortran ) project ( jf_test NONE ) find_package ( jsonfortran- ${ CMAKE_Fortran_COMPILER_ID } 8.5.1 REQUIRED ) file ( GLOB JF_TEST_SRCS \"src/tests/jf_test_*.F90\" ) foreach ( UNIT_TEST ${ JF_TEST_SRCS } ) get_filename_component ( TEST ${ UNIT_TEST } NAME_WE ) add_executable ( ${ TEST } ${ UNIT_TEST } ) target_link_libraries ( ${ TEST } jsonfortran::jsonfortran-static ) # or for linking against the dynamic/shared library: # target_link_libraries ( ${TEST} jsonfortran::jsonfortran ) # instead endforeach () A Fortran Package Manager file is also included, so that JSON -Fortran can be compiled with FPM. top Documentation The API documentation for the latest release version can be found here . The\ndocumentation can also be generated by processing the source files\nwith FORD . Note that both the\nshell script and CMake will also generate these files automatically in the documentation folder, assuming you have FORD installed. Some examples can also be found on the wiki . top Contributing Want to help? Take a quick look at our contributing guidelines then claim something and Fork. Commit. Pull request. top License The JSON -Fortran source code and related files and documentation are distributed under a permissive free software license (BSD-style). See the LICENSE file for more details. top Miscellaneous JSON -Fortran is a fork and extensive upgrade of the Fortran 95 FSON code. The reason for the split was to be able to incorporate object-oriented and other nice features of the Fortran 2003 and 2008 standards. Many thanks to the original authors of FSON. For more information about JSON , see: http://www.json.org/ json-fortran on Codecov.IO top","tags":"","loc":"page/README.html"},{"title":"Development Resources – JSON-Fortran","text":"This page is a place to collect resources which are useful to JSON -Fortran contributors and developers. Contributing The guidelines for contributing to JSON -Fortran can be found here . Please read these before posting issues or opening pull requests . Also,\nplease carefully read the LICENSE before using JSON -Fortran in an application, or contributing code. Test Coverage Information The best place to start when trying to increase test coverage, is to\nlook at the procedure level coverage report automatically generated by FoBiS.py . If all procedures are\nlisted as covered, then please take a look at the Codecov.io coverage info . Scripts Scripts used to build and test JSON -Fortran. This is a partial list of\nscripts used in building and testing JSON -Fortran, as well as\ndeploying documentation and managing test coverage information. build.sh CI.yml codecov.yml gccr.pl Release Checklist This is a\nchecklist of tasks to be performed when tagging a new release of JSON -Fortran. The current stable version is 9.0.0 .","tags":"","loc":"page/development-resources/index.html"},{"title":"CI.yml – JSON-Fortran","text":"This is the GitHub Actions script\nused to perform continuous integration testing for JSON -Fortran, and\ntrigger automatic documentation deployment. name : CI on : [ push , pull_request ] jobs : Build : runs - on : $ {{ matrix . os }} strategy : fail - fast : false matrix : os : [ ubuntu -20.04 ] gcc_v : [ 7 , 8 , 9 , 10 , 11 ] # Version of GFortran we want to use . python - version : [ 3.11 ] env : FC : gfortran - $ {{ matrix . gcc_v }} GCC_V : $ {{ matrix . gcc_v }} steps : - name : Set vars id : vars # run: echo ::set-output name=tag::${GITHUB_REF#refs /*/} # this is depreciated: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/ run: echo \"name=tag::${GITHUB_REF#refs/*/ }\" >> $GITHUB_OUTPUT - name : Checkout code uses : actions / checkout @ v4 .1.6 with : submodules : recursive - name : Setup cmake if : contains ( matrix . gcc_v , 9 ) uses : jwlawson / actions - setup - cmake @ v2 .0.2 with : cmake - version : ' 3.28 . x ' - name : Install Python uses : actions / setup - python @ v5 .1.0 # Use pip to install latest CMake , & FORD / Jin2For , etc . with : python - version : $ {{ matrix . python - version }} - name : Setup Graphviz uses : ts - graphviz / setup - graphviz @ v2 .0.2 - name : Install Python dependencies if : contains ( matrix . os , ' ubuntu ' ) run : | python - m pip install -- upgrade pip pip install ford FoBiS . py pygooglechart fpm if [ - f requirements . txt ]; then pip install - r requirements . txt ; fi - name : Install GFortran Linux if : contains ( matrix . os , ' ubuntu ' ) run : | sudo add - apt - repository ppa : ubuntu - toolchain - r / test sudo apt - get update sudo apt - get install - y gcc - $ { GCC_V } gfortran - $ { GCC_V } sudo update - alternatives -- install / usr / bin / gcc gcc / usr / bin / gcc - $ { GCC_V } 100 \\ -- slave / usr / bin / gfortran gfortran / usr / bin / gfortran - $ { GCC_V } \\ -- slave / usr / bin / gcov gcov / usr / bin / gcov - $ { GCC_V } - name : Compile_with_build if : matrix . gcc_v != 7 && matrix . gcc_v != 11 run : | GFORTRAN = gfortran - $ {{ matrix . gcc_v }} GCOV = gcov - $ {{ matrix . gcc_v }} # build with build.sh, run unit tests . / build . sh -- skip - documentation . / build . sh -- skip - documentation -- enable - unicode - name : Compile_with_FPM if : matrix . gcc_v == 11 run : | GFORTRAN = gfortran - $ {{ matrix . gcc_v }} GCOV = gcov - $ {{ matrix . gcc_v }} sudo apt update && sudo apt install - y valgrind fpm test jf_test_01 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_02 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_03 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_04 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_05 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_06 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_07 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_08 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_09 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_10 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_11 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_12 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_13 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_14 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_15 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_16 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_17 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_18 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_19 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_20 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_21 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_22 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_23 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_24 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_25 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_26 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_27 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_28 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_29 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_30 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_31 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_32 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_33 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_34 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_35 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_36 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_37 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_38 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_39 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_40 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_41 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_42 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_43 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_44 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_45 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_46 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_47 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_48 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_49 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_50 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" fpm test jf_test_51 -- runner \"valgrind --leak-check=full --show-leak-kinds=all --error-exitcode=1\" - name : Compile_with_cmake # CMake build with unit tests, no documentation, with coverage analysis # No unicode so that coverage combined with the build script will cover unicode # and non-unicode code paths if : matrix . gcc_v == 9 run : | GFORTRAN = gfortran - $ {{ matrix . gcc_v }} GCOV = gcov - $ {{ matrix . gcc_v }} mkdir cmake - build cd cmake - build cmake - D ENABLE_TESTS = ON .. make - j 4 check - name : Compile_with_build_mkdocs # build with build.sh, make documentation, run unit tests # and perform coverage analysis - used for doc deployment if : matrix . gcc_v == 7 run : | GFORTRAN = gfortran - $ {{ matrix . gcc_v }} GCOV = gcov - $ {{ matrix . gcc_v }} . / build . sh -- coverage -- skip - documentation . / build . sh -- coverage -- enable - unicode - name : Deploy Documentation for master if : matrix . gcc_v == 7 && github . ref == ' refs / heads / master ' uses : JamesIves / github - pages - deploy - action @4.1.3 with : branch : gh - pages # The branch the action should deploy to . folder : doc # The folder the action should deploy . clean : true clean - exclude : | prev - name : Rebuild documentation for tagged release env : TAGNAME : $ {{ steps . vars . outputs . tag }} if : matrix . gcc_v == 7 && startsWith ( github . ref , ' refs / tags / ' ) run : | echo $ { TAGNAME } rm - rf doc sed \"2 s/^/version: ${TAGNAME} \\n /\" json - fortran . md > json - fortran . tagged . md ford -- debug json - fortran . tagged . md - name : Deploy documentation for tagged release if : matrix . gcc_v == 7 && startsWith ( github . ref , ' refs / tags / ' ) uses : JamesIves / github - pages - deploy - action @ v4 .4.1 with : branch : gh - pages # The branch the action should deploy to . folder : doc # The folder the action should deploy . target - folder : prev / $ {{ steps . vars . outputs . tag }} # deploy to a version - specific folder - name : Upload coverage if : matrix . gcc_v == 7 run : | rm json_ * . F90 -* unicode . gcov || true mv json_ * . F90 . gcov src / mv jf_test * .[ fF ] 90. gcov src / tests / bash < ( curl - s https : //codecov.io/bash) -v -X $GCOV","tags":"","loc":"page/development-resources/CI.html"},{"title":"Contributing Guidelines – JSON-Fortran","text":"Contributing to JSON -Fortran Looking to contribute something to JSON -Fortran ? Here’s how you can help. Table of Contents Key Branches Filing issues Outstanding Work Pull Requests Coding Standards Key Branches master is the latest, development version and all efforts should be made to keep it stable. top Filing issues Before filing a new issue , please perform a search to see if that issue has already been filed by someone else, and whether or not a solution exists. If you are experiencing the same issue as one that’s already posted, please leave any additional comments and information under the existing issue. If your issue is related to a previous issue, but substantively different, file a new issue and include a mention of the related issue in text, using Jib’s # syntax. When filing an issue please try to include all of the following information Problem description: What behavior are you seeing that you think is erroneous Installation method: Did you build the code with one of the included build scripts? Some other way? Install from a binary package? What type of system you are on: E.g., 64 bit Intel Mac OS X 10.10.2 (Yosemite) or x86_64 Ubuntu 14.04 LTS (Trusty Tahr) If applicable, what compiler you used, and any non-standard options or configurations that were used. All steps required to reproduce the problem top Outstanding Work Take a look at the issues to see if there is an issue you’d like to help address. Issues with the ready label are issues that are ready to be dealt with. (i.e., They are not blocked by other dependencies and are higher priority.) Increasing the test coverage is another helpful way to\n contribute. Please take a look at the test coverage page for a list of uncovered procedures, and at the Codecov.io coverage status to find procedures and lines of code that are still uncovered by the unit tests . It\n is worth pointing out that the majority of uncovered procedures are\n internal, overloaded procedures and can only be exercised by calling\n the corresponding generic procedure with input arguments that will\n resolve to the specific procedure in question. Let’s keep the\n following graph trending upwards! top Pull Requests Try not to pollute your pull request with unintended changes–keep them simple and small Pull requests should address one issue at a time, and each commit should be a set of self contained, related changes. If you forget something in a commit, please use git rebase -i ][^ to amend and/or squash erroneous commits. Here ][ is the reference to to oldest commit needing to be modified (SHA, or HEAD~4 , etc.) Each commit should compile, and ideally pass the tests. Very complicated new features or fixes, may have commits that don’t pass tests, if otherwise the commit history would include far to many changes in any given commit. Use an interactive rebase to fix any of these issues, as described above. Each commit should have a concise, descriptive message following the\n guidelines laid out here . Make sure to document your changes in the CHANGELOG under the ‘unreleased’ heading. Pull requests should always be based on the upstream master, jacobwilliams/json-fortran:master . Please rebase your branch on top\nof the latest upstream master. Assuming you are on your branch and you’ve added the upstream remote by running something like: git remote add upstream git://github.com/jacobwilliams/json-fortran.git You can accomplish this by running: git rebase upstream/master Create a branch in your fork with a descriptive name that also includes the issue number , if applicable. For example, after forking the repo, you can run something like git checkout -b Unicode-support-issue-35 before starting work on issue #35 : Unicode support When you’re content with your changes, your commits are clean, self contained, with concise descriptive messages, and your changes compile and pass the tests, submit a pull request. We will review your changes, and may ask for certain modifications to be made. Pull requests are tested by our GitHub Actions continuous integration system, and any errors uncovered will need to be fixed before the pull request can be merged into master. The JSON -Fortran library and associated documentation is released under a BSD style license . By submitting a pull request, you are agreeing to release your code under the same license. Note that code with GPL or other “copyleft” style licenses will not be accepted. top Coding Standards Each commit should address a single logical change and code base transformation. Each commit must compile. Each commit should pass the tests unless the feature being implemented or bug being fixed requires extensive changes that would result in a commit with too many different changes. Each pull request should ensure that the proper unit tests have\n been added to cover at least 90% of new or changed code and that the\n overall coverage continues to increase. New tests are added to the src/tests directory and are named jf_test_<#>.[Ff]90 . Each test is a stand alone Fortran program\n which will automatically be compiled and linked against the JSON -Fortran library so long as it follows this naming\n convention. If any of the tests fail, the test program should exit\n with a non-zero return status, using the stop 2 intrinsic\n statement. (The Fortran standard does not require the ‘processor’ to\n have or set a return value, but in practice all compilers respect\n this convention. An integer other than 2 may be used, so long as\n it is non-zero and supported by the processor.) No extraneous white spaces are allowed to be introduced at line endings and all non binary files should end with a single new line. Run git config core.whitespace trailing-space,space-before-tab,blank-at-eol,blank-at-eof to setup the whitespace rules from within your fork, and then check for white space errors with git diff --check to see if you have accidentally introduced white space errors before committing. (You can also enable the sample pre-commit hook that ships with git, to prevent you from committing changes that introduce white space errors. See this stackoverflow question ) for some tips on preventing the introduction of whitespace errors. Please adhere to the code indentation and formatting as it currently exists, aligning common elements vertically, etc. Tab characters are not allowed. Indentations should be done with 4 space characters. Do NOT allow your editor to make a bunch of indentation or white space changes, that will introduce non-substantive changes on lines that you have not actually edited. The coding style is modern free-form Fortran, consistent with the Fortran 2008 standard. Note that the two supported compilers (ifort and gfortran) do not currently include the entire Fortran 2008 standard. Therefore, only those language features supported by Gfortran 4.9 and Intel 13.1.0 are currently allowed. This also means that previous versions of these compilers are not supported, and major changes to the code to support earlier compilers (or Fortran 95) will not be accepted. At some point in the future (when compiler support has improved), all Fortran 2008 features will be allowed. All subroutines and functions must be properly documented. This includes useful inline comments as well as comment blocks using the FORD syntax. top","tags":"","loc":"page/development-resources/CONTRIBUTING.html"},{"title":"JSON-Fortran License – JSON-Fortran","text":"JSON -Fortran: A Modern Fortran JSON API https://github.com/jacobwilliams/json-fortran Copyright (c) 2014-2024, Jacob Williams\nAll rights reserved. Redistribution and use in source and binary forms, with or without modification,\nare permitted provided that the following conditions are met: Redistributions of source code must retain the above copyright notice, this\n list of conditions and the following disclaimer. Redistributions in binary form must reproduce the above copyright notice, this\n list of conditions and the following disclaimer in the documentation and/or\n other materials provided with the distribution. The names of its contributors may not be used to endorse or promote products\n derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” AND\nANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED\nWARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\nDISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR\nANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES\n(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\nLOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON\nANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\nSOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Original FSON License: Copyright (c) 2012 Joseph A. Levin Permission is hereby granted, free of charge, to any person obtaining a copy of this\nsoftware and associated documentation files (the “Software”), to deal in the Software\nwithout restriction, including without limitation the rights to use, copy, modify, merge,\npublish, distribute, sublicense, and/or sell copies of the Software, and to permit\npersons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or\nsubstantial portions of the Software. THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,\nINCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR\nPURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\nLIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT\nOR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER\nDEALINGS IN THE SOFTWARE.","tags":"","loc":"page/development-resources/LICENSE.html"},{"title":"build.sh – JSON-Fortran","text":"Below is the build script used to build JSON -Fortran using FoBiS.py . #!/bin/bash # # NAME # build.sh # # DESCRIPTION # Build the JSON-Fortran library and unit tests. # # USAGE # build.sh [--compiler {intel|gnu|}] [--cflags ''] # [--coverage [{yes|no}]] [--profile [{yes|no}]] [--skip-tests [{yes|no}]] # [--skip-documentation [{yes|no}]] [--enable-unicode [{yes|no}]] [--help] # [--clean] [--real-kind [{REAL32\\REAL64\\REAL128}]] # [--int-kind [{INT8\\INT16\\INT32\\INT64}]] # # By default, if invoked without any flags, this build script will build the # JSON-Fortran library using gfortran, # without : # unicode support # coverage flags # profiling flags # with : # unit tests enabled # documentation (if FORD is installed) # real(REAL64) kinds # integer(INT32) kinds # # More recent (right-most) flags will override preceding flags # flags: # --compiler : gnu or gfortran for gfortran, intel or ifort for intel compiler # A custom compiler may also be specified here, e.g. ftn # # --cflags : Enter any additional/custom compiler flags here and make sure they are # properly quoted # # --help : Print a usage message and exit. # # --clean : Delete generated files and clean up after builds # # # The following flags all (optionally) accept an argument, \"yes\" or \"no.\" If # no argument is passed, \"yes\" will be assumed. # # --enable-unicode [{yes|no}]: Request that the JSON-Fortran be built with (or # without) unicode/UCS4 support. If your compiler # does NOT support ISO 10646/UCS4 and it was # requested, then a warning is printed and the # library is built without UCS4 support. # # --coverage [{yes|no}]: Compile the library and tests with code coverage enabled # or disabled. # # --profile [{yes|no}]: Compile the library and tests with code profiling enabled # or disabled # # --skip-tests [{yes|no}]: Skip (or don't skip) building and running the json- # fortran unit tests # # --skip-documentation [{yes|no}]: Skip (or don't skip) building the json- # fortran documentation using FORD # # REQUIRES # FoBiS.py : https://github.com/szaghi/FoBiS [version 1.2.5 or later required] # FORD : https://github.com/Fortran-FOSS-Programmers/ford [version 4.0.0 or later] # # AUTHOR # Jacob Williams : 12/27/2014 # #set -x #set -v set -o errexit FORDMD = 'json-fortran.md' # FORD options file for building documentation DOCDIR = './doc/' # build directory for documentation PAGESDIR = './pages/' # Directory for FORD \"pages\" SRCDIR = './src/' # library source directory TESTDIR = './src/tests/' # unit test source directory INTROSPECDIR = './src/tests/introspection/' # pre compile configuration tests directory UCS4TESTCODE = 'test_iso_10646_support.f90' BINDIR = './bin/' # build directory for unit tests LIBDIR = './lib/' # build directory for library MODCODE = 'json_module.F90' # json module file name LIBOUT = 'libjsonfortran.a' # name of json library FPP = \"gfortran -E\" # default to gfortran -E pre-processing # The following warning might be triggered by ifort unless explicitly silenced: # warning #7601: F2008 standard does not allow an internal procedure to be an actual argument procedure name. (R1214.4). # In the context of F2008 this is an erroneous warning. # See https://prd1idz.cps.intel.com/en-us/forums/topic/486629 INTELCOMPILERFLAGS = '-c -O2 -warn -stand f08 -diag-disable 7601 -diag-disable 4013 -diag-disable 5142 -traceback' #INTELCOMPILERFLAGS='-c -O2 -warn -traceback -stand f08 -assume protect_parens -assume buffered_io -check all' GNUCOMPILERFLAGS = '-c -O2 -fbacktrace -Wall -Wextra -Wno-maybe-uninitialized -Wno-unused-function -pedantic -std=f2008 -fno-omit-frame-pointer' FCOMPILER = 'gnu' #Set default compiler to gfortran # command line argument parsing # N.B.: Arguments appearing later in the list take precidence over those appearing earlier. # e.g., \"./build.sh --compiler intel --coverage no --compiler gnu --coverage\" will # perform the build with the GFORTRAN compiler, and coverage analysis script_name = \" $( basename \" $0 \" ) \" # usage message print_usage () { echo -e \"\\n\\nUsage:\\n\" echo -e \" ${ script_name } [--compiler {intel|gnu|}] [--cflags '']\\n\\ [--coverage [{yes|no}]] [--profile [{yes|no}]] [--skip-tests [{yes|no}]]\\n\\ [--skip-documentation [{yes|no}]] [--enable-unicode [{yes|no}]] [--help]\" echo \"\" echo -e \"Any flags that take an optional yes or no argument will default to 'yes' when no\\n\\ argument is passed. Additionally, A custom compiler may be passed to the 'compiler'\\n\\ flag, but appropriate 'cflags' should also be passed to the script.\\n\\n\" } while [ \" $# \" -ge \"1\" ] ; do # Get command line arguments while there are more left to process key = \" $1 \" # Command line args are key-value pairs or value-less keys case $key in #find known keys --compiler ) #pick the compiler. Defaults to gfortran, but intel or custom compilers can be used case \" $2 \" in intel | Intel | INTEL | ifort ) FCOMPILER = 'Intel' FCOMPILERFLAGS = \" $INTELCOMPILERFLAGS \" FPP = \"fpp\" shift ;; gnu | Gnu | GNU | gfortran | Gfortran | GFortran | GFORTRAN ) FCOMPILER = 'gnu' FCOMPILERFLAGS = \" $GNUCOMPILERFLAGS \" FPP = \"gfortran -E\" shift ;; * ) FCOMPILER = \"custom\" echo \"Warning: Trying to build with unsupported compiler, $2 .\" 1 > & 2 echo \"Please ensure you set appropriate --cflags and (single) quote them\" 1 > & 2 FC = \" $2 \" FPP = \"gfortran -E\" # try gfortran to preprocess as a default shift ;; esac ;; --cflags ) FCOMPILERFLAGS = \" $2 \" # no good way to check that the user didn't do something questionable shift ;; --real-kind ) REAL_KIND = \"-D $2 \" # warning: not checking for valid input # should be one of: REAL32, REAL64 [default], REAL128 shift ;; --int-kind ) INT_KIND = \"-D $2 \" # warning: not checking for valid input # should be one of: INT8, INT16, INT32 [default], INT64 shift ;; --enable-unicode ) case $2 in yes | Yes | YES ) TRY_UNICODE = \"yes\" shift ;; no | No | NO ) TRY_UNICODE = \"no\" shift ;; * ) TRY_UNICODE = \"yes\" # don't shift; $2 is next arg ;; esac ;; --coverage ) # enable coverage case $2 in yes | Yes | YES ) CODE_COVERAGE = \"yes\" shift ;; no | No | NO ) CODE_COVERAGE = \"no\" shift ;; * ) CODE_COVERAGE = \"yes\" # don't shift because $2 is some other flag ;; esac ;; --profile ) #enable profiling case $2 in yes | Yes | YES ) CODE_PROFILE = \"yes\" shift ;; no | No | NO ) CODE_PROFILE = \"no\" shift ;; * ) CODE_PROFILE = \"yes\" # don't shift because $2 is some other flag ;; esac ;; --skip-tests ) # skip tests case $2 in yes | Yes | YES ) JF_SKIP_TESTS = \"yes\" shift ;; no | No | NO ) JF_SKIP_TESTS = \"no\" shift ;; * ) JF_SKIP_TESTS = \"yes\" ;; esac ;; --skip-documentation ) case $2 in yes | Yes | YES ) JF_SKIP_DOCS = \"yes\" shift ;; no | No | NO ) JF_SKIP_DOCS = \"no\" shift ;; * ) JF_SKIP_DOCS = \"yes\" ;; esac ;; --help ) print_usage exit 0 ;; --clean ) rm -r -- src { ,/tests } /*.o $DOCDIR * $LIBDIR * $BINDIR * *.gcov* ;; * ) echo \"Unknown flag, \\\" $1 \\\", passed to ${ script_name } !\" 2 > & 1 print_usage exit 1 ;; esac shift # look at next argument done # with argument parsing loop # if no compiler selected, then we're defaulting to gnu, and need to check that the cflags are set if [ \" $FCOMPILER \" = 'gnu' ] && [ -z \" $FCOMPILERFLAGS \" ] ; then FCOMPILERFLAGS = \" $GNUCOMPILERFLAGS \" fi if [[ $CODE_COVERAGE == [ yY ] * ]] ; then echo \"Trying to compile with code coverage instrumentation.\" COVERAGE = \"-coverage\" fi if [[ $CODE_PROFILE == [ yY ] * ]] ; then echo \"Trying to compile with code profiling instrumentation.\" PROFILING = \"-profile\" fi if [[ $FCOMPILER == custom ]] ; then echo \"Trying to compile with custom compiler, $FC \" CUSTOM =( \"-fc\" \" $FC \" ) fi if [[ $TRY_UNICODE == [ yY ] * ]] ; then echo \"Trying to compile library with Unicode/UCS4 support\" FoBiS.py build -ch -compiler \" ${ FCOMPILER } \" \" ${ CUSTOM [@] } \" -cflags \" ${ FCOMPILERFLAGS } \" -dbld \" ${ BINDIR } \" -s \" ${ INTROSPECDIR } \" -dmod ./ -dobj ./ -t \" ${ UCS4TESTCODE } \" -o \" ${ UCS4TESTCODE %.f90 } \" -colors if \" ${ BINDIR } / ${ UCS4TESTCODE %.f90 } \" ; then DEFINES = \"-DUSE_UCS4 -Wunused-function\" fi fi #build the stand-alone library: echo \"\" echo \"Building library...\" FoBiS.py build -ch -compiler ${ FCOMPILER } \" ${ CUSTOM [@] } \" -cflags \" ${ FCOMPILERFLAGS } ${ DEFINES } ${ REAL_KIND } ${ INT_KIND } \" ${ COVERAGE } ${ PROFILING } -dbld ${ LIBDIR } -s ${ SRCDIR } -dmod ./ -dobj ./ -t ${ MODCODE } -o ${ LIBOUT } -mklib static -colors #build the unit tests (uses the above library): if [[ $JF_SKIP_TESTS ! = [ yY ] * ]] ; then echo \"\" echo \"Building unit tests...\" # FoBiS.py PR #45 work around [ -d \" $BINDIR \" ] || mkdir \" $BINDIR \" for TEST in \" ${ TESTDIR %/ } \" /jf_test_*. [ fF ] 90 ; do THIS_TEST = ${ TEST ##*/ } echo \"Build ${ THIS_TEST %.[fF]90 } \" FoBiS.py build -ch -compiler ${ FCOMPILER } \" ${ CUSTOM [@] } \" -cflags \" ${ FCOMPILERFLAGS } ${ DEFINES } \" ${ COVERAGE } ${ PROFILING } -dbld \" ${ BINDIR } \" -s \" ${ TESTDIR } \" -i \" ${ LIBDIR } \" -libs \" ${ LIBDIR } / ${ LIBOUT } \" -dmod ./ -dobj ./ -t \" ${ THIS_TEST } \" -o \" ${ THIS_TEST %.[fF]90 } \" -colors done else echo \"Skip building the unit tests since \\$JF_SKIP_TESTS has been set to 'true'.\" fi # Run all the tests unless $JF_SKIP_TESTS echo \"\" if [[ $JF_SKIP_TESTS ! = [ yY ] * ]] ; then echo \"Running tests...\" OLD_IGNORES = \" $GLOBIGNORE \" # run next commands in subshell to avoid `cd -` ( cd \" $BINDIR \" GLOBIGNORE = '*.*' # from: http://stackoverflow.com/questions/7992689/bash-how-to-loop-all-files-in-sorted-order ls jf_test_* | sed 's/^[^0-9]*[0-9]*/\\1 \\2/' | sort -k2,2n | tr -d ' ' | while read TEST ; do # It would be nice to run json output printed to stdout through jsonlint, however, # some tests output more than one json structure and these need to be split echo \"\" echo \"======================================================\" echo \"\" echo \"Running ${ TEST } \" cd .. \" ${ BINDIR }${ TEST } \" cd \" $BINDIR \" done ) echo \"\" echo \"======================================================\" GLOBIGNORE = \" $OLD_IGNORES \" if [[ $CODE_COVERAGE = [ yY ] * ]] ; then for SRCFILE in json_string_utilities.F90 json_value_module.F90 json_file_module.F90 ; do [ -f ${ SRCDIR }${ SRCFILE } .gcov ] && rm ${ SRCDIR }${ SRCFILE } .gcov gcov -o $LIBDIR ${ SRCDIR }${ SRCFILE } if [[ $TRY_UNICODE = [ yY ] * ]] ; then # gcov/gfortran bug work around awk -F ':' '{line=\"\"; for(i=2;i<=NF;i++){line=line\":\"$i}; if (NR > 1) print $1 prevline; prevline=line}; END{print \" -\"prevline}' ${ SRCFILE } .gcov > ${ SRCFILE } .gcov.fixed && \\ mv ${ SRCFILE } .gcov { .fixed, } # rename so we can merge coverage info mv ${ SRCFILE } .gcov ${ SRCFILE } -unicode.gcov else # rename so we can merge coverage info mv ${ SRCFILE } .gcov ${ SRCFILE } -no-unicode.gcov fi if [ -f ${ SRCFILE } -unicode.gcov ] && [ -f ${ SRCFILE } -no-unicode.gcov ] ; then ############## for debugging #echo \"\" #echo \"-------------------\" #echo \"no-unicode file\" #echo \"-------------------\" #cat ${SRCFILE}-no-unicode.gcov #echo \"\" #echo \"-------------------\" #echo \"unicode file\" #echo \"-------------------\" #cat ${SRCFILE}-unicode.gcov #echo \"\" #./pages/development-resources/gccr.pl -n -c ${SRCFILE}-no-unicode.gcov no-unicode \\ # ${SRCFILE}-unicode.gcov unicode ############## # merge them ./pages/development-resources/gccr.pl -n -c ${ SRCFILE } -no-unicode.gcov no-unicode \\ ${ SRCFILE } -unicode.gcov unicode > ${ SRCFILE } .gcov else cp ${ SRCFILE } *-unicode.gcov ${ SRCFILE } .gcov fi done FoBiS.py rule -gcov_analyzer . for SRCFILE in json_string_utilities.F90 json_value_module.F90 json_file_module.F90 ; do sed -i \"bak\" -E 's; \\*\\*([a-zA-Z]+[a-zA-Z0-9_]*)\\*\\*; \\*\\*[[\\1]]\\*\\*;' ${ SRCFILE } .gcov.md sed -i \"bak\" -E \"s;, line ([0-9]+);, line [\\1](https://github.com/jacobwilliams/json-fortran/blob/master/src/ ${ SRCFILE } #L\\1);\" ${ SRCFILE } .gcov.md done gcov -o $BINDIR ${ TESTDIR } *. [ Ff ] 90 fi else echo \"Skip running the unit tests since \\$JF_SKIP_TESTS has been set to ${ JF_SKIP_TESTS } .\" fi #build the documentation with ford (if present): echo \"\" if [[ $JF_SKIP_DOCS ! = [ yY ] * ]] ; then if hash ford 2 >/dev/null ; then echo \"Building documentation...\" [[ $TRY_UNICODE = [ yY ] * ]] && MACRO_FLAG =( \"-m\" \"USE_UCS4\" ) echo \" $FPP \" > .PREPROCESSOR # Override via include in project file, until FORD gets CLI for this ford --debug \" ${ MACRO_FLAG [@] } \" -p \" $PAGESDIR \" \" $FORDMD \" else echo \"FORD not found! Install using: pip install ford\" fi else echo \"Skip building documentation since \\$JF_SKIP_DOCS has been set to ${ JF_SKIP_DOCS } .\" fi","tags":"","loc":"page/development-resources/build.html"},{"title":"codecov.yml – JSON-Fortran","text":"This is the Codecov configuration file. comment : layout : header , changes , diff , sunburst coverage : fixes : - doc / src :: src ignore : - src / tests - doc status : patch : default : target : 20 % project : default : target : 80 %","tags":"","loc":"page/development-resources/codecov.html"},{"title":"gccr.pl – JSON-Fortran","text":"Below is the source code for gccr.pl , which was downloaded from https://github.com/eel3/gccr on July 23, 2015. This script is used\nby the build.sh script to merge the code coverage\ninformation for the coverage report . #!/usr/bin/env perl # -*- coding: utf-8; tab-width: 8 -*- # vim: fileencoding=UTF-8 shiftwidth=8 softtabstop=8 tabstop=8 # # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. # # version 0.4.18 : eel3 : changed shebang, fixed indent, specified emacs/vim coding system. # version 0.4.17 : eel3 : fixed error occur when print the line matched /%[^%]/g # version 0.4.16 : eel3 : fixed parse error occur in line 10000 or later # version 0.4.15 : eel3 : avoided warnings caused by uninitialized variable # version 0.4.14 : eel3 : fixed line number indent size for over 99999 line # version 0.4.13 : eel3 : changed warning option # version 0.4.12 : eel3 : fixed problem that extra tab is output, and changed line number to be right-aligned # version 0.4.11 : Nick Groesz : fix potential divide by zero # version 0.4.10 : Nick Groesz : fixed summary in combined coverage, ignore function data, added copyright # version 0.4.9 : Nick Groesz : added combined reporting in print_summary(), changed usage text # version 0.4.8 : Nick Groesz : added -c option (combined coverage) # version 0.4.7 : Nick Groesz : fixed formatting, added comments # version 0.4.6 : Dickson Patton : fixed tagfile option, right justify counts # version 0.4.5 : Nick Groesz : list code generated with #define macros # version 0.4.4 : Dickson Patton : added tagfile option # version 0.4.3 : Nick Groesz : changed around internal data structures, start of version history use strict ; use warnings ; use Getopt::Long ; # prototypes sub read_args (); # read in command line arguments sub process_files (); # run through each file sub parse_execution_data (); # parse the data from each file sub print_results (); # print gcov data sub print_summary (); # print summary (similary to gcov's summary) sub print_usage (); # print gccr usage text our $tool_name = 'gccr' ; # name of script our $version = 'gccr (GCC) 0.4.18' ; # version of script our $copyright = 'Copyright (C) 2005 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. ' ; # copyright notice # internal data our @files ; # gcov file data # # File information: # file_number - ranges from 0 to NUMBER OF FILES SPECIFIED - 1 # $file[file_number]{'tag'} - user specified file tag # $file[file_number]{'name'} - name of file to be read and parsed # # $file[file_number[{'data'} contains parsed gcov data # # Line information: # line_number - corresponds to the line number of the GCOV file # and ranges from 1 to NUMBER OF LINES # $data{'line'}[line_number]{'type'} - type of line # Can be set to: # no_ex - non-executing code (gcov meta-data, header code, code that has been #ifdef'd out) # line - an executable line of code # branch - branch execution information # call - call execution information # # $data{'line'}[line_number]{'count'} - number of times an executable line, branch, or call was executed # $data{'line'}[line_number]{'raw'} - raw data straight from gcov file # this is only populated in the first file's data structure # $data{'line'}[line_number]{'line_num'} - line number in original source code # Execution information: # $data{'line_count'} - number of executable lines # $data{'execution_count'} - number of executed lines our $file_count = 0 ; # number of files read our $line_count = 0 ; # number of lines in gcov data files (should be the same for each file) our $executable_total = 0 ; # number of different executable lines across all files our $executed_total = 0 ; # number of different executable lines across all files that were executed # options our $opt_combined = 0 ; our $opt_help = 0 ; # help option our $opt_version = 0 ; # version option our @tag_files = (); # tagfile(s) option our $opt_nosummary = 0 ; # do not print summary read_args (); process_files (); print_results (); unless ( $opt_nosummary ) { print_summary (); } # Summary: read command line arguments: # Parameters: none # Return: none sub read_args () { unless ( GetOptions ( 'combined' => \\ $opt_combined , 'help' => \\ $opt_help , 'no-summary' => \\ $opt_nosummary , 'tagfile|file=s' => \\ @tag_files , 'version' => \\ $opt_version , ) ) { # if GetOptions returns FALSE, then incorrect options were specified # exit with error print_usage (); exit ( 1 ); } if ( $opt_help ) { print_usage (); exit ( 0 ); } if ( $opt_version ) { print \"$version\\n\" ; print \"$copyright\\n\" ; exit ( 0 ); } # if any number of tag files were specified, then we read tagfiles instead of command line arugments if ( scalar ( @tag_files )) { @files = & read_tagfiles ( @tag_files ); } else { # number of file arguments + number of tag arguments should equal an even number if ( @ARGV % 2 == 1 ) { print ( \"ERROR: file count does not match tag count\\n\" ); exit ( 1 ); } my $i = 0 ; while ( $ARGV [ $i ]) { push @files , { name => $ARGV [ $i ], tag => $ARGV [ $i + 1 ]}; $i += 2 ; } } $file_count = scalar ( @files ); if ( $file_count < 2 ) { print ( \"ERROR: at least two files must be specified\\n\" ); exit ( 1 ); } } # Summary: read tagfiles specifie dwith the -t option # Parameters: array of names of tagfiles # Return: array of name/tag hashes sub read_tagfiles ($) { my @tag_files = @_ ; my @files ; my $l = 0 ; # count of --tagfile=___ options my $m = 0 ; # count of line in the current tagfile foreach my $file ( @tag_files ) { $l ++ ; open ( TAGFILE , $file ) || die \"ERROR: on open of tagfile $l, $file: ($!)\\n\" ; while ( ) { $m ++ ; chomp $_ ; if ( /(^([^ ]+) *(.*)$)/ ) { push @files , { name => $2 , tag => $3 }; } else { die \"ERROR: invalid file-tag pair on line $m of tagfile $l\\n\" ; } } close ( TAGFILE ); } return ( @files ); } # Summary: run through all the gcov files and call the parsing function # Parameters: none # Return: none sub process_files () { # the first file is used to gather raw data $files [ 0 ]{ 'data' } = parse_execution_data ( $files [ 0 ]{ 'name' }, 1 ); for ( my $i = 1 ; $i < $file_count ; $i ++ ) { $files [ $i ]{ 'data' } = parse_execution_data ( $files [ $i ]{ 'name' }, 0 ); } } # Summary: parse the gcov file, populating the %data structure # Parameters: name of file to parse | boolean indicating whether raw (original gcov) data should be saved # save_raw is set to 1 on the first file parse and set to zero thereafter # Returns: reference to data hash sub parse_execution_data () { my ( $file , $save_raw ) = @_ ; my %data ; $data { 'line_count' } = 0 ; # number of executable lines in file $data { 'execution_count' } = 0 ; # number of lines that were executed in file stat ( $file ); if ( ! ( - r _ )) { die ( \"ERROR: cannot read file: $file\\n\" ); } if ( ! ( - f _ )) { die ( \"ERROR: not a plain file: $file\\n\" ); } open ( FILE_HANDLE , $file ) || die ( \"ERROR: cannot open file $file: $!\" ); my $file_line_num = 0 ; while ( ) { my $line = $_ ; $file_line_num ++ ; chomp $line ; if ( $line =~ /^\\s+-:\\s*(\\d+):(.*)/ ) { # line is gcov preamble or non-executing code my $line_num = $1 ; my $raw = $2 ; $data { 'line' }[ $file_line_num ]{ 'type' } = 'no_ex' ; $data { 'line' }[ $file_line_num ]{ 'line_num' } = $line_num ; if ( $save_raw ) { $data { 'line' }[ $file_line_num ]{ 'raw' } = $2 ; } } elsif ( $line =~ /^\\s+#####:\\s*(\\d+):(.*)/ ) { # line was not executed my $line_num = $1 ; my $raw = $2 ; $data { 'line' }[ $file_line_num ]{ 'count' } = 0 ; $data { 'line' }[ $file_line_num ]{ 'type' } = 'code' ; $data { 'line' }[ $file_line_num ]{ 'line_num' } = $line_num ; $data { 'line_count' } ++ ; if ( $save_raw ) { $data { 'line' }[ $file_line_num ]{ 'raw' } = $raw ; } } elsif ( $line =~ /^\\s*(\\d+):\\s*(\\d+):(.*)/ ) { # line was executed my $count = $1 ; my $line_num = $2 ; my $raw = $3 ; $data { 'line' }[ $file_line_num ]{ 'count' } = $count ; $data { 'line' }[ $file_line_num ]{ 'type' } = 'code' ; $data { 'line' }[ $file_line_num ]{ 'line_num' } = $line_num ; $data { 'line_count' } ++ ; $data { 'execution_count' } ++ ; if ( $save_raw ) { $data { 'line' }[ $file_line_num ]{ 'raw' } = $raw ; } } elsif ( $line =~ /^branch\\s+(\\d+)/ ) { # line contains branch execution information my $branch_num = $1 ; $data { 'line' }[ $file_line_num ]{ 'num' } = $branch_num ; if ( $line =~ /^branch\\s+\\d+\\s+never executed/ ) { $data { 'line' }[ $file_line_num ]{ 'count' } = 0 ; $data { 'line' }[ $file_line_num ]{ 'type' } = 'branch' ; } elsif ( $line =~ /^branch\\s+\\d+\\s+taken (\\d+)%/ ) { $data { 'line' }[ $file_line_num ]{ 'count' } = $1 ; $data { 'line' }[ $file_line_num ]{ 'type' } = 'branch' ; } if ( $save_raw ) { $data { 'line' }[ $file_line_num ]{ 'raw' } = $line ; } } elsif ( $line =~ /^call\\s+(\\d+)/ ) { # line contains call execution information my $call_num = $1 ; $data { 'line' }[ $file_line_num ]{ 'num' } = $call_num ; if ( $line =~ /^call\\s+\\d+\\s+never executed/ ) { $data { 'line' }[ $file_line_num ]{ 'count' } = 0 ; $data { 'line' }[ $file_line_num ]{ 'type' } = 'call' ; } elsif ( $line =~ /^call\\s+\\d+\\s+returns (\\d+)%/ ) { $data { 'line' }[ $file_line_num ]{ 'count' } = $1 ; $data { 'line' }[ $file_line_num ]{ 'type' } = 'call' ; } if ( $save_raw ) { $data { 'line' }[ $file_line_num ]{ 'raw' } = $line ; } } elsif ( $line =~ /^function/i ) { # function data is ignored } else { # line could not be parsed print ( \"ERROR: cannot parse line $file_line_num in file $file\\n Is this a valid gcov file?\\n\" ); exit ( 1 ); } } close ( FILE_HANDLE ); # check to see if we should save an overall line count (common to all gcov files) if ( $save_raw ) { $line_count = $file_line_num ; } return ( \\ %data ); } # Summary: print interpolated gcov information # Parameters: none # Return: none sub print_results () { my $ftab = ' ' ; my $p_op = ( $line_count <= 99999 ) ? '%5d' : '%13d' ; for ( my $line_i = 1 ; $line_i <= $line_count ; $line_i ++ ) { my $raw_printed = 0 ; # boolean flag to print out the line slurped in from the gcov file my $count_sum = 0 ; # sum of executions across all files for this one line- used for combined coverage reporting my $never_exec = 1 ; # boolean flag that is set to 0 when the current line is executed or executable # in any file. used in combined coverage reporting. my $first_code_line_executed = 0 ; # boolean flag that indicates whether this is the first unique # executed line of code to be found among the gcov files for ( my $file_i = 0 ; $file_i < $file_count ; $file_i ++ ) { # Note that each file is cycled through for every line even if just the raw # data from the first file that ends up being printed. This is because the same # line may be non-executing in one file and executable in another file (because code # may be ifdef'd out). my $type = $files [ $file_i ]{ 'data' }{ 'line' }[ $line_i ]{ 'type' }; no warnings 'uninitialized' ; # XXX: remove warining for $type if ( $type eq 'no_ex' ) { # non-executing code unless ( $raw_printed || $opt_combined ) { printf ( \"$ftab-:$p_op:%s\\n\" , $files [ $file_i ]{ 'data' }{ 'line' }[ $line_i ]{ 'line_num' }, $files [ 0 ]{ 'data' }{ 'line' }[ $line_i ]{ 'raw' }); $raw_printed = 1 ; } # nothing additional is printed for non-executing code } elsif ( $type eq 'code' ) { # code that is executable if ( $never_exec ) { # this code is exectuable, so we indicate that in the never_exec flag $never_exec = 0 ; # we only want the number of UNIQUE lines across files that are executable # in the executable_total flag, so this is only incremented once for all # identical lines across each file $executable_total ++ ; } unless ( $raw_printed || $opt_combined ) { printf ( \"$ftab $p_op:%s\\n\" , $files [ 0 ]{ 'data' }{ 'line' }[ $line_i ]{ 'line_num' }, $files [ 0 ]{ 'data' }{ 'line' }[ $line_i ]{ 'raw' }); $raw_printed = 1 ; } my $count = $files [ $file_i ]{ 'data' }{ 'line' }[ $line_i ]{ 'count' }; if ( $opt_combined ) { $count_sum += $count ; if ( $first_code_line_executed == 0 && $count > 0 ) { $executed_total ++ ; $first_code_line_executed = 1 ; } } else { if ( $count == 0 ) { print ' ####' ; } else { unless ( $first_code_line_executed ) { # update the unique count of code lines executed # across all gcov files $executed_total ++ ; $first_code_line_executed = 1 ; } my $padding = 9 ; $padding -= length ( $count ); printf ( \"%*s%d\" , $padding , ' ' , $count ); } printf ( \":$p_op: \" , $files [ $file_i ]{ 'data' }{ 'line' }[ $line_i ]{ 'line_num' }); print \"$files[$file_i]{'tag'}\\n\" ; } } elsif ( $type eq 'branch' ) { # branch information my $count = $files [ $file_i ]{ 'data' }{ 'line' }[ $line_i ]{ 'count' }; if ( $opt_combined ) { $count_sum += $count ; } else { if ( $count == 0 ) { print \"branch $files[$file_i]{'data'}{'line'}[$line_i]{'num'} never executed:$files[$file_i]{'tag'}\\n\" ; } else { print \"branch $files[$file_i]{'data'}{'line'}[$line_i]{'num'} taken $count%:$files[$file_i]{'tag'}\\n\" ; } } } elsif ( $type eq 'call' ) { # call information my $count = $files [ $file_i ]{ 'data' }{ 'line' }[ $line_i ]{ 'count' }; if ( $opt_combined ) { $count_sum += $count ; } else { if ( $count == 0 ) { print \"call $files[$file_i]{'data'}{'line'}[$line_i]{'num'} never executed:$files[$file_i]{'tag'}\\n\" ; } else { print \"call $files[$file_i]{'data'}{'line'}[$line_i]{'num'} returns $count%:$files[$file_i]{'tag'}\\n\" ; } } } } if ( $opt_combined ) { # if the combined coverage flag is set then no information is printed in the above for loop # count information is summed into $count_sum and printed on a single line my $type = $files [ 0 ]{ 'data' }{ 'line' }[ $line_i ]{ 'type' }; no warnings 'uninitialized' ; # XXX: remove warining for $type if ( $type eq 'no_ex' || $type eq 'code' ) { # line is either non-executable or executable code if ( $never_exec ) { # code line is not executable in any file printf ( \"$ftab-:$p_op:%s\\n\" , $files [ 0 ]{ 'data' }{ 'line' }[ $line_i ]{ 'line_num' }, $files [ 0 ]{ 'data' }{ 'line' }[ $line_i ]{ 'raw' }); } else { # line is executable in at least one file if ( $count_sum == 0 ) { print ' #####' ; } else { my $padding = 9 ; $padding -= length ( $count_sum ); printf ( \"%*s%d\" , $padding , ' ' , $count_sum ); } printf ( \":$p_op:%s\\n\" , $files [ 0 ]{ 'data' }{ 'line' }[ $line_i ]{ 'line_num' }, $files [ 0 ]{ 'data' }{ 'line' }[ $line_i ]{ 'raw' }); } } elsif ( $type eq 'branch' ) { # branch information if ( $count_sum == 0 ) { print \"branch $files[0]{'data'}{'line'}[$line_i]{'num'} never executed\\n\" ; } else { my $percentage = $count_sum / $file_count ; print \"branch $files[0]{'data'}{'line'}[$line_i]{'num'} taken $percentage%\\n\" ; } } elsif ( $type eq 'call' ) { # call information if ( $count_sum == 0 ) { print \"call $files[0]{'data'}{'line'}[$line_i]{'num'} never executed\\n\" ; } else { my $percentage = $count_sum / $file_count ; print \"call $files[0]{'data'}{'line'}[$line_i]{'num'} returns $percentage%\\n\" ; } } } } } # Summary: prints the line execution percentages for each file and a percentage for all files combined # Parameters: none # Return: none sub print_summary () { for ( my $file_i = 0 ; $file_i < $file_count ; $file_i ++ ) { my $file_line_count = $files [ $file_i ]{ 'data' }{ 'line_count' }; my $percentage ; if ( $file_line_count ) { $percentage = ( $files [ $file_i ]{ 'data' }{ 'execution_count' } / $file_line_count ) * 100 ; } else { $percentage = 0 ; } $percentage = sprintf ( '%.2f' , $percentage ); print \"$percentage% of $file_line_count lines executed on target $files[$file_i]{'tag'}\\n\" ; } my $overall_percentage ; if ( $executable_total ) { $overall_percentage = ( $executed_total / $executable_total ) * 100 ; } else { $overall_percentage = 0 ; } $overall_percentage = sprintf ( '%.2f' , $overall_percentage ); print \"$overall_percentage% of $executable_total lines executed across all files\\n\" ; } # Summary: print tool usage information # Parameters: none # Return: none sub print_usage () { print << END_USAGE ; Usage: ./$tool_name [options] [file name] [target id]... Use $tool_name to compare gcov files generated on different platforms or targets. -h, --help Print this help, then exit -v, --version Print version number, then exit Input Options: -t, --tagfile Take file-tag assignments from a file, not from command-line Ouput Options: -c, --combined Print combined coverage -n, --no-summmary Do not print summary END_USAGE }","tags":"","loc":"page/development-resources/gccr.html"},{"title":"Coverage Analysis – JSON-Fortran","text":"Coverage analysis Coverage analysis of json_string_utilities.F90 Unexecuted procedures Executed procedures Coverage analysis of json_value_module.F90 Unexecuted procedures Executed procedures Coverage analysis of json_file_module.F90 Unexecuted procedures Executed procedures Coverage analysis The following report was automatically generated from gcov output by the FoBiS.py Fortran build\ntool. gccr.pl was used to\nmerge gcov coverage\nreports, and can be obtained at https://github.com/eel3/gccr . Any\nprocedures surrounded by double square brackets below are internal\nprocedures and do not have their own documentation page–documentation\nfor these procedures is included in the documentation of the scope in\nwhich they are defined. If procedure coverage is at 100%, also have a look at the Codecov.io coverage suggestions . Coverage analysis of json_string_utilities.F90 Metrics Number of executable lines 337 Number of executed lines 311 92% Number of unexecuted lines 26 8% Average hits per executed line 243573 Number of procedures 14 Number of executed procedures 12 86% Number of unexecuted procedures 2 14% Average hits per executed procedure 126995 Unexecuted procedures function to_uni , line 668 function to_uni_vec , line 687 Executed procedures subroutine unescape_string : tested 1210117 times subroutine escape_string : tested 206118 times subroutine string_to_integer : tested 75154 times subroutine string_to_real : tested 29931 times subroutine integer_to_string : tested 764 times subroutine replace_string : tested 560 times function valid_json_hex : tested 471 times subroutine real_to_string : tested 281 times subroutine compact_real_string : tested 268 times function decode_rfc6901 : tested 120 times function encode_rfc6901 : tested 96 times function lowercase_string : tested 64 times Report generated by FoBiS.py Coverage analysis of json_value_module.F90 Metrics Number of executable lines 4021 Number of executed lines 3490 87% Number of unexecuted lines 531 13% Average hits per executed line 2220377 Number of procedures 156 Number of executed procedures 150 96% Number of unexecuted procedures 6 4% Average hits per executed procedure 440341 Unexecuted procedures subroutine get_current_line_from_file_sequential , line 10032 subroutine wrap_json_info_by_path , line 1677 subroutine wrap_json_matrix_info_by_path , line 1912 subroutine wrap_json_value_create_logical , line 10272 subroutine wrap_json_value_get_child_by_name , line 5876 subroutine wrap_json_value_remove_if_present , line 2998 Executed procedures subroutine pop_char : tested 57802621 times subroutine destroy_json_data : tested 2170912 times subroutine parse_string : tested 1195115 times subroutine json_value_create : tested 989400 times subroutine json_info : tested 988247 times subroutine json_value_add_member : tested 986799 times subroutine to_string : tested 775339 times function wrap_json_valid_path : tested 264829 times subroutine push_char : tested 210976 times subroutine write_it : tested 204936 times subroutine parse_number : tested 104983 times subroutine to_integer : tested 75205 times function string_to_int : tested 75063 times subroutine to_object : tested 61319 times subroutine to_array : tested 31417 times subroutine to_real : tested 30086 times function string_to_dble : tested 29921 times subroutine to_logical : tested 14971 times subroutine parse_for_chars : tested 14960 times function json_failed : tested 2740 times function json_count : tested 2076 times subroutine json_clear_exceptions : tested 2049 times subroutine json_initialize : tested 1877 times function name_strings_equal : tested 1567 times subroutine json_prepare_parser : tested 1509 times subroutine json_parse_end : tested 1509 times subroutine json_parse_string : tested 1492 times function name_equal : tested 1409 times subroutine wrap_json_get_path : tested 612 times subroutine json_value_get_child_by_name : tested 556 times subroutine json_value_rename : tested 545 times subroutine json_value_get_child_by_index : tested 443 times function json_is_vector : tested 365 times subroutine add_to_path : tested 330 times subroutine json_get_by_path_default : tested 323 times subroutine json_get_by_path : tested 306 times subroutine json_get_real : tested 306 times subroutine json_throw_exception : tested 264 times subroutine get_real_from_array : tested 229 times subroutine json_value_to_string : tested 211 times subroutine json_get_string : tested 198 times subroutine json_check_children_for_duplicate_keys : tested 191 times subroutine duplicate_key_func : tested 191 times subroutine json_get_path : tested 188 times subroutine json_value_create_real : tested 159 times subroutine json_value_get_child : tested 150 times subroutine json_value_add_real : tested 148 times subroutine json_value_create_integer : tested 140 times subroutine json_value_add_integer : tested 127 times subroutine json_get_integer : tested 117 times subroutine json_print_to_unit : tested 89 times subroutine to_null : tested 84 times subroutine destroy_json_core : tested 70 times subroutine json_value_create_string : tested 70 times subroutine wrap_json_get_string_by_path : tested 63 times subroutine json_traverse : tested 62 times subroutine json_value_remove : tested 56 times subroutine json_value_add_string : tested 56 times subroutine json_create_by_path : tested 54 times subroutine json_get_integer_by_path : tested 54 times subroutine json_value_insert_after : tested 52 times subroutine json_value_create_array : tested 52 times subroutine json_check_all_for_duplicate_keys : tested 51 times subroutine json_value_replace : tested 47 times subroutine get_int_from_array : tested 47 times subroutine flag_not_found : tested 43 times subroutine json_get_logical : tested 42 times subroutine json_get_string_by_path : tested 42 times subroutine json_check_for_errors : tested 41 times subroutine json_value_create_object : tested 34 times subroutine json_get_by_path_rfc6901 : tested 28 times subroutine get_logical_from_array : tested 28 times subroutine json_get_real_by_path : tested 24 times subroutine json_value_create_logical : tested 22 times subroutine json_value_validate : tested 20 times subroutine json_get_string_vec_by_path : tested 20 times subroutine json_get_logical_by_path : tested 19 times subroutine get_chars_from_array : tested 19 times subroutine json_value_add_logical : tested 18 times subroutine json_parse_file : tested 17 times subroutine get_string_lengths : tested 16 times subroutine json_matrix_info_by_path : tested 16 times function json_value_is_child_of : tested 16 times subroutine json_get_real_vec : tested 16 times subroutine json_matrix_info : tested 15 times subroutine json_value_add_real_vec : tested 15 times subroutine json_get_real_vec_by_path : tested 15 times subroutine json_get_alloc_string_vec_by_path : tested 15 times subroutine json_get_integer_vec : tested 14 times subroutine convert : tested 13 times subroutine wrap_json_get_alloc_string_vec_by_path : tested 13 times subroutine get_chars_from_array : tested 12 times subroutine json_string_info : tested 11 times subroutine swap_pointers : tested 11 times subroutine json_update_string : tested 11 times subroutine json_clone : tested 10 times subroutine json_add_string_by_path : tested 10 times subroutine json_get_integer_vec_by_path : tested 10 times subroutine json_add_real_by_path : tested 9 times subroutine json_rename_by_path : tested 9 times subroutine json_get_by_path_jsonpath_bracket : tested 9 times subroutine annotate_invalid_json : tested 9 times subroutine json_value_swap : tested 8 times subroutine json_update_real : tested 7 times function json_valid_path : tested 7 times subroutine json_info_by_path : tested 6 times subroutine json_add_string_vec_by_path : tested 6 times subroutine json_print_to_console : tested 6 times subroutine json_print_error_message : tested 6 times subroutine json_add_real_vec_by_path : tested 5 times subroutine json_value_add_string_vec : tested 5 times subroutine json_print_to_filename : tested 5 times subroutine json_get_logical_vec : tested 5 times subroutine json_get_string_vec : tested 5 times subroutine json_value_reverse : tested 4 times subroutine is_child_of_callback : tested 4 times subroutine json_add_member_by_path : tested 4 times subroutine json_add_integer_by_path : tested 4 times subroutine json_add_logical_by_path : tested 4 times subroutine json_get_logical_vec_by_path : tested 4 times subroutine json_get_alloc_string_vec : tested 4 times subroutine json_value_remove_if_present : tested 3 times subroutine json_update_logical : tested 3 times subroutine json_update_real32 : tested 3 times subroutine json_update_integer : tested 3 times subroutine wrap_json_add_string_vec_by_path : tested 3 times subroutine json_value_add_integer_vec : tested 3 times subroutine json_get_parent : tested 3 times subroutine json_get_real32_by_path : tested 3 times subroutine json_get_real32_vec_by_path : tested 3 times subroutine get_current_line_from_file_stream : tested 3 times subroutine json_value_insert_after_child_by_index : tested 2 times subroutine json_add_real32_by_path : tested 2 times subroutine json_add_integer_vec_by_path : tested 2 times subroutine json_add_logical_vec_by_path : tested 2 times subroutine json_add_real32_vec_by_path : tested 2 times subroutine json_value_add_logical_vec : tested 2 times subroutine json_value_create_null : tested 2 times function initialize_json_core : tested 1 times subroutine json_add_string_vec_by_path_value_ascii : tested 1 times subroutine json_add_string_vec_by_path_path_ascii : tested 1 times subroutine json_value_add_real32 : tested 1 times subroutine json_value_add_real32_vec : tested 1 times subroutine json_value_add_null : tested 1 times subroutine json_get_next : tested 1 times subroutine json_get_previous : tested 1 times subroutine json_get_tail : tested 1 times subroutine json_get_real32 : tested 1 times subroutine json_get_real32_vec : tested 1 times subroutine json_value_create_real32 : tested 1 times Report generated by FoBiS.py Coverage analysis of json_file_module.F90 Metrics Number of executable lines 592 Number of executed lines 532 90% Number of unexecuted lines 60 10% Average hits per executed line 99 Number of procedures 65 Number of executed procedures 59 91% Number of unexecuted procedures 6 9% Average hits per executed procedure 114 Unexecuted procedures function initialize_json_file , line 570 function initialize_json_file_from_string , line 651 function initialize_json_file_from_string_v2 , line 698 function initialize_json_file_v2 , line 616 subroutine json_file_variable_matrix_info , line 1082 subroutine wrap_assign_string_to_json_file , line 1240 Executed procedures subroutine json_file_destroy : tested 2744 times function json_file_failed : tested 1824 times subroutine json_file_load_from_string : tested 1435 times subroutine initialize_json_core_in_file : tested 254 times subroutine json_file_print_to_string : tested 209 times subroutine finalize_json_file : tested 39 times subroutine json_file_get_string : tested 35 times subroutine json_file_print_to_unit : tested 27 times subroutine json_file_get_integer : tested 25 times subroutine json_file_load : tested 15 times subroutine json_file_get_real : tested 15 times subroutine json_file_get_logical : tested 14 times subroutine json_file_get_object : tested 10 times subroutine json_file_get_real_vec : tested 10 times subroutine json_file_get_alloc_string_vec : tested 8 times subroutine json_file_add : tested 8 times subroutine json_file_add_string_vec : tested 8 times subroutine json_file_print_to_console : tested 7 times subroutine json_file_check_for_errors : tested 6 times subroutine json_file_get_string_vec : tested 6 times subroutine json_file_print_error_message : tested 5 times subroutine json_file_add_string : tested 5 times subroutine set_json_core_in_file : tested 4 times function json_file_valid_path : tested 4 times subroutine json_file_rename : tested 4 times subroutine json_file_update_string : tested 4 times subroutine assign_string_to_json_file : tested 3 times function json_file_valid_path_op : tested 3 times subroutine json_file_update_real : tested 3 times subroutine json_file_move_pointer : tested 2 times subroutine json_file_print_to_filename : tested 2 times subroutine json_file_variable_info : tested 2 times subroutine json_file_get_root : tested 2 times subroutine assign_json_file : tested 2 times subroutine json_file_get_integer_vec : tested 2 times subroutine json_file_get_logical_vec : tested 2 times subroutine json_file_add_real : tested 2 times subroutine json_file_add_real_vec : tested 2 times subroutine json_file_update_logical : tested 2 times subroutine json_file_remove : tested 2 times subroutine json_file_clear_exceptions : tested 1 times subroutine get_json_core_in_file : tested 1 times subroutine json_file_nullify : tested 1 times subroutine assign_json_file_to_string : tested 1 times subroutine json_file_get_real32 : tested 1 times subroutine json_file_get_real32_vec : tested 1 times subroutine json_file_add_object : tested 1 times subroutine json_file_add_integer : tested 1 times subroutine json_file_add_integer_vec : tested 1 times subroutine json_file_add_real32 : tested 1 times subroutine json_file_add_real32_vec : tested 1 times subroutine json_file_add_logical : tested 1 times subroutine json_file_add_logical_vec : tested 1 times subroutine wrap_json_file_add_string_vec : tested 1 times subroutine json_file_add_string_vec_path_ascii : tested 1 times subroutine json_file_add_string_vec_vec_ascii : tested 1 times subroutine json_file_update_integer : tested 1 times subroutine json_file_update_real32 : tested 1 times subroutine json_file_traverse : tested 1 times Report generated by FoBiS.py","tags":"","loc":"page/development-resources/json_module.F90.html"},{"title":"Release Checklist – JSON-Fortran","text":"When tagging a new release please follow this checklist so that the\ndocumentation will be updated correctly, and version strings will\nremain accurate. Release Checklist Make sure you are working from the master branch: git checkout master Update the CHANGELOG.md Ensure that the changes listed under Unreleased are up\n to date and accurate. Look at the latest changes committed to GitHub since the\n last release ,\n 9.0.0. This will only be accurate if you have\n not yet updated the project version in cmake. If you have updated\n the product version in cmake and run cmake (and therefore .VERSION ) then edit the URL manually to view the\n changes. Run the github_changelog_generator as follows, and compare the output to the unreleased section of the CHANGELOG.md : github_changelog_generator --user jacobwilliams --project json-fortran -o Unreleased.md\n --unreleased-only --bugs-label \"**Fixed issues:**\"\n --enhancement-label \"**Enhancements:**\" --issues-label\n \"**Fixed issues:**\" and make sure that you have a\n 16-digit GitHub token stored in the environment variable CHANGELOG_GITHUB_TOKEN . Compare generated Unreleased.md to the “Unreleased” section of CHANGELOG.md and make updates as needed. Rename the “Unreleased” section to the new version number Copy the “Unreleased” section header and “Complete\n Changeset” link line and insert it just below the TOC In the newly inserted “Complete Changeset” URL replace the\n old version number with the new version number Rename the lower “Unreleased” section (with all the\n changes) to the current version Replace HEAD in the header URL with the new version\n number Replace HEAD in the “Complete Changeset” link with the\n new version number. Insert the new version section in the TOC just below the\n “Unreleased” entry Add CHANGELOG.md to the git index: git add CHANGELOG.md Add an entry in pages/releases/index.md under the “Past\n Releases” heading Copy/paste the most recent one listed and replace all\n occurrences of the old version string with the new version\n string Add pages/releases/index.md to the git index: git add pages/releases/index.md Update the version string in remaining files requiring manual edits: Edit the product version in CMake Run cmake to generate the .VERSION file (or manually update this file if not running CMake) Edit the CMake example on line 145 of README.md Edit the json_fortran_version string in json_module.F90 Add these files to the git index: git add .VERSION README.md ./src/json_module.F90 Commit the changes to the master branch: git commit Create the tag: git tag Note: for some reason, using GitHub to tag a project means that the tag doesn’t show up when you git describe the project. Tagging from the command line makes git describe work as expected. GitHub Actions will publish the documentation for the\n latest tag to\n https://jacobwilliams.github.io/json-fortran/prev/ new_ver / if all\n goes according to plan Push tags and master to GitHub: git push --tags origin master Draft and publish a new GitHub Release corresponding to the new version Update the Homebrew formula Fork the Homebrew repository Change to your local Homebrew repository: cd $(brew\n --repository)/Library/Formula Add your fork as a pushable remote: git remote add\n YOUR_USERNAME https://github.com/YOUR_USERNAME/homebrew.git Make sure you’re on the master branch: git checkout master Make sure everything is up to date: brew update (this calls git pull ) Create a new branch from the latest master branch with git\n checkout -b YOUR_BRANCH_NAME origin/master Edit the json-fortran.rb formula with brew edit\n json-fortran Do NOT change anything other than the URL and the SHA256\n checksum at the top of the formula. These should be changed to\n correspond to the new version of the compressed tarball\n available on newly minted latest release page Test the changes to make sure that they will be accepted: brew audit --strict --online json-fortran brew rm json-fortran brew install -v json-fortran brew test -v json-fortran Add json-fortran.rb to the index ( git add json-fortran.rb ) Commit your changes with the correct commit message: git\n commit -m \"json-fortran \" Push changes to your fork: git push --set-upstream\n YOUR_USERNAME YOUR_BRANCH_NAME Go to https://github.com/Homebrew/homebrew and submit a pull\n request","tags":"","loc":"page/development-resources/release-checklist.html"},{"title":"Official Releases – JSON-Fortran","text":"Official Releases Latest Stable Release Past Releases Development Version Changes Between Releases Change Log Unreleased 9.0.0 (2024-06-11) 8.5.2 (2024-05-27) 8.5.1 (2024-05-26) 8.5.0 (2024-05-25) 8.4.0 (2024-03-06) 8.3.0 (2022-05-07) 8.2.5 (2021-08-17) 8.2.4 (2021-08-15) 8.2.3 (2020-06-05) 8.2.2 (2020-06-05) 8.2.1 (2020-01-02) 8.2.0 (2020-08-16) 8.1.0 (2020-06-21) 8.0.0 (2020-04-04) 7.1.0 (2019-06-23) 7.0.0 (2019-01-26) 6.11.0 (2019-01-19) 6.10.0 (2019-10-20) 6.9.0 (2018-07-29) 6.8.0 (2018-07-19) 6.7.0 (2018-07-10) 6.6.0 (2018-07-01) 6.5.0 (2018-06-23) 6.4.0 (2018-06-10) 6.3.0 (2018-04-20) 6.2.0 (2018-03-10) 6.1.0 (2017-11-05) 6.0.0 (2017-08-24) 5.3.0 (2017-04-07) 5.2.0 (2017-03-05) 5.1.0 (2016-08-14) 5.0.2 (2016-06-11) 5.0.1 (2016-06-11) 5.0.0 (2016-05-09) 4.3.0 (2015-12-05) 4.2.0 (2015-08-03) 4.1.1 (2015-05-27) 4.1.0 (2015-05-05) 4.0.0 (2015-03-16) 3.1.0 (2015-02-28) 3.0.0 (2015-01-18) 2.0.0 (2014-12-27) 1.0.0 (2014-06-23) Official Releases This is where to find the documentation corresponding to an official,\ntagged release. If you are looking for the most current documentation\nof the master branch, please head back to the main page . Latest Stable Release Documentation: 9.0.0 Download: https://github.com/jacobwilliams/json-fortran/releases/latest Past Releases Note: There is currently no way to navigate back to the general/master\ndocumentation from the documentation for official releases other than\nusing the browser’s back button. Feel free to bookmark this page, or\nthe main project page for convenient navigation. 9.0.0 ( FORD generated documentation) Download 8.5.2 ( FORD generated documentation) Download 8.5.1 ( FORD generated documentation) Download 8.5.0 ( FORD generated documentation) Download 8.4.0 ( FORD generated documentation) Download 8.3.0 ( FORD generated documentation) Download 8.2.5 ( FORD generated documentation) Download 8.2.4 ( FORD generated documentation) Download 8.2.3 ( FORD generated documentation) Download 8.2.2 ( FORD generated documentation) Download 8.2.1 ( FORD generated documentation) Download 8.2.0 ( FORD generated documentation) Download 8.1.0 ( FORD generated documentation) Download 8.0.0 ( FORD generated documentation) Download 7.1.0 ( FORD generated documentation) Download 7.0.0 ( FORD generated documentation) Download 6.11.0 ( FORD generated documentation) Download 6.10.0 ( FORD generated documentation) Download 6.9.0 ( FORD generated documentation) Download 6.8.0 ( FORD generated documentation) Download 6.7.0 ( FORD generated documentation) Download 6.6.0 ( FORD generated documentation) Download 6.5.0 ( FORD generated documentation) Download 6.4.0 ( FORD generated documentation) Download 6.3.0 ( FORD generated documentation) Download 6.2.0 ( FORD generated documentation) Download 6.1.0 ( FORD generated documentation) Download 6.0.0 ( FORD generated documentation) Download 5.3.0 ( FORD generated documentation) Download 5.2.0 ( FORD generated documentation) Download 5.1.0 ( FORD generated documentation) Download 5.0.2 ( FORD generated documentation) Download 5.0.1 ( FORD generated documentation) Download 5.0.0 ( FORD generated documentation) Download 4.3.0 ( FORD generated documentation) Download 4.2.0 ( FORD generated documentation) Download 4.1.1 ( ROBODoc generated documentation) Download 4.1.0 ( ROBODoc generated documentation) Download 4.0.0 ( ROBODoc generated documentation) Download 3.1.0 ( ROBODoc generated documentation) Download 3.0.0 ( ROBODoc generated documentation) Download 2.0.0 ( ROBODoc generated documentation) Download 1.0.0 ( ROBODoc generated documentation) Download Development Version Documentation for the latest development version may be found at https://jacobwilliams.github.io/json-fortran/prev/9.0.0/index.html or generated locally using the build.sh build\nscript. Changes Between Releases Included below is the changelog–a list of significant changes\nimplemented between each release. Change Log Table of Contents Change Log Unreleased 9.0.0 (2024-06-11) 8.5.2 (2024-05-27) 8.5.1 (2024-05-26) 8.5.0 (2024-05-25) 8.4.0 (2024-03-06) 8.3.0 (2022-05-07) 8.2.5 (2021-08-17) 8.2.4 (2021-08-15) 8.2.3 (2021-06-05) 8.2.2 (2021-06-05) 8.2.1 (2021-01-02) 8.2.0 (2020-08-16) 8.1.0 (2020-06-21) 8.0.0 (2020-04-04) 7.1.0 (2019-06-23) 7.0.0 (2019-01-26) 6.11.0 (2019-01-19) 6.10.0 (2019-10-20) 6.9.0 (2018-07-29) 6.8.0 (2018-07-19) 6.7.0 (2018-07-10) 6.6.0 (2018-07-01) 6.5.0 (2018-06-23) 6.4.0 (2018-06-10) 6.3.0 (2018-04-20) 6.2.0 (2018-03-10) 6.1.0 (2017-11-05) 6.0.0 (2017-08-24) 5.3.0 (2017-04-07) 5.2.0 (2017-03-05) 5.1.0 (2016-08-14) 5.0.2 (2016-06-11) 5.0.1 (2016-06-11) 5.0.0 (2016-05-09) 4.3.0 (2015-12-05) 4.2.0 (2015-08-03) 4.1.1 (2015-05-27) 4.1.0 (2015-05-05) 4.0.0 (2015-03-16) 3.1.0 (2015-02-28) 3.0.0 (2015-01-18) 2.0.0 (2014-12-27) 1.0.0 (2014-06-23) Unreleased Complete Changeset 9.0.0 (2024-06-11) Complete Changeset or Download v9.0.0 Enhancements: By default, the JSON pointer in json_file is now destroyed before loading. This is to prevent a memory leak if the type is used later to load another file. #561 #562 ( jacobwilliams ) Also added a new option destroy_pointer to the json_file load routines, which can be set to False to get the old behavior (not to destroy it). #561 #562 ( jacobwilliams ) Added add a new nullify_pointer option to the json_file constructor (default is True) ( jacobwilliams ) #564 #566 Updates for the CI and unit tests. Now testing with FPM, and running all tests with valgrind to check for memory leaks. #563 #565 #568 ( jacobwilliams ) Added an optional allow_trailing_comma argument to the initialize routines (default is True). If set to False, this disallows extra trailing commas in arrays and objects. #569 #570 ( jacobwilliams ) 8.5.2 (2024-05-27) Complete Changeset or Download v8.5.2 Bug Fixes: Fixed a CMake bug where the package version was not set correctly, which caused the CMake configuration files to be saved to a folder with blank version name. #560 ( timfelle ) 8.5.1 (2024-05-26) Complete Changeset or Download v8.5.1 Bug Fixes: Fixed a bug when setting JSONFORTRAN_STATIC_LIBRARY_ONLY to False. Also restored some of the original CMake settings from 8.4.0. Specifically, the tests are enabled by default, and both the shared and static libraries are built by default. #558 #559 ( jacobwilliams ) 8.5.0 (2024-05-25) Complete Changeset or Download v8.5.0 Enhancements: Various CMake updates: Only installing if json-fortran is the top level project. Added a library alias so that json fortran can be included with find_package , fetch_content , and add_subdirectory easily. #526 #527 , #528 , #529 #556 ( K20shores ) Fixed compilation with Ninja and Intel OneAPI ifx compiler, and added some CMake options #557 ( lmdiazangulo ) Note that the CMake minimum version is now 3.18 . Added a new unit test. #546 #547 ( jacobwilliams ) Various CI and Readme updates. Bug Fixes: Fixed a bug when IEEE floating-point rounding mode was set to IEEE_DOWN . #545 ( amanotk ) 8.4.0 (2024-03-06) Complete Changeset or Download v8.4.0 Enhancements: Minor updates for readme and documentation #521 ( zmoon ) Updates for unit tests #536 #543 ( gha3mi , jacobwilliams ) Bug Fixes: Fixed a bug where the library would not compile if using REAL128 kind #550 ( jacobwilliams ) Fixes to GitHub Actions CI #535 ( jacobwilliams ) 8.3.0 (2022-05-07) Complete Changeset or Download v8.3.0 Enhancements: Added procedure to query version of json-fortran #505 #512 #516 ( jacobwilliams ) Updates to the CI #509 #508 ( jacobwilliams ) Add information on conda-forge distribution #506 ( awvwgk ) #507 Updated CMake to export include directories with target #504 #503 ( awvwgk ) Bug Fixes: Fixed a minor standards violation #510 #511 ( jacobwilliams ) Minor changes to work around issues with nvfortran compiler #496 ( vyu16 ) 8.2.5 (2021-08-17) Complete Changeset or Download v8.2.5 Enhancements: Enabled some extra warnings in the Visual Studio Debug project Removed obsolete forall construct from unit test 12 Bug Fixes: Fixed a potential uninitialized variable issue in get_current_line_from_file_stream Fixed a memory leak when parsing an invalid JSON . Fixed various memory issues in the unit tests #494 #495 ( jacobwilliams ) 8.2.4 (2021-08-15) Complete Changeset or Download v8.2.4 Enhancements: Documentation updates. #492 ( jacobwilliams ) Added MultiProcessorCompilation=\"true\" to the Visual Studio project file. Bug Fixes: Fixed a memory leak when deserializing an empty list. #488 #493 ( jacobwilliams ) Fixed a memory leak when cloning a JSON pointer. #489 #490 ( jacobwilliams ) Fixed a bug where some error messages would attempt to print unallocated name values. #491 8.2.3 (2020-06-05) Complete Changeset or Download v8.2.3 Enhancements: No code changes. Only documentation updates. 8.2.2 (2020-06-05) Complete Changeset or Download v8.2.2 Enhancements: Added support for the Fortran Package Manger. #483 ( jacobwilliams ) Updated CI to use GitHub Actions, including auto-deployment of documentation. #476 #484 ( jacobwilliams ) Eliminated some compiler warnings about real conversions. Bug fixes: Fixed a bug in test case 47. 8.2.1 (2020-01-02) Complete Changeset or Download v8.2.1 Enhancements: Fixed a couple compiler warnings when using the latest Intel Fortran compiler. #477 ( jacobwilliams ) replaced -std15 with -std18 for the Intel compiler in the FoBiS build file. Updated the Visual Studio test project with some missing test cases. ( jacobwilliams ) Bug fixes: Bug fix in json_value_remove : the parent and previous pointers should also be nullified when removing from an array. #477 #479 ( jacobwilliams ) 8.2.0 (2020-08-16) Complete Changeset or Download v8.2.0 Enhancements: Updated the compress_vectors option so that now vectors of mixed integers and reals are also compressed. #470 #471 ( jacobwilliams ) 8.1.0 (2020-06-21) Complete Changeset or Download v8.1.0 Enhancements: Added a json_file = string assignment operator #463 #464 #465 ( jacobwilliams ) Added support for multiple comment characters. The default is now to recognize any of #!/ as comment lines. #456 #461 ( jacobwilliams ) Added recursive attribute to json_get_array #291 #453 ( jacobwilliams ) Added optional “default” argument to json_get_*_by_path routines #208 #462 ( jacobwilliams ) Updated readme to document the cmake build instructions #455 ( jacobwilliams ) Bug fixes: Fixed bug in json_get_path #452 #454 ( jacobwilliams ) 8.0.0 (2020-04-04) Complete Changeset or Download v8.0.0 Enhancements: Cleanup of the API for reading and writing JSON . The main methods are now called print , load , serialize and deserialize . Note that the previous ones are still present for backward compatibility. #397 #409 ( jacobwilliams ) Added a finalizer to the json_file type #199 #406 ( jacobwilliams ) Added new optional arguments ( null_to_real_mode , non_normal_mode , use_quiet_nan ) to the initialize routines to handle NaN and Infinity. #395 Added a new optional argument ( strict_integer_type_checking ) to the initialize routines. If enabled, when parsing an integer value, if the parsing fails (e.g., the integer is outside the range of the integer kind), it will then attempt to convert it to a real. #444 #446 ( jacobwilliams ) json_info will now check for exceptions and raise one if the pointer is not associated #424 #425 ( jacobwilliams ) Allow the parser to work with some nonstandard real value representations (leading + , no leading digit before decimal, D/d format). #417 #418 ( jacobwilliams ) Added a character string to json_file assignment operator #410 #411 ( jacobwilliams ) Added a json_print_to_console method to json_core to match the one in json_file #408 The output array is now deallocated if an exception occurs in a json_get_*_vec routine #416 #419 ( jacobwilliams ) Bug fixes: Fixed a crash in json_file_check_for_errors if the error_msg was not present. #420 Fixed a potential issue with real to integer conversion when the library is compiled with a non-default integer kind. #449 #450 ( jacobwilliams ) Fixed a dangling pointer in unit test 10. #422 #423 ( jacobwilliams ) CMake updates: Updated CMake to enable building JSON -Fortran as a subdirectory of another project #445 #443 ( rouson ) Updated CMake for compatibility with older versions < 3.7. #442 #451 jacobwilliams ) Allow linking to JSON -Fortran from GFortran programs using OpenCoarrays as the coarray runtime implementation. Use the -DJSON_FORTRAN_USE_OpenCoarrays:BOOL=ON option to CMake to enable this. (NOTE: The fact that this is required may be a bug in GFortran.) CI updates: Updated the CI system to Travis-CI.com #447 #448 ( jacobwilliams ) Migrate test setup/teardown to fixtures #413 #421 ( zbeekman ) Expanded compiler tests on Travis-CI #414 #180 ( jacobwilliams ) 7.1.0 (2019-06-23) Complete Changeset or Download v7.1.0 Enhancements: Added a Visual Studio Code workspace file #399 #400 ( jacobwilliams ) Improvements to json_value_get_child_by_index efficiency #401 #402 ( jacobwilliams ) Updates to CMake install rule for better compatibility with Visual Studio #396 ( zbeekman ) Bug fixes: Fix for undeclared variable causing failing test on Mac #392 ( porteri ) Fixed a bug where using json%add() to create new variables in a structure would stop the program if stop_on_failure was enabled. #403 #404 ( jacobwilliams ) 7.0.0 (2019-01-26) Complete Changeset or Download v7.0.0 Enhancements: Added support for multiple real kinds: The library now supports the default real kind specified ( real32 , real64 and real128 ) as well as the kinds in this set with less precision than the default. For example, if real64 is specified (which is the default), then both real32 and real64 are available in all the public APIs. Internally, the values are always stored in a variable of the default kind. #386 #387 ( jacobwilliams ) Added a create_real() method and a json_real parameter to replace create_double() and json_double . The old versions are still available for backward compatibility. Added CMake options to control integer and real kinds #284 Updated the default real format statement to correctly correspond to the specified real kind. Added new json_file constructor functions for strings. This allows a json_file to be initialized using syntax such as: f = json_file('{\"x\": 1}') . #381 #382 ( jacobwilliams ) Fixed some links in the documentation. Bug fixes: Fixed an issue where the parser would fail if the JSON structure was just a lone integer. #388 #389 ( jacobwilliams ) Fixed an issue where the unit tests did not compile when using real32 or real128 . #383 #384 ( jacobwilliams ) Fixed various issues preventing compilation if the integer kind was changed from the default. #365 #385 ( jacobwilliams ) Renamed the integrated tests preprocessor flag to INTEGRATED_TESTS since it was mispelled. #390 #391 ( jacobwilliams ) 6.11.0 (2019-01-19) Complete Changeset or Download v6.11.0 Enhancements: Speed up writing JSON to a string #377 #378 ( jacobwilliams ) 6.10.0 (2019-10-20) Complete Changeset or Download v6.10.0 Enhancements: Speed up JSON file parsing #363 #366 ( jacobwilliams ) CMake updates for Windows #361 ( zbeekman ) Bug fixes: Parser no longer stops after main object, ignoring the rest of the file #369 #370 ( jacobwilliams ) 6.9.0 (2018-07-29) Complete Changeset or Download v6.9.0 Enhancements: Some efficiency improvements when parsing strings. #352 ( jacobwilliams ) Speed up the unescape_string() routine. #351 Some cleanup and efficiency improvements for hex string validation. #354 Various updates to error message reporting. The two arguments to json_file_check_for_errors() are now optional to match the core routine. #356 Some adjustments to error messages for invalid hex strings. Validation of hex strings is now done in the unescape_string() routine. #354 A string that ends in an escape character \\ is now flagged as invalid. #353 Fixed bugs: Fixed a bug in the annotate_invalid_json() routine. #355 Fixed an issue with the jf_test_06 unit test failing on Windows. #357 6.8.0 (2018-07-19) Complete Changeset or Download v6.8.0 Enhancements: Added some additional checks so that the destroy method could still be used to destroy some malformed JSON linked lists. Also updated the validate method to check for circular references. #346 #349 ( jacobwilliams ) Added missing arguments ( trim_str and adjustl_str ) to some of the string wrapper routines. #347 #348 ( jacobwilliams ) Various minor changes to remove some compiler warnings and a line length standards violation. Various documentation string updates. Fixed bugs: Fixed a dangling pointer bug in the destroy method that was causing unpredictable behavior in this routine which could cause a crash for some compilers #307 #350 ( jacobwilliams ) 6.7.0 (2018-07-10) Complete Changeset or Download v6.7.0 Enhancements: Made the two arguments to json_check_for_errors() optional, so now either or both can be used. Note that if no error has been raised, then error_msg is now returned unallocated. #344 #345 ( jacobwilliams ) Added an additional error check in json_value_print() to check for an unassociated pointer. #342 #343 ( jacobwilliams ) Added remove() method to json_file #339 #340 ( jacobwilliams ) Added additional error checks to json_value_add_member() . Now it will raise an exception if try to add a child to a non-array or non-object. #337 #338 ( jacobwilliams ) Added some additional unit tests to increase coverage #336 ( jacobwilliams ) Fixed bugs: Fixed a bug in json_value_clone_func() where it could crash if attempting to clone an array element. Updated this routine to improve behavior when cloning an array element (the subsequent entries are no longer cloned). #334 #335 ( jacobwilliams ) 6.6.0 (2018-07-01) Complete Changeset or Download v6.6.0 Enhancements #332 ( jacobwilliams ) Now, attempting to get a string variable as an integer, double, or logical will attempt to convert it to a string if strict_type_checking=False . Formerly these cases would raise an exception. #331 Fixed an inconsistency in json_get_by_path() . Now if using the optional found argument, any exceptions raised by this routine are cleared. #330 Changed the name argument in json_value_remove_if_present() to ‘path’ to be consistent with other routines since it is really a path. #329 Various documentation string updates. Fixed bugs: Fixed a bug in wrap_json_get_path() where an optional argument was being used without checking if it was present. #333 6.5.0 (2018-06-23) Complete Changeset or Download v6.5.0 Enhancements & Fixed Issues: Added optional trim and adjustl arguments were added to all the various routines for adding strings and string vectors to JSON #323 ( jacobwilliams ) The trailing_spaces_significant flag is now respected for name keys when creating a JSON structure. #324 #326 ( jacobwilliams ) 6.4.0 (2018-06-10) Complete Changeset or Download v6.4.0 Enhancements: Added optional stop_on_error argument to the various initialize() routines to immediately stop the program if an exception is raised. #318 #320 ( jacobwilliams ) Added routines to check if a name key is present in a json_file object, which is also available using the .in. operator. #316 #319 ( jacobwilliams ) Added routines to rename a json variable by specifying the path. #314 #317 ( jacobwilliams ) Added a Fobis rule for running the test programs. #321 ( jacobwilliams ) 6.3.0 (2018-04-20) Complete Changeset or Download v6.3.0 Enhancements: Add a FoBiS configuration file that can be used to build the library, tests, and documentation. #310 #311 ( jacobwilliams ) CMake produced Visual Studio Project #70 ( jacobwilliams ) Minor changes: renamed some of the example files and reverted back to older versions of FoBiS and markdown for documentation building on Travis-CI #313 ( jacobwilliams ) Fixed issues: Fixed a bug in the escaping logic where / characters in strings would not be printed under some circumstances. This bug was introduced in the 6.2.0 release. #312 ( jacobwilliams ) 6.2.0 (2018-03-10) Complete Changeset or Download v6.2.0 Enhancements: Allow the unit tests to be run from within the Visual Studio solution #295 ( Hugh-walsh , jacobwilliams ) Compiling now works for the CMake-produced Visual Studio solution on Windows (note that the CMake-produced solution is a bit different from the other one provided). #70 #309 ( handrake0724 , jacobwilliams ) Added a new option escape_solidus to specify if the forward slash (“ / ”) is to be escaped when serializing JSON . By default, it is no longer escaped (this changes the behavior introduced in 6.0.0) #304 #305 ( jacobwilliams ) Fixed issues: Fixed an issue causing a problem with the NAG compiler #303 ( jacobwilliams ) 6.1.0 (2017-11-05) Complete Changeset or Download v6.1.0 Enhancements: Added an optional allow_duplicate_keys argument to the various initialize routines. This is True by default. If False, then duplicate keys are considered an error. Also added check_for_duplicate_keys and check_children_for_duplicate_keys methods that can be called. #250 #290 ( jacobwilliams ) Added support for JSONPath “bracket-notation” mode for specifying paths to JSON variables. #266 #292 ( jacobwilliams ) Fixed issues: Replaced CMAKE_INSTALL_LIBDIR with INSTALL_LIB_DIR in the CMake project. #286 ( foeroyingur ) Fixed bug in the lowercase_string routine that could cause a crash for Debug builds. #293 #294 ( jacobwilliams ) 6.0.0 (2017-08-24) Complete Changeset or Download v6.0.0 Enhancements: Added a routine to reverse an array or object #280 #281 ( jacobwilliams ) Fixed issues: Fixed a bug where using no_whitespace mode could still print line breaks in some cases #288 ( jacobwilliams ) Strings (name key and value) were not being properly escaped/unescaped in some contexts. This change introduces a small backward incompatibility (formerly, if keys contained escape characters, the user would have to include them when getting their value). Now, the string variables in all user-facing API calls are unescaped (i.e., the user does not have to manually escape the keys to get their associated value). All strings are also now properly returned unescaped, no matter how the JSON structure was constructed. Escaping is now done in all cases if necessary when the JSON is printed to a string, file or the console. #287 #289 ( jacobwilliams ) 5.3.0 (2017-04-07) Complete Changeset or Download v5.3.0 Enhancements: It is now possible to build a JSON structure by specifying the paths to the variables. The update routines also now use this new feature so if the variable is not present, it will be added using the path (formerly, it added it as a name, which was inconsistent). Renamed the argument to the update routines from name to path . #257 #261 #268 #270 ( jacobwilliams ) Added new get routine to return an allocatable string array #245 #265 ( jacobwilliams ) Arrays of scalar values can now optionally be printed on a single line #228 #273 ( jacobwilliams ) When reading an empty JSON array it is now returned as an allocated array with zero length (rather than an unallocated array). #276 #277 ( jacobwilliams ) Fixed issues: Fixed an issue where the char_count wasn’t always correct, which caused the error message for invalid JSON to be wrong. #272 #274 ( jacobwilliams ) Fixed an issue where values with significant trailing whitespace were being trimmed when printed. #263 ( jacobwilliams ) Fixed two bugs in json_get_path for RFC 6091 path mode. Special characters weren’t being encoded properly, and it didn’t work if the final key was all whitespace. #262 #264 ( jacobwilliams ) Fixed an issue with indenting of arrays within arrays. #269 #271 ( jacobwilliams ) 5.2.0 (2017-03-05) Complete Changeset or Download v5.2.0 Enhancements: Added support for comments in JSON files. #256 #234 #259 ( jacobwilliams ) #240 ( jacobwilliams ) Added support for RFC 6901 paths. #249 #253 #255 #258 ( jacobwilliams ) #252 ( jacobwilliams ) #251 ( jacobwilliams ) Can now specify default real and integer kinds using compiler directives. #236 #238 #239 ( jacobwilliams ) compact_reals and real_format='*' can now be used at the same time. #226 #227 ( jacobwilliams ) Added option to change default path separator character. #254 ( jacobwilliams ) Add pkg-config file #242 ( wesbarnett ) Fixed issues: Real numbers now written with 17 digits of precision (previously it was using 16 which doesn’t accurately represent all values to full precision) #230 #241 ( jacobwilliams ) #232 ( jacobwilliams ) 5.1.0 (2016-08-14) Complete Changeset or Download v5.1.0 Enhancements: Added a traverse routine to json_file #204 #206 ( jacobwilliams ) Added added get and set routines for the json_core in a json_file #206 ( jacobwilliams ) Added new get_path routine #223 #224 ( jacobwilliams ) Added new option for returning strings in their escaped form. Also, when strict_type_checking is False, the get routines will now return integer, double, logical, and null values as strings. #224 ( jacobwilliams ) Added new insert_after routine #220 #221 ( jacobwilliams ) Move json type integer variables into the json_parameters module #218 #219 ( jacobwilliams ) Added new option to print JSON without extra whitespace #216 #217 ( jacobwilliams ) Added new info routines ( json_info_by_path , json_matrix_info_by_path , and json_matrix_info ) #213 #212 ( jacobwilliams ) Added an API for adding Null variables #210 #214 ( jacobwilliams ) Fixed issues: Fix doc deployment problems #201 ( zbeekman ) 5.0.2 (2016-06-11) Complete Changeset or Download v5.0.2 Note: This release contains no changes to the library, only the documentation. Minor documentation fix. 5.0.1 (2016-06-11) Complete Changeset or Download v5.0.1 Note: This release contains no changes to the library, only the build system and documentation. Fixed issues: FORD now uses the Intel preprocessor when library is built with the Intel compiler #205 ShellCheck script files #181 Merged pull requests: De-lint shell scripts with ShellCheck, debug FORD upgrade, and various updates to documentation and build system. #201 ( zbeekman ) 5.0.0 (2016-05-09) Complete Changeset or Download v5.0.0 See also this Wiki page on how to update your code to be compatible with this release. Enhancements: Split json_module into multiple files. #168 #170 ( jacobwilliams ) The library is now thread safe #36 #170 ( jacobwilliams ) Added new initialize() , failed() , print_error_message() , check_to_errors() , and clear_exceptions() to the json_file class. #170 ( jacobwilliams ) The number of spaces for indenting can now be user specified. #170 ( jacobwilliams ) Updates for Visual Studio project #170 ( jacobwilliams ) Added a validate() method for validating JSON linked lists #196 #197 ( jacobwilliams ) Added some additional error checks for malformed JSON linked lists #182 ( jacobwilliams ) Added a new routine is_child_of to check if one json_value is a descendant of another #182 ( jacobwilliams ) Added new options for case-insensitive searching of names/paths, as well as the option to consider trailing space significant #185 #192 ( jacobwilliams ) Added a routine to enable swapping of elements in a json_value linked list #177 #182 ( jacobwilliams ) Rename parameters RK , IK , LK , CK , and CDK using less generic names ( json_RK , json_IK , json_LK , json_CK , and json_CDK ) #172 ( jacobwilliams ) Calling the initialize() method (which is now in json_core and json_file ) is no longer mandatory #171 ( jacobwilliams ) Added a rename() method for renaming a json_value variable #184 #187 ( jacobwilliams ) Added some compiler directives so that workarounds for Gfortran bugs are not used for other compilers #190 ( jacobwilliams ) Added option for strict typing for get routines #173 ( jacobwilliams ) Various cosmetic changes and renaming of some of the dummy arguments in some procedures. #198 ( jacobwilliams ) Added checks to avoid unnecessary looping when traversing arrays if an exception is thrown #183 ( jacobwilliams ) Added a new get_child method to get the first child. [9d4f736] ( jacobwilliams ) Added some additional error checks for unassociated pointers [9d4f736] ( jacobwilliams ) Ensure null pointers are returned for some error cases [838f476] ( jacobwilliams ) Fixed Issues Fixed a bug in the traverse() routine, where the finished output flag was not being correctly checked #182 ( jacobwilliams ) 4.3.0 (2015-12-05) Complete Changeset or Download v4.3.0 Enhancements: Added routines for getting the parent , next , previous , and tail pointers #161 ( jacobwilliams ) Added a deep copy routine for json_value structures #160 ( jacobwilliams ) Updated the Visual Studio solution to VS 2013. Also removed the test projects (it now just compiles the library) ( jacobwilliams ) Fixed issues: Rewrote logic for decoding strings, and fixed bugs related to parsing strings with certain escape character combinations #164 ( jacobwilliams ) Fixed a bug where some real numbers weren’t being read in properly. Also added an option to output real numbers with fmt=* formatting #157 ( jacobwilliams ) Merged pull requests: Minor documentation change. #153 ( jacobwilliams ) Enabled FORD graphs in documentation. #149 ( jacobwilliams ) Tag documentation fix #147 ( zbeekman ) Fix url in 4.2.0 tag documentation #146 ( zbeekman ) 4.2.0 (2015-08-03) Complete Changeset or Download v4.2.0 Enhancements The exception_thrown flag is now true by default before the json_initialize routine is called to initialize the module. #142 ( jacobwilliams ) Updated json_info to get name of json_value variable. #141 ( jacobwilliams ) Added a new routine ( json_traverse ) to traverse all nodes of a JSON structure #140 via PR #144 from ( jacobwilliams ) Added FORD documentation automatic deployment via PR #137 from zbeekman Added new version release checklist, #122 via PR #137 from zbeekman Added finer control of real format printing, #117 via PR #137 from zbeekman , and #143 from jacobwilliams Removed official SCons support to facilitate faster development\n cycle, #121 via PR #130 from zbeekman Add a CHANGELOG #120 via PR #123 from zbeekman Spell ‘Fortran’ correctly #118 via PR #124 from zbeekman Migrate to Codecov.io #106 via PR #107 from zbeekman CMake emulate make check and exclude tests\n from all target #103 implemented via PR #104 from zbeekman Fixed issues: Fixed bad gcov reports being generated due to a gcov/gfortran bug, #131 via PR #137 from zbeekman Fixed inaccurate coverage reports via PR #109 from zbeekman Fixed a small consistency issue when outputting floating point\n numbers via PR #125 Problems writing JSON to error_unit (0) due to JSON -Fortran’s\n special interpretation of unit=0 #85 fixed via PR #111 from zbeekman Broken parsing error message for empty line PR #110 ( jacobwilliams ) Merged pull requests: Documentation fixes & coverage improvements #112 ( zbeekman ) Speedier container based Travis-CI builds #130 ( zbeekman ) 4.1.1 (2015-05-27) Complete Changeset or Download v4.1.1 Enhancements Installation now possible with a Homebrew package on Mac OS X CMake install option to use a more traditional\n Gnu install structure (to support Homebrew installation) PR #101 from zbeekman Fixed issues: Broken Travis-CI tests #99 fixed by PR #100 from zbeekman CMakeLists.txt accidentally defaulting to Unicode build due to small\n typo #96 ,\n fixed by PR #97 from zbeekman Merged pull requests: 4.1.0 (2015-05-05) Complete Changeset or Download v4.1.0 Enhancements: Run-time speed improvements #75 implemented in PR #93 from jacobwilliams Merged pull requests: Small formatting and addition of a unit test #95 ( jacobwilliams ) 4.0.0 (2015-03-16) Complete Changeset or Download v4.0.0 Enhancements Unicode support #35 added in PR #84 from zbeekman Automate testing of the stand alone programs listed in the README.md #67 added in PR #71 from zbeekman Automatically analyze and report test coverage info with coveralls.io and Travis-CI #63 implemented in PR #72 from zbeekman Enhanced command line user interface for build.sh build script PR #82 ( zbeekman ) Additional options and improvements made to command line interface\n of the build.sh build script PR #88 ( zbeekman ) Added unit tests for improved unit test coverage PR #83 ( jacobwilliams ) and PR #73 ( jacobwilliams ) Fixed issues: Stack overflow in destroy for large structure #76 fixed in PR #77 from jacobwilliams Discrepancy with dummy argument attributes for\n path between get and get_..._vec procedures #79 Small bug fix for CMake install #68 ( zbeekman ) JSON output files from tests are overwriting expected outputs and\n outputs from other tests #86 ( zbeekman ) NAG Fortran Errors on module procedure :: change to module\n procedure with no double colon PR #78 from kmanalo CMake for jf_test_9.f90 broke #74 ( zbeekman ) Merged pull requests: Very small changes and fixes: #81 ( zbeekman ) 3.1.0 (2015-02-28) Complete Changeset or Download v3.1.0 Enhancements: Compact real number printing ( 0.0 instead of 0.00000...E000 )\n with ability to revert to old behavior #39 (implemented in PR #60 from zbeekman and PR #61 from jacobwilliams ) Read JSON structure from a character string #5 Adopted official contributing guidelines and added a CONTRIBUTING.md #47 Fixed issues: Build script ( build.sh ) failing with Intel’s ifort #53 ,\n fixed by PR #54 (from zbeekman ) Segfaults and unexpected behavior due to optional dummy arguments\n being dereferenced outside of if (present(…)) #52 Documentation not being produced for tests because tests directory\n should be sub-directory of src #49 Example 8 failing on gfortran 4.9.2 #44 CMake Tests 3 and 8 fail due to new test\n case, example 6, added in e636f96 #30 CMake build using makefiles fails if\n parallel build is specified #8 , fixed\n by PR #50 from zbeekman Merged pull requests: Unit test updates #65 ( jacobwilliams ) Unit test cleanup as discussed in #30 #64 ( zbeekman ) Stops PRs by @jacobwilliams from\n deploying master docs #62 ( zbeekman ) Auto deploy script #59 ( zbeekman ) Getting ready for auto-deployment #57 ( zbeekman ) Travis-CI build matrix #56 ( zbeekman ) 3.0.0 (2015-01-18) Complete Changeset or Download v3.0.0 Fixed issues: Intel compiler bug triggered by commit d2622a8 #41 Unaligned data warnings with Intel compiler #34 CMake fails due to bad path to robodoc.rc #31 Indentation of output wrong for some nested objects #29 Intel build broke #28 CMake misbehaving when ROBODoc absent #26 Differentiate internal (low level, private) procedures/types/etc\n from public API in documentation #21 Merged pull requests: CMake Fixes for issues #31 and #26 . #32 ( zbeekman ) 2.0.0 (2014-12-27) Complete Changeset or Download v2.0.0 Enhancements: - Significant changes to the API including new procedures\n- Code re-factoring\n- SCons build added thanks to @bruceravel Fixed issues: enable wiki contributions from the public #23 1.0.0 (2014-06-23) Download v1.0.0 Enhancements: Validate hex values in strings #14 Add CMake build infrastructure #6 (pull request from zbeekman ) CMake build now builds the example program\n and runs tests #9 Added CMake logic to build ROBODoc documentation #12 (pull\n request from zbeekman ) Upload ROBODoc documentation to\n gh-pages project page #7 Add CMake testing infrastructure #18 ( zbeekman ) Implement better support for Intel compiler, DPD200247629 associate construct work around, via PR #2 ( zbeekman ) Fixed issues: Unit tests fail when compiled with GFortran #19 CMake outputs of ROBODoc must be specified in\n CMakeLists.txt manually #17 Invalid JSON input files ( test1.json , test5.json ) #10 ,\n fixed by PR #11 ( zbeekman ) char() is processor dependent, use achar() #20 (pull request from zbeekman ) Bug-fix for ROBODoc documentation\n generation with CMake #16 (pull request from zbeekman ) Change library file from libjson to libjsonfortran #4 * This Change Log was generated with help from github_changelog_generator","tags":"","loc":"page/releases/index.html"}]}
\ No newline at end of file
diff --git a/type/json_core.html b/type/json_core.html
index ea1ab1ae5..5edc06532 100644
--- a/type/json_core.html
+++ b/type/json_core.html
@@ -124,31 +124,31 @@
char_count
chunk
comment_char
- compact_real
+ compact_real
compress_vectors
err_message
- escape_solidus
+ escape_solidus
exception_thrown
filesize
ichunk
- ipos
+ ipos
is_verbose
line_count
no_whitespace
- non_normals_to_null
+ non_normals_to_null
null_to_real_mode
path_mode
path_separator
pushed_char
pushed_index
- real_fmt
+ real_fmt
spaces_per_tab
stop_on_error
strict_integer_type_checking
strict_type_checking
trailing_spaces_significant
unescaped_strings
- use_quiet_nan
+ use_quiet_nan
@@ -703,7 +703,7 @@ ]Components
-
+
logical(kind=LK),
|
private |
@@ -761,7 +761,7 @@ Components
-
+
logical(kind=LK),
|
private |
@@ -838,7 +838,7 @@ Components
-
+
integer(kind=IK),
|
private |
@@ -910,7 +910,7 @@ Components
-
+
logical(kind=LK),
|
private |
@@ -1040,7 +1040,7 @@ Components
-
+
character(kind=CDK, len=:),
|
private, |
@@ -1180,7 +1180,7 @@ Components
-
+
logical(kind=LK),
|
private |
@@ -1505,7 +1505,7 @@ Arguments
-
+
logical(kind=LK),
|
intent(in), |
@@ -1517,7 +1517,7 @@ Arguments
Note that this option does not affect parsing
(both escaped and unescaped are still valid in
-all cases). Read more…
+all cases).Read more…
|
@@ -1569,7 +1569,7 @@ Arguments
-
+
logical(kind=LK),
|
intent(in), |
@@ -1579,7 +1579,7 @@ Arguments
:: |
use_quiet_nan |
-Read more…
+Read more…
|
@@ -16697,7 +16697,7 @@ Arguments
Note that this option does not affect parsing
(both escaped and unescaped are still valid in
-all cases). Read more…
+all cases).Read more…
|
@@ -16759,7 +16759,7 @@ Arguments
:: |
use_quiet_nan |
-Read more…
+Read more…
|
@@ -43302,7 +43302,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/type/json_file.html b/type/json_file.html
index 8abf0878c..9fd58364c 100644
--- a/type/json_file.html
+++ b/type/json_file.html
@@ -23220,7 +23220,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
diff --git a/type/json_value.html b/type/json_value.html
index 545d465ec..5ffed61e8 100644
--- a/type/json_value.html
+++ b/type/json_value.html
@@ -575,7 +575,7 @@ Source Code
Documentation generated by
FORD
- on 2024-06-11 17:35
+ on 2024-06-12 02:49
|